From 0c2c0ea39143807ced01506d4a8282a5fca73cfe Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 14 May 2025 17:27:18 +0800
Subject: [PATCH] feat(mall): 添加推广中心功能
---
src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelUpdateDto.java | 2
src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelAddDto.java | 2
src/main/resources/templates/febs/views/modules/levelView/saleInfo.html | 42 ++++++++++++++
src/main/resources/templates/febs/views/modules/levelView/saleList.html | 24 ++++++++
src/main/java/cc/mrbird/febs/mall/vo/sale/ApiLevelListInfoVo.java | 14 ++++
src/main/resources/templates/febs/views/modules/levelView/levelList.html | 4
src/main/java/cc/mrbird/febs/mall/entity/HappySaleLevel.java | 2
src/main/resources/templates/febs/views/modules/levelView/saleAdd.html | 38 ++++++++++++
8 files changed, 124 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelAddDto.java b/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelAddDto.java
index 63cc72a..1742bad 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelAddDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelAddDto.java
@@ -14,4 +14,6 @@
private BigDecimal returnPercent;
private String content;
private String iconPng;
+
+ private String headerPng;
}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelUpdateDto.java b/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelUpdateDto.java
index 28ec57f..a5e92f0 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelUpdateDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/memberLevel/AdminSaleLevelUpdateDto.java
@@ -15,4 +15,6 @@
private BigDecimal returnPercent;
private String content;
private String iconPng;
+
+ private String headerPng;
}
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/HappySaleLevel.java b/src/main/java/cc/mrbird/febs/mall/entity/HappySaleLevel.java
index 9699e95..ff6c3b3 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/HappySaleLevel.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/HappySaleLevel.java
@@ -19,6 +19,7 @@
`return_percent` decimal(20,2) DEFAULT NULL COMMENT '等级返佣比例',
`content` text COMMENT '规则说明',
`icon_png` varchar(200) DEFAULT NULL COMMENT '等级图标',
+ `header_png` varchar(200) DEFAULT NULL COMMENT '分销头部图片',
*/
@@ -31,5 +32,6 @@
private BigDecimal returnPercent;
private String content;
private String iconPng;
+ private String headerPng;
}
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/sale/ApiLevelListInfoVo.java b/src/main/java/cc/mrbird/febs/mall/vo/sale/ApiLevelListInfoVo.java
index bcc46e9..52966b4 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/sale/ApiLevelListInfoVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/sale/ApiLevelListInfoVo.java
@@ -4,6 +4,8 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import java.math.BigDecimal;
+
@Data
@ApiModel(value = "ApiLevelListInfoVo", description = "我的推广")
public class ApiLevelListInfoVo {
@@ -17,8 +19,16 @@
private Integer code;
@ApiModelProperty(value = "规则说明")
private String content;
- @ApiModelProperty(value = "等级图片")
- private String iconPng;
+ @ApiModelProperty(value = "推广中心")
+ private String headerPng;
+// @ApiModelProperty(value = "直推人数")
+// private Integer directCnt;
+// @ApiModelProperty(value = "团队人数")
+// private Integer teamCnt;
+// @ApiModelProperty(value = "团队业绩")
+// private BigDecimal teamAmount;
+// @ApiModelProperty(value = "返佣比例:团队成员下单,点击确认收货后,返还支付金额乘以返佣比例=团队业绩")
+// private BigDecimal returnPercent;
}
diff --git a/src/main/resources/templates/febs/views/modules/levelView/levelList.html b/src/main/resources/templates/febs/views/modules/levelView/levelList.html
index 5119343..19505c1 100644
--- a/src/main/resources/templates/febs/views/modules/levelView/levelList.html
+++ b/src/main/resources/templates/febs/views/modules/levelView/levelList.html
@@ -120,7 +120,7 @@
//页面层
layer.open({
type: 1,
- title: "会员图标",
+ title: "会员中心",
skin: 'layui-layer-rim', //加上边框
area: ['100%', '100%'], //宽高
shadeClose: true, //开启遮罩关闭
@@ -182,7 +182,7 @@
'</a>';
},
minWidth: 150,align: 'center'},
- {field: 'iconPng',title: '会员中心',
+ {field: 'headerPng',title: '会员中心',
templet: function (d) {
return '<a lay-event="seeHeaderPng">' +
'<img id="seeHeaderPng' + d.id + '" src="' + d.headerPng +
diff --git a/src/main/resources/templates/febs/views/modules/levelView/saleAdd.html b/src/main/resources/templates/febs/views/modules/levelView/saleAdd.html
index e58dd65..456b827 100644
--- a/src/main/resources/templates/febs/views/modules/levelView/saleAdd.html
+++ b/src/main/resources/templates/febs/views/modules/levelView/saleAdd.html
@@ -40,6 +40,28 @@
</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>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="headerPngUploadButton">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="headerPngUpload"></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="headerPng" lay-verify="required" name="headerPng" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
<div class="layui-form-item">
<label class="layui-form-label febs-form-item-require">返佣比例:</label>
<div class="layui-form-mid">团队成员下单,点击确认收货后,返还支付金额乘以</div>
@@ -170,6 +192,22 @@
$("#iconPng").val(res.data.src);
}
});
+ //图片上传
+ upload.render({
+ elem: '#headerPngUploadButton'
+ ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+ ,accept: 'file' //普通文件
+ ,size: 10240 //限制文件大小,单位 KB
+ ,before: function(obj){
+ //预读本地文件示例,不支持ie8
+ obj.preview(function(index, file, result){
+ $('#headerPngUpload').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
+ });
+ }
+ ,done: function(res){
+ $("#headerPng").val(res.data.src);
+ }
+ });
formSelects.render();
form.on('submit(sale-level-form-submit)', function (data) {
data.field.content = editor.txt.html();
diff --git a/src/main/resources/templates/febs/views/modules/levelView/saleInfo.html b/src/main/resources/templates/febs/views/modules/levelView/saleInfo.html
index 2bb8220..a6e250f 100644
--- a/src/main/resources/templates/febs/views/modules/levelView/saleInfo.html
+++ b/src/main/resources/templates/febs/views/modules/levelView/saleInfo.html
@@ -42,6 +42,28 @@
</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>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="headerPngUploadButton">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="headerPngUpload"></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="headerPng" lay-verify="required" name="headerPng" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
<div class="layui-form-item">
<label class="layui-form-label febs-form-item-require">返佣比例:</label>
<div class="layui-form-mid">团队成员下单,点击确认收货后,返还支付金额乘以</div>
@@ -170,6 +192,22 @@
$("#iconPng").val(res.data.src);
}
});
+ //图片上传
+ upload.render({
+ elem: '#headerPngUploadButton'
+ ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+ ,accept: 'file' //普通文件
+ ,size: 10240 //限制文件大小,单位 KB
+ ,before: function(obj){
+ //预读本地文件示例,不支持ie8
+ obj.preview(function(index, file, result){
+ $('#headerPngUpload').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
+ });
+ }
+ ,done: function(res){
+ $("#headerPng").val(res.data.src);
+ }
+ });
form.render();
inithappySaleLevel();
@@ -190,6 +228,10 @@
$('#iconPngUpload').append('<img src="' + happySaleLevel.iconPng + '" alt="" class="layui-upload-img single-image" style="width: 130px">');
$("#iconPng").val(happySaleLevel.iconPng);
+
+
+ $('#headerPngUpload').append('<img src="' + happySaleLevel.headerPng + '" alt="" class="layui-upload-img single-image" style="width: 130px">');
+ $("#headerPng").val(happySaleLevel.headerPng);
editor.txt.html(happySaleLevel.content);
}
diff --git a/src/main/resources/templates/febs/views/modules/levelView/saleList.html b/src/main/resources/templates/febs/views/modules/levelView/saleList.html
index 772a5dc..c235fcd 100644
--- a/src/main/resources/templates/febs/views/modules/levelView/saleList.html
+++ b/src/main/resources/templates/febs/views/modules/levelView/saleList.html
@@ -114,6 +114,22 @@
content: '<div style="text-align:center"><img src="' + $(t).attr('src') + '" /></div>'
});
}
+
+ if (layEvent === 'seeHeaderPng') {
+ var t = $view.find('#seeHeaderPng'+data.id+'');
+ //页面层
+ layer.open({
+ type: 1,
+ title: "推广中心",
+ skin: 'layui-layer-rim', //加上边框
+ area: ['100%', '100%'], //宽高
+ shadeClose: true, //开启遮罩关闭
+ end: function (index, layero) {
+ return false;
+ },
+ content: '<div style="text-align:center"><img src="' + $(t).attr('src') + '" /></div>'
+ });
+ }
if (layEvent === 'saleInfoEvent') {
febs.modal.open('编辑','modules/levelView/saleInfo/' + data.id, {
btn: ['提交', '取消'],
@@ -166,6 +182,14 @@
'</a>';
},
minWidth: 150,align: 'center'},
+ {field: 'headerPng',title: '推广中心',
+ templet: function (d) {
+ return '<a lay-event="seeHeaderPng">' +
+ '<img id="seeHeaderPng' + d.id + '" src="' + d.headerPng +
+ '" alt="图片" style="width: 50px; height: 50px; object-fit: cover; border-radius: 5px; cursor: pointer;">' +
+ '</a>';
+ },
+ minWidth: 150,align: 'center'},
{field: 'directCnt', title: '直推人数', minWidth: 150,align:'center'},
{field: 'teamCnt', title: '团队人数', minWidth: 150,align:'center'},
{field: 'teamAmount', title: '团队业绩', minWidth: 150,align:'center'},
--
Gitblit v1.9.1