feat(Details): 新增投票详情页管理功能和评论优化

- 添加投票详情页的管理功能,包括隐藏、推荐、精华和删除操作
- 优化评论组件,支持多图上传和显示
- 新增投币功能组件
- 更新API接口调用方式,适配新后端接口
- 完善用户权限管理逻辑
- 修复样式问题和交互体验
This commit is contained in:
DESKTOP-RQ919RC\Pc
2025-11-11 19:05:46 +08:00
parent ad6d186301
commit 68000d7e43
14 changed files with 839 additions and 226 deletions

View File

@@ -167,6 +167,7 @@
background-color: transparent;
min-height: 80px;
padding-bottom: 11px;
max-height: 400px;
}
.input-box .top .input-textarea * {
background: transparent !important;
@@ -187,10 +188,13 @@
padding-bottom: 10px;
border-bottom: 1px dotted rgba(215, 215, 215, 0.501961);
padding-left: 14px;
padding-top: 10px;
overflow: auto;
}
.input-box .picture-box .picture {
position: relative;
width: fit-content;
margin-right: 10px;
}
.input-box .picture-box .picture .img {
height: 60px;

View File

@@ -194,6 +194,7 @@
background-color: transparent;
min-height: 80px;
padding-bottom: 11px;
max-height: 400px;
// &.placeholder::after {
// content: "说说你的看法…";
// color: #7f7f7f;
@@ -223,10 +224,13 @@
padding-bottom: 10px;
border-bottom: 1px dotted rgba(215, 215, 215, 0.501961);
padding-left: 14px;
padding-top: 10px;
overflow: auto;
.picture {
position: relative;
width: fit-content;
margin-right: 10px;
.img {
height: 60px;

View File

@@ -25,6 +25,7 @@
.content .header .label {
flex-wrap: wrap;
margin-bottom: 15px;
font-weight: 400;
}
.content .header .label .item {
font-size: 14px;
@@ -48,6 +49,77 @@
color: #ffffff;
background-color: #04b0d5;
}
.content .header .view {
font-size: 12px;
color: #aaaaaa;
margin-right: 15px;
font-weight: 400;
}
.content .header .view .icon {
width: 13px;
height: 8px;
margin-right: 5px;
}
.content .header .btn {
width: 24px;
height: 16px;
background-color: #f2f2f2;
border-radius: 150px;
cursor: pointer;
font-weight: 400;
}
.content .header .btn .icon {
width: 18px;
height: 18px;
}
.content .header .mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: 12;
background-color: rgba(0, 0, 0, 0.1);
}
.content .header .operate {
position: absolute;
top: 23px;
right: 0;
width: 80px;
background-color: #f2f2f2;
border-radius: 8px;
padding: 5px;
z-index: 13;
font-weight: 400;
}
.content .header .operate::after {
content: "";
width: calc(100% - 10px);
height: calc(100% - 10px);
position: absolute;
top: 50%;
left: 50%;
display: block;
transform: translate(-50%, -50%);
background-color: #fbfbfb;
z-index: -1;
}
.content .header .operate .item {
text-align: center;
font-size: 14px;
color: #333333;
padding: 14px 0;
cursor: pointer;
}
.content .header .operate .item:first-of-type {
padding-top: 14px;
}
.content .header .operate .item:last-of-type {
padding-top: 14px;
}
.content .header .operate .item:not(:last-of-type) {
border-bottom: 1px dotted #d7d7d7;
}
.content .left {
width: 658px;
min-height: calc(100vh - 165px);

View File

@@ -26,6 +26,7 @@
.label {
flex-wrap: wrap;
margin-bottom: 15px;
font-weight: 400;
.item {
font-size: 14px;
@@ -53,6 +54,88 @@
}
}
}
.view {
font-size: 12px;
color: #aaaaaa;
margin-right: 15px;
font-weight: 400;
.icon {
width: 13px;
height: 8px;
margin-right: 5px;
}
}
.btn {
width: 24px;
height: 16px;
background-color: rgba(242, 242, 242, 1);
border-radius: 150px;
cursor: pointer;
font-weight: 400;
.icon {
width: 18px;
height: 18px;
}
}
.mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: 12;
background-color: rgba(0, 0, 0, 0.1);
}
.operate {
position: absolute;
top: 23px;
right: 0;
width: 80px;
background-color: rgba(242, 242, 242, 1);
border-radius: 8px;
padding: 5px;
z-index: 13;
font-weight: 400;
&::after {
content: "";
width: calc(100% - 10px);
height: calc(100% - 10px);
position: absolute;
top: 50%;
left: 50%;
display: block;
transform: translate(-50%, -50%);
background-color: rgba(251, 251, 251, 1);
z-index: -1;
}
.item {
text-align: center;
font-size: 14px;
color: #333333;
padding: 14px 0;
cursor: pointer;
&:first-of-type {
padding-top: 14px;
}
&:last-of-type {
padding-top: 14px;
}
&:not(:last-of-type) {
border-bottom: 1px dotted #d7d7d7;
}
}
}
}
.left {