no message

This commit is contained in:
A1300399510 2024-11-21 14:39:38 +08:00
parent 2ace436134
commit 7a4b0e3b0c
8 changed files with 1008 additions and 690 deletions

View File

@ -823,6 +823,86 @@
line-height: 32px;
padding: 19px 0;
}
.content .details-box .consult-list .consult-item {
width: calc(50% - 5px);
background-color: #ffffff;
border: 1px solid #ebebeb;
border-radius: 12px;
padding: 20px 15px 20px 20px;
margin-bottom: 10px;
}
.content .details-box .consult-list .consult-item .school {
font-weight: 650;
font-style: normal;
font-size: 16px;
color: #000000;
margin-bottom: 12px;
}
.content .details-box .consult-list .consult-item .school .img {
height: 27px;
margin-right: 11px;
}
.content .details-box .consult-list .consult-item .info-item {
font-size: 14px;
margin-bottom: 10px;
color: #7f7f7f;
}
.content .details-box .consult-list .consult-item .info-item .info-major {
margin-right: 11px;
}
.content .details-box .consult-list .consult-item .info-item .info-value {
color: #333333;
}
.content .details-box .consult-list .consult-item .info-item .line-between {
margin: 0 9px;
background-color: #d7d7d7;
height: 14px;
width: 1px;
}
.content .details-box .consult-list .consult-item .info-item .info-item-results {
padding: 0 5px;
height: 22px;
background-color: #f6f6f6;
border-radius: 37px;
font-size: 13px;
color: #72db86;
font-family: "ArialMT", "Arial", sans-serif;
}
.content .details-box .consult-list .consult-item .info-xiaobox {
width: 296px;
height: 46px;
background-color: #f6f6f6;
border-radius: 6px;
padding: 0 11px;
margin-bottom: 16px;
}
.content .details-box .consult-list .consult-item .info-xiaobox .info-content {
font-size: 14px;
color: #7f7f7f;
line-height: 26px;
}
.content .details-box .consult-list .consult-item .bottom {
justify-content: space-between;
}
.content .details-box .consult-list .consult-item .bottom .bottom-left {
font-size: 13px;
color: #aaaaaa;
}
.content .details-box .consult-list .consult-item .bottom .bottom-left .bottom-avatar {
width: 20px;
height: 20px;
border-radius: 50%;
margin-right: 4px;
}
.content .details-box .consult-list .consult-item .bottom .numerical-box .item-bottom-item {
margin-left: 16px;
font-size: 12px;
color: #aaaaaa;
}
.content .details-box .consult-list .consult-item .bottom .numerical-box .item-bottom-item .item-bottom-icon {
width: 14px;
margin-right: 5px;
}
.else {
width: 290px;
background: -webkit-linear-gradient(270.00883066deg, #f7fbf7 0%, #eaf6ea 100%);

View File

@ -936,6 +936,103 @@
}
}
}
.consult-list {
.consult-item {
// width: 331px;
width: calc(50% - 5px);
background-color: rgba(255, 255, 255, 1);
border: 1px solid rgba(235, 235, 235, 1);
border-radius: 12px;
padding: 20px 15px 20px 20px;
margin-bottom: 10px;
.school {
.img {
height: 27px;
margin-right: 11px;
}
font-weight: 650;
font-style: normal;
font-size: 16px;
color: #000000;
margin-bottom: 12px;
}
.info-item {
font-size: 14px;
margin-bottom: 10px;
color: #7f7f7f;
.info-major {
margin-right: 11px;
}
.info-value {
color: #333333;
}
.line-between {
margin: 0 9px;
background-color: #d7d7d7;
height: 14px;
width: 1px;
}
.info-item-results {
padding: 0 5px;
height: 22px;
background-color: rgba(246, 246, 246, 1);
border-radius: 37px;
font-size: 13px;
color: #72db86;
font-family: "ArialMT", "Arial", sans-serif;
}
}
.info-xiaobox {
width: 296px;
height: 46px;
background-color: rgba(246, 246, 246, 1);
border-radius: 6px;
padding: 0 11px;
margin-bottom: 16px;
.info-content {
font-size: 14px;
color: #7f7f7f;
line-height: 26px;
}
}
.bottom {
justify-content: space-between;
.bottom-left {
font-size: 13px;
color: #aaaaaa;
.bottom-avatar {
width: 20px;
height: 20px;
border-radius: 50%;
margin-right: 4px;
}
}
.numerical-box {
.item-bottom-item {
margin-left: 16px;
.item-bottom-icon {
width: 14px;
margin-right: 5px;
}
font-size: 12px;
color: #aaaaaa;
}
}
}
}
}
}
}
@ -1244,8 +1341,6 @@
}
position: relative;
.state {
background-color: #ffffff;
border: 1px solid #ebebeb;

View File

@ -1,5 +1,6 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
@ -12,6 +13,7 @@
<script src="/js/base.js"></script>
<script src="/js/encrypt.js"></script>
</head>
<body>
<div class="main" id="app">
<img class="index-icon" src="/img/index-icon.png" />
@ -78,6 +80,70 @@
<div class="item flexcenter" :class="{'pitch': sideKey == key}" v-for="(item,key) in side" @click="cutSide(key)">{{ item }}</div>
</div>
<div class="details-box flex1" ref="detailsRef">
<div class="side-item">
<div class="consult-list">
<div class="consult-item" v-for="(item,index) in offerList" :key="index" url="/pages/victoryDetails/victoryDetails?id={{ item.id || item.uniqid }}">
<div class="school flexacenter">
<img class="img" :src="item.schoolimage" />
{{ item.schoolname }}
</div>
<div class="info-item flexflex" v-if="item.professional">
<div class="info-major">专业</div>
<div class="info-value flex1" v-if="item.professionalzhong">
<span>{{ item.professionaltou }}</span>
<span style="color: #509CE3;">item.professionalzhong</span>
<span>{{ item.professionalend }}</span>
</div>
<div class="info-value flex1 " v-else>{{ item.professional }}</div>
</div>
<div class="info-item flexflex" v-if="item.project">
<div class="info-major">项目</div>
<div class="info-value flex1" v-if="item.projecttzhong">
<span>{{ item.projecttou }}</span>
<span style="color: #509CE3;">{{ item.projecttzhong }}</span>
<span>{{ item.projecttend }}</span>
</div>
<div class="info-value flex1" v-else>{{ item.project }}</div>
</div>
<div class="info-item flexacenter" style="align-items: center;font-size: 27rpx;">
{{ item.semester }}
<div class="line-between"></div>
{{ item.degree }}
<div class="line-between"></div>
<div class="info-item-results flexacenter results{{ item.apply_resultstatus }}">{{ item.apply_results }}</div>
</div>
<div class="info-xiaobox flexacenter" v-if="item.message">
<div class="info-content one-line-display" v-if="item.message">{{ item.message }}</div>
</div>
<div class="bottom flexacenter">
<div class="bottom-left flexacenter">
<img class="bottom-avatar" :src="item.avatar" />
{{ item.timestamp }}
</div>
<!-- 数值 -->
<div class="numerical-box flexacenter">
<div class="item-bottom-item flexcenter">
<img class="item-bottom-icon" mode="widthFix" src="/img/u884.png" />
{{ item.view || 0 }}
</div>
<div class="item-bottom-item flexcenter">
<img class="item-bottom-icon" mode="widthFix" style="width: 20rpx;" src="/img/expression-icon.png" />
{{ item.ripostes || 0 }}
</div>
<div class="item-bottom-item flexcenter">
<img class="item-bottom-icon" mode="widthFix" src="/img/discuss-icon.png" />
{{ item.comments || 0 }}
</div>
<div class="item-bottom-item flexcenter">
<img class="item-bottom-icon" mode="widthFix" src="/img/bi-icon.png" />
{{ item.reward || 0 }}
</div>
</div>
</div>
</div>
</div>
</div>
<div class="side-item" type="basic">
<div class="item-header flexacenter">
<div>专业排名</div>
@ -118,7 +184,7 @@
</div>
<div class="side-item" type="apply">
<div class="item-header flexacenter">还没 申请日程</div>
<div class="item-header flexacenter">申请日程</div>
<div class="application-schedule block">
<div class="list">
<div class="index flexacenter">
@ -775,11 +841,50 @@
})
}
return { side, sideKey, info, disciplineObj, rankingsObj, cutStudyMode, studyMode, course, contras, copy, download, stateObj, bindblur, remark, addComparison, cutSide, detailsRef, stateState, cutState, changeType, deletee }
const offerList = ref([{
apply_results: "Offer",
apply_resultstatus: 1,
avatar: "https://oss.x-php.com/avatar/97K4EWIMLrsbGTWXslC1XltTFqyOikN42jDKLNjtax7HINpse8SMSdU90AVyYWFjYQ~~/mini",
comments: 1,
degree: "LLM",
professional: "mcl",
project: "mcl",
reward: 23,
ripostes: 0,
schoolimage: "https://oss.x-php.com/school/J6BSwE-VfCFkCLVSBaR7ec6NYmTA5sRfNP5NHJQuwf83NTE2",
schoolname: "香港大学",
semester: "23Fall",
status: 1,
timestamp: "2023-06-25 12:42:04",
uniqid: "1eWa0uTzzLvv",
url: "https://offer.gter.net/details/1eWa0uTzzLvv",
view: 557,
}, {
apply_results: "Offer",
apply_resultstatus: 1,
avatar: "https://oss.x-php.com/avatar/97K4EWIMLrsbGTWXslC1XVtVE6yOikN42jDKLNjtax7HIdVsesDXSdU90AVyYWFjYQ~~/mini",
comments: 0,
degree: "LLM",
professional: "Common LawMCLFT",
project: null,
reward: 0,
ripostes: 0,
schoolimage: "https://oss.x-php.com/school/J6BSwE-VfCFkCLVSBaR7ec6NYmTA5sRfNP5NHJQuwf83NTE2",
schoolname: "The University of Hong Kong",
semester: "23Spring",
status: 1,
timestamp: "2023-02-21 20:09:50",
uniqid: "HD4DmDCi0aCa",
url: "https://offer.gter.net/details/HD4DmDCi0aCa",
view: 242,
}])
return {offerList, side, sideKey, info, disciplineObj, rankingsObj, cutStudyMode, studyMode, course, contras, copy, download, stateObj, bindblur, remark, addComparison, cutSide, detailsRef, stateState, cutState, changeType, deletee}
},
})
subject.component("text-module", textModule)
subject.mount("#app")
</script>
</body>
</html>

BIN
img/bi-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
img/discuss-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
img/expression-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
img/u884.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -161,3 +161,41 @@ function getBaseData() {
function openShowWindow() {
showWindow("login", "https://passport.gter.net/login/ajax", "get", -1, { cover: true })
}
function strtimeago(dateStr, type = 1) {
dateStr = dateStr + "" // 反之传入的不是字符串
dateStr = dateStr.replaceAll("-", "/") // 修改格式
var minute = 1000 * 60 //把分,时,天,周,半个月,一个月用毫秒表示
var hour = minute * 60
var day = hour * 24
var now = new Date().getTime() //获取当前时间毫秒
let objectTime = new Date(dateStr).getTime()
var diffValue = now - objectTime //时间差
if (diffValue < 0) return "刚刚"
var minC = diffValue / minute //计算时间差的分,时,天,周,月
var hourC = diffValue / hour
var dayC = diffValue / day
const diffInMilliseconds = now - objectTime
const diffInYears = diffInMilliseconds / (1000 * 60 * 60 * 24 * 365)
const diffInMonths = diffInYears * 12
let result = ""
if (dayC >= 7) {
var datetime = new Date(dateStr)
var Nyear = datetime.getFullYear()
var Nmonth = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1
var Ndate = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate()
var Nhour = datetime.getHours() < 10 ? "0" + datetime.getHours() : datetime.getHours()
var Nmin = datetime.getMinutes() < 10 ? "0" + datetime.getMinutes() : datetime.getMinutes()
if (diffInYears >= 1) result = Math.floor(diffInYears) + "年前"
else if (diffInMonths >= 1) result = Math.floor(diffInMonths) + "个月前"
} else if (dayC >= 1) result = parseInt(dayC) + "天前"
else if (hourC >= 1 && hourC <= 24) result = parseInt(hourC) + "小时前"
else if (minC >= 1 && minC <= 60) result = parseInt(minC) + "分钟前"
else result = "刚刚"
return result
}