对齐offer
This commit is contained in:
parent
5ec53fc464
commit
58c62dc535
3
app.json
3
app.json
@ -9,7 +9,8 @@
|
|||||||
"pages/projectMy/projectMy",
|
"pages/projectMy/projectMy",
|
||||||
"pages/projectDetails/projectDetails",
|
"pages/projectDetails/projectDetails",
|
||||||
"pages/search/search",
|
"pages/search/search",
|
||||||
"pages/webview/webview"
|
"pages/webview/webview",
|
||||||
|
"pages/setAvatarNickname/setAvatarNickname"
|
||||||
],
|
],
|
||||||
"window": {
|
"window": {
|
||||||
"navigationBarTextStyle": "black",
|
"navigationBarTextStyle": "black",
|
||||||
|
@ -166,7 +166,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="vote-item-bottom-right" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="vote-item-bottom-right" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="vote-item-bottom-right flexacenter">
|
<view wx:else class="vote-item-bottom-right flexacenter">
|
||||||
@ -218,7 +218,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="mj-item-bottom-right" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="mj-item-bottom-right" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="mj-item-bottom-right flexacenter">
|
<view wx:else class="mj-item-bottom-right flexacenter">
|
||||||
@ -308,7 +308,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="summary-offer-bottom-rigth" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="summary-offer-bottom-rigth" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="summary-offer-bottom-rigth flexacenter">
|
<view wx:else class="summary-offer-bottom-rigth flexacenter">
|
||||||
@ -381,7 +381,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="numerical-box" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="numerical-box" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 数值 -->
|
<!-- 数值 -->
|
||||||
@ -551,7 +551,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="find-flyer-bottom-right" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="find-flyer-bottom-right" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="find-flyer-bottom-right flexacenter">
|
<view wx:else class="find-flyer-bottom-right flexacenter">
|
||||||
@ -630,7 +630,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="thread-bottom-right" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="thread-bottom-right" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="thread-bottom-right flexacenter">
|
<view wx:else class="thread-bottom-right flexacenter">
|
||||||
|
@ -70,7 +70,6 @@ Component({
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
// console.log("urls", urls);
|
|
||||||
// urls[0]['date'] = "2025-01-20 15:35"
|
// urls[0]['date'] = "2025-01-20 15:35"
|
||||||
|
|
||||||
urls.sort((a, b) => b.rank - a.rank)
|
urls.sort((a, b) => b.rank - a.rank)
|
||||||
@ -95,7 +94,6 @@ Component({
|
|||||||
|
|
||||||
urls = urls.filter(item => item.timestamp);
|
urls = urls.filter(item => item.timestamp);
|
||||||
|
|
||||||
console.log("urls", urls);
|
|
||||||
urls.push({
|
urls.push({
|
||||||
mold: 4,
|
mold: 4,
|
||||||
timestamp: "",
|
timestamp: "",
|
||||||
|
BIN
img/defaultAvatar.png
Normal file
BIN
img/defaultAvatar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
@ -14,6 +14,8 @@ Page({
|
|||||||
screen_data: {},
|
screen_data: {},
|
||||||
totalTopHeight: 86,
|
totalTopHeight: 86,
|
||||||
islogin: false,
|
islogin: false,
|
||||||
|
isloginBtnState: false, // 登录弹窗的状态
|
||||||
|
informationState: false, // 授权后可能需要弹出完成信息框 个人背景那些
|
||||||
briefness: false, // 是否开启头部的简单模式
|
briefness: false, // 是否开启头部的简单模式
|
||||||
|
|
||||||
isquick: false, // 快速保存按钮显示
|
isquick: false, // 快速保存按钮显示
|
||||||
@ -40,8 +42,17 @@ Page({
|
|||||||
/**
|
/**
|
||||||
* 生命周期函数--监听页面加载
|
* 生命周期函数--监听页面加载
|
||||||
*/
|
*/
|
||||||
|
options: {},
|
||||||
ids: [],
|
ids: [],
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
this.options = options
|
||||||
|
if (options.ids) {
|
||||||
|
let decodedUrl = options.ids;
|
||||||
|
while (decodedUrl !== decodeURIComponent(decodedUrl)) {
|
||||||
|
decodedUrl = decodeURIComponent(decodedUrl);
|
||||||
|
}
|
||||||
|
options.ids = decodedUrl
|
||||||
|
}
|
||||||
this.ids = options.ids.split(",") || [];
|
this.ids = options.ids.split(",") || [];
|
||||||
|
|
||||||
miucms.pageStart(app).then(() => {
|
miucms.pageStart(app).then(() => {
|
||||||
@ -86,7 +97,6 @@ Page({
|
|||||||
let allArr = []
|
let allArr = []
|
||||||
list.forEach(element => allArr.push(common.decodeKey(element)))
|
list.forEach(element => allArr.push(common.decodeKey(element)))
|
||||||
const obj = this.data.disciplineObj
|
const obj = this.data.disciplineObj
|
||||||
// console.log("discipline", obj);
|
|
||||||
Promise.allSettled(allArr).then(res => {
|
Promise.allSettled(allArr).then(res => {
|
||||||
console.log("res", res);
|
console.log("res", res);
|
||||||
let list = []
|
let list = []
|
||||||
@ -256,6 +266,12 @@ Page({
|
|||||||
|
|
||||||
// 点击保存
|
// 点击保存
|
||||||
save() {
|
save() {
|
||||||
|
if (!this.data.islogin) {
|
||||||
|
this.setData({
|
||||||
|
isloginBtnState: true
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
util.wxpost("/api/project.contrast/addQuick", {
|
util.wxpost("/api/project.contrast/addQuick", {
|
||||||
projectid: this.ids
|
projectid: this.ids
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
@ -276,6 +292,31 @@ Page({
|
|||||||
showObj,
|
showObj,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
userClickLogin(e) {
|
||||||
|
let data = e.detail.data
|
||||||
|
this.setData({
|
||||||
|
islogin: true,
|
||||||
|
isloginBtnState: false,
|
||||||
|
oneselfUser: app.globalData.user,
|
||||||
|
informationState: data.regdatastep == 'success' ? false : true,
|
||||||
|
})
|
||||||
|
|
||||||
|
this.onLoad(this.options)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 关闭授权登录事件
|
||||||
|
popClose() {
|
||||||
|
this.setData({
|
||||||
|
isloginBtnState: !this.data.isloginBtnState
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 子组件传值 修改 完善信息组件的状态
|
||||||
|
revampInformationState() {
|
||||||
|
this.setData({
|
||||||
|
informationState: false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生命周期函数--监听页面初次渲染完成
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
{
|
{
|
||||||
"usingComponents": {
|
"usingComponents": {
|
||||||
|
"go-login": "/component/goLogin/goLogin",
|
||||||
|
"perfect-information": "/component/perfectInformation/perfectInformation",
|
||||||
"header-nav": "/component/headerNav/headerNav",
|
"header-nav": "/component/headerNav/headerNav",
|
||||||
"index-sidebar": "/component/indexSidebar/indexSidebar"
|
"index-sidebar": "/component/indexSidebar/indexSidebar"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
<!--pages/projectComparison/projectComparison.wxml-->
|
<!--pages/projectComparison/projectComparison.wxml-->
|
||||||
<header-nav>项目对比</header-nav>
|
<header-nav>项目对比</header-nav>
|
||||||
<view class="container" wx:if="{{ !loading }}">
|
<view class="container" wx:if="{{ !loading }}">
|
||||||
|
<perfect-information wx:if="{{ informationState }}" bindrevampInformationState="revampInformationState"></perfect-information>
|
||||||
|
|
||||||
|
<go-login wx:if="{{ isloginBtnState }}" islogin="{{ islogin }}" binduserClickLogin="userClickLogin" bindpopClose="popClose"></go-login>
|
||||||
|
|
||||||
<block wx:key="index">
|
<block wx:key="index">
|
||||||
<view class="block head-box flexflex {{ briefness ? 'briefness' : '' }}" style="top: {{ totalTopHeight }}px;">
|
<view class="block head-box flexflex {{ briefness ? 'briefness' : '' }}" style="top: {{ totalTopHeight }}px;">
|
||||||
<view class="item flex1 " wx:for="{{ list }}" wx:key="index">
|
<view class="item flex1 " wx:for="{{ list }}" wx:key="index">
|
||||||
@ -40,7 +44,7 @@
|
|||||||
<view class="title">学校排名</view>
|
<view class="title">学校排名</view>
|
||||||
<view class="block flexflex">
|
<view class="block flexflex">
|
||||||
<view class="item flex1" wx:for="{{ list }}" wx:key="index">
|
<view class="item flex1" wx:for="{{ list }}" wx:key="index">
|
||||||
<template is="mode2" data="{{ text: item.schoolranking || '-' }}"></template>
|
<template is="mode2" data="{{ text: item.schoolranking || '-' }}"></template>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -90,6 +90,7 @@ Page({
|
|||||||
rpx30: 30,
|
rpx30: 30,
|
||||||
user: {},
|
user: {},
|
||||||
offerList: [],
|
offerList: [],
|
||||||
|
offerPage: 1,
|
||||||
sideNum: {},
|
sideNum: {},
|
||||||
answerType: 0, // 招生管显示类型 0不显示 1长期答疑 2即将开始
|
answerType: 0, // 招生管显示类型 0不显示 1长期答疑 2即将开始
|
||||||
countDown: {
|
countDown: {
|
||||||
@ -148,25 +149,17 @@ Page({
|
|||||||
const data = res.data
|
const data = res.data
|
||||||
let admissionofficerin = data.admissionofficerin || []
|
let admissionofficerin = data.admissionofficerin || []
|
||||||
|
|
||||||
// console.log("data", data);
|
|
||||||
// admissionofficerin[0]['date'] = "2025-01-21 19:00"
|
|
||||||
|
|
||||||
if (admissionofficerin.length > 0) {
|
if (admissionofficerin.length > 0) {
|
||||||
admissionofficerin.forEach(element => {
|
admissionofficerin.forEach(element => {
|
||||||
const date = new Date(element.date);
|
const date = new Date(element.date);
|
||||||
// let answerType = 1
|
|
||||||
if (!isNaN(date.getTime())) {
|
if (!isNaN(date.getTime())) {
|
||||||
if (Date.now() < date.getTime()) {
|
if (Date.now() < date.getTime()) {
|
||||||
this.startCountdown(date.getTime() - Date.now() || 0)
|
this.startCountdown(date.getTime() - Date.now() || 0)
|
||||||
// answerType = 2
|
|
||||||
this.setData({
|
this.setData({
|
||||||
answerType: 2,
|
answerType: 2,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// this.setData({
|
|
||||||
// answerType,
|
|
||||||
// })
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -184,7 +177,7 @@ Page({
|
|||||||
|
|
||||||
const info = data.info || {}
|
const info = data.info || {}
|
||||||
|
|
||||||
const fields = ['tuition_fee', ];
|
const fields = ['tuition_fee'];
|
||||||
fields.forEach(field => {
|
fields.forEach(field => {
|
||||||
const textKey = `${field}_text`;
|
const textKey = `${field}_text`;
|
||||||
info[textKey] = common.formatNumberWithSpaces(info[field] || '');
|
info[textKey] = common.formatNumberWithSpaces(info[field] || '');
|
||||||
@ -241,40 +234,9 @@ Page({
|
|||||||
if ((year < semester.year) || (year === semester.year && month < semester.month)) info['semesterState'] = true
|
if ((year < semester.year) || (year === semester.year && month < semester.month)) info['semesterState'] = true
|
||||||
|
|
||||||
let scores = info.language_proficiency_scores || []
|
let scores = info.language_proficiency_scores || []
|
||||||
const scoresList = scores
|
info["scoresList"] = common.scoresList(scores)
|
||||||
.map(element => {
|
|
||||||
let text = ""
|
|
||||||
if (["GMAT", "GMAT Focus Edition"].includes(element.name_zh)) text = `Verbal Reasoning ${element.verbal_reasoning} 分以上`
|
|
||||||
else if (["IELTS Academic", "TOEFL-iBT", "TOEFL-pBT"].includes(element.name_en)) {
|
|
||||||
const fields = {
|
|
||||||
total: "总分",
|
|
||||||
reading: "阅读",
|
|
||||||
speaking: "口语",
|
|
||||||
writing: "写作",
|
|
||||||
listening: "听力",
|
|
||||||
}
|
|
||||||
|
|
||||||
let scores = [element.reading, element.speaking, element.writing, element.listening]
|
// info["scoresList"] = scoresList
|
||||||
|
|
||||||
if (scores.length == 4 && scores.every(score => score !== undefined && score > 0 && score === scores[0])) text = `总分 ${element.total} 分以上,各项分数不低于 ${scores[0]} 分`
|
|
||||||
else {
|
|
||||||
for (const [key, label] of Object.entries(fields)) {
|
|
||||||
if (element[key]) text += `${label} ${element[key]} 分以上、`
|
|
||||||
}
|
|
||||||
if (text.endsWith("、")) text = text.slice(0, -1)
|
|
||||||
}
|
|
||||||
|
|
||||||
} else if (element.total && element.total == 'Pass') text = `等级 ${element.total}`
|
|
||||||
else if (element.total && /^[A-Za-z]+$/.test(element.total)) text = `等级 ${element.total} 以上`
|
|
||||||
else if (element.total) text = `总分 ${element.total} 分以上`
|
|
||||||
return text ? {
|
|
||||||
name: element.name_zh,
|
|
||||||
text
|
|
||||||
} : null
|
|
||||||
})
|
|
||||||
.filter(item => item !== null)
|
|
||||||
|
|
||||||
info["scoresList"] = scoresList
|
|
||||||
|
|
||||||
this.getOfferData(info.id)
|
this.getOfferData(info.id)
|
||||||
|
|
||||||
@ -342,11 +304,8 @@ Page({
|
|||||||
|
|
||||||
// 计算出外地申请截止时间
|
// 计算出外地申请截止时间
|
||||||
calculateApplicaDeadline(obj) {
|
calculateApplicaDeadline(obj) {
|
||||||
// 初始化变量来存储最大时间点的属性和日期
|
|
||||||
let maxDate = null;
|
let maxDate = null;
|
||||||
// 遍历对象的属性
|
|
||||||
for (const item in obj) {
|
for (const item in obj) {
|
||||||
// 如果当前日期是最大日期或是第一个日期,则更新最大日期和属性
|
|
||||||
if (maxDate === null || obj[item] > maxDate) maxDate = obj[item];
|
if (maxDate === null || obj[item] > maxDate) maxDate = obj[item];
|
||||||
}
|
}
|
||||||
return maxDate
|
return maxDate
|
||||||
@ -401,26 +360,38 @@ Page({
|
|||||||
sideHeight: {},
|
sideHeight: {},
|
||||||
getHeadHeight() {
|
getHeadHeight() {
|
||||||
const query = wx.createSelectorQuery();
|
const query = wx.createSelectorQuery();
|
||||||
query.selectAll('.details-box .side-item').boundingClientRect(rect => {
|
query.selectAll('.head-box').boundingClientRect()
|
||||||
|
query.selectAll('.details-box .side-item').boundingClientRect()
|
||||||
|
query.exec(rect => {
|
||||||
if (!rect) return
|
if (!rect) return
|
||||||
|
const headBox = rect[0][0] || {}
|
||||||
|
const side = rect[1]
|
||||||
let sideHeight = {}
|
let sideHeight = {}
|
||||||
rect.forEach(element => {
|
let height = headBox.height - this.data.rpx30
|
||||||
|
side.forEach(element => {
|
||||||
const type = element.dataset.type
|
const type = element.dataset.type
|
||||||
sideHeight[type] = element.top
|
sideHeight[type] = height
|
||||||
|
height += element.height || 0
|
||||||
})
|
})
|
||||||
this.sideHeight = sideHeight
|
this.sideHeight = sideHeight
|
||||||
}).exec();
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
onPageScroll(e) {
|
onPageScroll(e) {
|
||||||
// if (Math.random() > 0.5) return
|
|
||||||
|
|
||||||
const scrollTop = e.scrollTop
|
const scrollTop = e.scrollTop
|
||||||
|
|
||||||
const sideHeight = this.sideHeight
|
const sideHeight = this.sideHeight
|
||||||
const sideHeightList = Object.keys(sideHeight) || []
|
const sideHeightList = Object.keys(sideHeight) || []
|
||||||
if (sideHeightList.length == 0) return
|
if (sideHeightList.length == 0) return
|
||||||
let closestValue = sideHeightList.reduce((a, b) => Math.abs(sideHeight[b] - scrollTop) < Math.abs(sideHeight[a] - scrollTop) ? b : a);
|
|
||||||
|
// 获取对象的所有键
|
||||||
|
const keys = Object.keys(sideHeight);
|
||||||
|
// 对键数组进行倒序排列
|
||||||
|
let closestValue = keys.reduce((acc, key) => {
|
||||||
|
const diff = sideHeight[key] - scrollTop;
|
||||||
|
if (diff <= this.data.totalTopHeight) return key
|
||||||
|
return acc;
|
||||||
|
}, null);
|
||||||
|
|
||||||
const sideKey = closestValue || 'pivotal'
|
const sideKey = closestValue || 'pivotal'
|
||||||
if (sideKey != this.data.sideKey) {
|
if (sideKey != this.data.sideKey) {
|
||||||
@ -514,8 +485,10 @@ Page({
|
|||||||
handSide(e) {
|
handSide(e) {
|
||||||
const sideKey = e.currentTarget.dataset.key
|
const sideKey = e.currentTarget.dataset.key
|
||||||
const sideHeight = this.sideHeight
|
const sideHeight = this.sideHeight
|
||||||
|
let value = sideHeight[sideKey] - this.data.totalTopHeight || 0
|
||||||
|
if (this.data.offerPage && ["issue", "links"].includes(sideKey)) value = 10000000
|
||||||
wx.pageScrollTo({
|
wx.pageScrollTo({
|
||||||
scrollTop: sideHeight[sideKey] - this.data.totalTopHeight || 0,
|
scrollTop: value,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -601,7 +574,8 @@ Page({
|
|||||||
},
|
},
|
||||||
|
|
||||||
getOfferData(projectid) {
|
getOfferData(projectid) {
|
||||||
util.wxget("/api/project.other/offerList?limit=2000&projectid=" + projectid, ).then(res => {
|
if (this.data.offerPage == 0) return
|
||||||
|
util.wxget(`/api/project.other/offerList?limit=2000&projectid=${ projectid || this.data.info.id }&page=${ this.data.offerPage }`).then(res => {
|
||||||
const data = res.data
|
const data = res.data
|
||||||
const list = data.list || []
|
const list = data.list || []
|
||||||
let side = this.data.side
|
let side = this.data.side
|
||||||
@ -614,9 +588,14 @@ Page({
|
|||||||
let sideNum = this.data.sideNum
|
let sideNum = this.data.sideNum
|
||||||
sideNum['consult'] = data.count
|
sideNum['consult'] = data.count
|
||||||
this.setData({
|
this.setData({
|
||||||
offerList: list,
|
offerList: this.data.offerList.concat(list),
|
||||||
side,
|
side,
|
||||||
sideNum,
|
sideNum,
|
||||||
|
offerPage: data.count > data.limit * data.page ? this.data.offerPage + 1 : 0,
|
||||||
|
}, () => {
|
||||||
|
setTimeout(() => {
|
||||||
|
this.getHeadHeight()
|
||||||
|
}, 500)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@ -670,7 +649,7 @@ Page({
|
|||||||
* 页面上拉触底事件的处理函数
|
* 页面上拉触底事件的处理函数
|
||||||
*/
|
*/
|
||||||
onReachBottom() {
|
onReachBottom() {
|
||||||
|
if (this.data.offerPage != 0) this.getOfferData()
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
* 页面相关事件处理函数--监听用户下拉动作
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
@ -200,8 +200,9 @@ navigator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.borderTop {
|
.borderTop {
|
||||||
border-top: 1rpx dotted #d9d9d9;
|
border-top: 1rpx solid #ebebeb;
|
||||||
margin-left: 36rpx;
|
// margin-left: 36rpx;
|
||||||
|
width: calc(100% + 15rpx);
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-header {
|
.item-header {
|
||||||
@ -503,72 +504,33 @@ navigator {
|
|||||||
position: relative;
|
position: relative;
|
||||||
min-height: 160rpx;
|
min-height: 160rpx;
|
||||||
|
|
||||||
.left {
|
.unit {
|
||||||
display: flex;
|
padding: 0 10.5rpx;
|
||||||
// flex-direction: column;
|
width: fit-content;
|
||||||
justify-content: center;
|
height: 30rpx;
|
||||||
align-items: center;
|
line-height: 30rpx;
|
||||||
|
background-color: rgba(249, 93, 93, 1);
|
||||||
.unit {
|
border-radius: 22.5rpx;
|
||||||
padding: 0 10.5rpx;
|
font-family: 'PingFangSC-Regular', 'PingFang SC', sans-serif;
|
||||||
width: fit-content;
|
font-weight: 400;
|
||||||
height: 30rpx;
|
font-size: 21rpx;
|
||||||
line-height: 30rpx;
|
color: #FFFFFF;
|
||||||
background-color: rgba(249, 93, 93, 1);
|
position: absolute;
|
||||||
border-radius: 22.5rpx;
|
top: 15rpx;
|
||||||
font-family: 'PingFangSC-Regular', 'PingFang SC', sans-serif;
|
left: 15rpx;
|
||||||
font-weight: 400;
|
|
||||||
font-size: 21rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
position: absolute;
|
|
||||||
top: 15rpx;
|
|
||||||
left: 15rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.number {
|
|
||||||
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
|
||||||
font-weight: 900;
|
|
||||||
font-size: 30rpx;
|
|
||||||
color: #000000;
|
|
||||||
// margin-bottom: 12rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.right {
|
.number {
|
||||||
width: 300rpx;
|
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
||||||
background-color: rgba(246, 246, 246, 1);
|
font-weight: 900;
|
||||||
border-radius: 9rpx;
|
font-size: 30rpx;
|
||||||
padding: 24rpx 15rpx;
|
color: #000000;
|
||||||
min-height: 130rpx;
|
}
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
flex-direction: column;
|
|
||||||
|
|
||||||
.item {
|
.text {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
justify-content: space-between;
|
color: #555555;
|
||||||
|
margin-right: 20rpx;
|
||||||
&:not(:last-of-type) {
|
|
||||||
margin-bottom: 16.5rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.key {
|
|
||||||
color: #555555;
|
|
||||||
}
|
|
||||||
|
|
||||||
.value {
|
|
||||||
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
|
||||||
font-weight: 900;
|
|
||||||
font-style: normal;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -863,7 +825,7 @@ navigator {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
padding: 0 10rpx;
|
padding: 0 10rpx;
|
||||||
|
|
||||||
&:not(:last-of-type) {
|
&:not(:last-of-type) {
|
||||||
border-right: 1rpx dotted #ebebeb;
|
border-right: 1rpx dotted #ebebeb;
|
||||||
}
|
}
|
||||||
@ -1412,141 +1374,6 @@ navigator {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.remark {
|
|
||||||
width: 315rpx;
|
|
||||||
height: 72rpx;
|
|
||||||
background-color: rgba(246, 246, 246, 1);
|
|
||||||
border: 1rpx solid rgba(235, 235, 235, 1);
|
|
||||||
border-radius: 312rpx;
|
|
||||||
padding: 0 24rpx;
|
|
||||||
|
|
||||||
.icon {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 15rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
width: 217.5rpx;
|
|
||||||
|
|
||||||
&.placeholder {
|
|
||||||
color: #AAAAAA;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.state-mask {
|
|
||||||
position: fixed;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
width: 100vw;
|
|
||||||
height: 100vh;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.state {
|
|
||||||
width: 171rpx;
|
|
||||||
height: 117rpx;
|
|
||||||
position: relative;
|
|
||||||
z-index: 2;
|
|
||||||
|
|
||||||
.state-box {
|
|
||||||
border-radius: 12rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
border: 1rpx solid transparent;
|
|
||||||
transition: all .3s;
|
|
||||||
|
|
||||||
&.show {
|
|
||||||
background-color: rgba(245, 252, 253, 1);
|
|
||||||
border: 1rpx solid rgba(242, 242, 242, 1);
|
|
||||||
-moz-box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
-webkit-box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
|
|
||||||
.state-list {
|
|
||||||
height: 313.5rpx;
|
|
||||||
border-bottom-color: #d7d7d7;
|
|
||||||
}
|
|
||||||
|
|
||||||
.delete {
|
|
||||||
padding: 31.5rpx 0;
|
|
||||||
height: 111rpx;
|
|
||||||
border-bottom-color: #d7d7d7;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&.undetermined {
|
|
||||||
.state-pitch {
|
|
||||||
background-color: rgba(249, 93, 93, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.state-list {
|
|
||||||
.state-item {
|
|
||||||
&.pitch {
|
|
||||||
color: #F95D5D;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.state-pitch {
|
|
||||||
width: 135rpx;
|
|
||||||
height: 72rpx;
|
|
||||||
background-color: rgba(4, 176, 213, 1);
|
|
||||||
border-radius: 52.5rpx;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
margin: 22.5rpx 18rpx;
|
|
||||||
|
|
||||||
.icon {
|
|
||||||
width: 16.5rpx;
|
|
||||||
height: 9rpx;
|
|
||||||
margin-left: 8rpx;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.state-list {
|
|
||||||
padding: 0 22.5rpx 13.5rpx;
|
|
||||||
border-bottom: 1rpx dotted transparent;
|
|
||||||
height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
transition: all .3s;
|
|
||||||
|
|
||||||
.state-item {
|
|
||||||
height: 75rpx;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
|
|
||||||
&.pitch {
|
|
||||||
color: #04B0D5;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.delete {
|
|
||||||
height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
border-bottom: 1rpx dotted transparent;
|
|
||||||
transition: all .3s;
|
|
||||||
|
|
||||||
.delete-btn {
|
|
||||||
width: 48rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
background-color: #f2f2f2;
|
|
||||||
border-radius: 50%;
|
|
||||||
|
|
||||||
.icon {
|
|
||||||
width: 21rpx;
|
|
||||||
height: 22.5rpx;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.btns {
|
.btns {
|
||||||
.item {
|
.item {
|
||||||
.icon {
|
.icon {
|
||||||
@ -1938,19 +1765,18 @@ navigator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.left {
|
.left {
|
||||||
// width: 453rpx;
|
|
||||||
height: 120rpx;
|
height: 120rpx;
|
||||||
// background: inherit;
|
|
||||||
// background-color: rgba(255, 255, 255, 0.898039215686275);
|
|
||||||
background-color: rgba(253, 250, 247, 1);
|
background-color: rgba(253, 250, 247, 1);
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1.5rpx solid rgba(242, 242, 242, 1);
|
border: 1.5rpx solid rgba(242, 242, 242, 1);
|
||||||
border-radius: 4.5rpx 0 0 4.5rpx;
|
border-radius: 6rpx 0 0 6rpx;
|
||||||
font-size: 25.5rpx;
|
font-size: 25.5rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
line-height: 36rpx;
|
line-height: 36rpx;
|
||||||
padding: 10.5rpx 15rpx;
|
padding: 10.5rpx 15rpx;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.left-text {
|
.left-text {
|
||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
@ -1989,7 +1815,9 @@ navigator {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
padding-right: 22rpx;
|
padding-right: 22rpx;
|
||||||
border-radius: 0 4.5rpx 4.5rpx 0;
|
border-radius: 0 6rpx 6rpx 0;
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
width: 145.5rpx;
|
width: 145.5rpx;
|
||||||
@ -2036,10 +1864,18 @@ navigator {
|
|||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.aperture {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 223.5rpx;
|
||||||
|
height: 120rpx;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.quick-answer {
|
.quick-answer {
|
||||||
width: 564rpx;
|
width: 564rpx;
|
||||||
height: 190.5rpx;
|
height: 190.5rpx;
|
||||||
|
@ -47,6 +47,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="right flexflex ">
|
<view class="right flexflex ">
|
||||||
|
<image class="aperture" src="https://app.gter.net/image/miniApp/offer/aperture-icon.png" mode="widthFix"></image>
|
||||||
<view class="text">
|
<view class="text">
|
||||||
<image class="icon icon2" src="https://app.gter.net/image/miniApp/offer/about-start-text-w.png" mode="widthFix"></image>
|
<image class="icon icon2" src="https://app.gter.net/image/miniApp/offer/about-start-text-w.png" mode="widthFix"></image>
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/about-start-text.png" mode="widthFix"></image>
|
<image class="icon" src="https://app.gter.net/image/miniApp/offer/about-start-text.png" mode="widthFix"></image>
|
||||||
@ -75,7 +76,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style="height: 100%" class="details-box flex1" scroll-y="{{ true }}" scroll-with-animation="{{ scrollAnimation }}">
|
<view style="height: 100%" class="details-box flex1">
|
||||||
<!-- 招生官 -->
|
<!-- 招生官 -->
|
||||||
<view class="side-item" data-type="pivotal">
|
<view class="side-item" data-type="pivotal">
|
||||||
<block wx:if="{{ urls.length != 0 && answerType == 0 }}">
|
<block wx:if="{{ urls.length != 0 && answerType == 0 }}">
|
||||||
@ -114,12 +115,10 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 总学费 -->
|
<!-- 总学费 -->
|
||||||
<view class="tuition block">
|
<view class="tuition block flexcenter">
|
||||||
<view class="left flex1 flexacenter">
|
<view class="unit">{{ info.tuition_currency || 'HK$' }}</view>
|
||||||
<view class="unit">{{ info.tuition_currency || 'HK$' }}</view>
|
<view class="text">总学费</view>
|
||||||
<view class="text">总学费</view>
|
<view class="number">{{ info.tuition_fee_text || '待确认' }}</view>
|
||||||
<view class="number">{{ info.tuition_fee_text || '待确认' }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 语言和奖金 -->
|
<!-- 语言和奖金 -->
|
||||||
@ -150,15 +149,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="demand block" wx:if="{{ info.scoresList.length != 0 }}">
|
<view class="demand block" wx:if="{{ info.scoresList.length != 0 }}">
|
||||||
<view class="title">英语能力要求</view>
|
<template is="demand" data="{{ list: info.scoresList }}"></template>
|
||||||
<view class="hint">满足以下其中一项即可</view>
|
|
||||||
<view class="list">
|
|
||||||
<view class="item" wx:for="{{ info.scoresList }}" wx:key="index">
|
|
||||||
<image class="triangle" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
|
||||||
<view class="name">{{ item.name }}</view>
|
|
||||||
<view class="value">{{ item.text }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
@ -241,19 +232,7 @@
|
|||||||
<template is="item-header" data="{{ text: '最低入学要求' }}"></template>
|
<template is="item-header" data="{{ text: '最低入学要求' }}"></template>
|
||||||
<view class="demand block">
|
<view class="demand block">
|
||||||
<view class="text">{{ info.entrance_requirements || '-' }}</view>
|
<view class="text">{{ info.entrance_requirements || '-' }}</view>
|
||||||
<block wx:if="{{ info.scoresList.length != 0 }}">
|
<template is="demand" wx:if="{{ info.scoresList.length != 0 }}" data="{{ list: info.scoresList }}"></template>
|
||||||
<view class="title">英语能力要求</view>
|
|
||||||
<view class="hint">满足以下其中一项即可</view>
|
|
||||||
<view class="list">
|
|
||||||
<block wx:for="{{ info.scoresList }}" wx:key="index">
|
|
||||||
<view class="item">
|
|
||||||
<image class="triangle" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
|
||||||
<view class="name">{{ item.name }}</view>
|
|
||||||
<view class="value">{{ item.text }}</view>
|
|
||||||
</view>
|
|
||||||
</block>
|
|
||||||
</view>
|
|
||||||
</block>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<block wx:if="{{ info.documents_required }}">
|
<block wx:if="{{ info.documents_required }}">
|
||||||
@ -265,12 +244,10 @@
|
|||||||
</block>
|
</block>
|
||||||
|
|
||||||
<template is="item-header" data="{{ text: '费用' }}"></template>
|
<template is="item-header" data="{{ text: '费用' }}"></template>
|
||||||
<view class="tuition block">
|
<view class="tuition block flexcenter">
|
||||||
<view class="left flex1 flexacenter">
|
<view class="unit">{{ info.tuition_currency || 'HK$' }}</view>
|
||||||
<view class="unit">{{ info.tuition_currency || 'HK$' }}</view>
|
<view class="text">总学费</view>
|
||||||
<view class="text">总学费</view>
|
<view class="number">{{ info.tuition_fee_text || '待确认' }}</view>
|
||||||
<view class="number">{{ info.tuition_fee_text || '待确认' }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<block wx:if="{{ info.scholarships }}">
|
<block wx:if="{{ info.scholarships }}">
|
||||||
@ -343,46 +320,9 @@
|
|||||||
|
|
||||||
<template wx:if="{{ course.required.length != 0 || course.required.length != 0 }}" is="item-header" data="{{ text: '课程设置' }}"></template>
|
<template wx:if="{{ course.required.length != 0 || course.required.length != 0 }}" is="item-header" data="{{ text: '课程设置' }}"></template>
|
||||||
|
|
||||||
<view wx:if="{{ course.required.length != 0 }}" class="course block">
|
<template wx:if="{{ course.required.length != 0 }}" is="table" data="{{ data: course.required, title: '必修课程', count: course.requiredCount }}"></template>
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
|
||||||
<view class="title">必修课程</view>
|
|
||||||
<view class="hint" wx:if="{{ course.requiredCount }}">(共 {{ course.requiredCount }} 学分)</view>
|
|
||||||
<view class="table-head flexacenter">
|
|
||||||
<view class="item number">课程编号</view>
|
|
||||||
<view class="item name flex1">课程名称</view>
|
|
||||||
<view class="item credit">学分</view>
|
|
||||||
</view>
|
|
||||||
<view class="table-body">
|
|
||||||
<view class="list" wx:for="{{ course.required }}" wx:key="index">
|
|
||||||
<view class="item number flexcenter">{{ item.course_code || '-' }}</view>
|
|
||||||
<view class="item name flex1">
|
|
||||||
<view class="text">{{ item.course_name_zh }}</view>
|
|
||||||
<view class="english">{{ item.course_name_en }}</view>
|
|
||||||
</view>
|
|
||||||
<view class="item credit flexcenter">{{ item.credit || '-' }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view wx:if="{{ course.elective.length != 0 }}" class="course block">
|
<template wx:if="{{ course.elective.length != 0 }}" is="table" data="{{ data: course.elective, title: '选修课程' }}"></template>
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
|
||||||
<view class="title">选修课程</view>
|
|
||||||
<view class="table-head flexacenter">
|
|
||||||
<view class="item number">课程编号</view>
|
|
||||||
<view class="item name flex1">课程名称</view>
|
|
||||||
<view class="item credit">学分</view>
|
|
||||||
</view>
|
|
||||||
<view class="table-body">
|
|
||||||
<view class="list" wx:for="{{ course.elective }}" wx:key="index">
|
|
||||||
<view class="item number flexcenter">{{ item.course_code || '-' }}</view>
|
|
||||||
<view class="item name flex1">
|
|
||||||
<view class="text">{{ item.course_name_zh }}</view>
|
|
||||||
<view class="english">{{ item.course_name_en }}</view>
|
|
||||||
</view>
|
|
||||||
<view class="item credit flexcenter">{{ item.credit || '-' }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="link block" wx:if="{{ info.catalog_url }}">
|
<view class="link block" wx:if="{{ info.catalog_url }}">
|
||||||
<view class="title">申请页项目详情</view>
|
<view class="title">申请页项目详情</view>
|
||||||
@ -427,7 +367,6 @@
|
|||||||
<view class="block" wx:if="{{ info.positions }}">
|
<view class="block" wx:if="{{ info.positions }}">
|
||||||
<project-show-text titleName="职业岗位" className="positions" text="{{ info.positions || '- 暂无 -' }}"></project-show-text>
|
<project-show-text titleName="职业岗位" className="positions" text="{{ info.positions || '- 暂无 -' }}"></project-show-text>
|
||||||
</view>
|
</view>
|
||||||
<!-- </block> -->
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="side-item" data-type="answers" wx:if="{{ answerquestions.length != 0 }}">
|
<view class="side-item" data-type="answers" wx:if="{{ answerquestions.length != 0 }}">
|
||||||
@ -469,7 +408,7 @@
|
|||||||
<view wx:if="{{ offerList.length != 0 }}" class="side-item" data-type="consult">
|
<view wx:if="{{ offerList.length != 0 }}" class="side-item" data-type="consult">
|
||||||
<template is="item-header" data="{{ text: '寄托录取参考', type: 'consult' }}"></template>
|
<template is="item-header" data="{{ text: '寄托录取参考', type: 'consult' }}"></template>
|
||||||
<view class="consult-list">
|
<view class="consult-list">
|
||||||
<navigator class="consult-item" wx:for="{{ offerList }}" wx:key="index" url="/pages/victoryDetails/victoryDetails?id={{ item.id || item.uniqid }}" hover-class="none">
|
<navigator class="consult-item" wx:for="{{ offerList }}" wx:key="index" target="miniProgram" app-id="wxa9296b07391c2bc7" url="/pages/victoryDetails/victoryDetails?id={{ item.id || item.uniqid }}" hover-class="none">
|
||||||
<view class="school flexacenter">
|
<view class="school flexacenter">
|
||||||
<image class="img" src="{{ item.schoolimage }}" mode="widthFix"></image>
|
<image class="img" src="{{ item.schoolimage }}" mode="widthFix"></image>
|
||||||
<view class="flex1">{{ item.schoolname }}</view>
|
<view class="flex1">{{ item.schoolname }}</view>
|
||||||
@ -509,7 +448,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ isShowEmoji }}" class="numerical-box" style="display: flex;margin-left: 15rpx;">
|
<view wx:if="{{ isShowEmoji }}" class="numerical-box" style="display: flex;margin-left: 15rpx;">
|
||||||
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
<view class="emoji-item" wx:for="{{ items }}" wx:key="index">
|
||||||
<rich-text class="emoji-item-icon" nodes="&#x{{ item }};" />
|
<rich-text class="emoji-item-icon" nodes="{{ '&#x' + item + ';' }}" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 数值 -->
|
<!-- 数值 -->
|
||||||
@ -536,7 +475,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="side-item" data-type="issue" wx:if="{{ info.faq && info.faq.length != 0 }}">
|
<view class="side-item" data-type="issue" wx:if="{{ offerPage == 0 && (info.faq && info.faq.length != 0) }}">
|
||||||
<view class="issue-bj" wx:for="{{ info.faq }}" wx:key="index">
|
<view class="issue-bj" wx:for="{{ info.faq }}" wx:key="index">
|
||||||
<view class="issue block">
|
<view class="issue block">
|
||||||
<view class="index flexcenter">{{ item.num }}</view>
|
<view class="index flexcenter">{{ item.num }}</view>
|
||||||
@ -547,7 +486,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view wx:if="{{ info.leaflet_url || info.program_url || info.catalog_url }}" class="side-item" data-type="links">
|
<view wx:if="{{ offerPage == 0 && (info.leaflet_url || info.program_url || info.catalog_url) }}" class="side-item" data-type="links">
|
||||||
<view class="pdf block" wx:if="{{ info.leaflet_url }}">
|
<view class="pdf block" wx:if="{{ info.leaflet_url }}">
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/pdf-icon.svg" mode="widthFix"></image>
|
<image class="icon" src="https://app.gter.net/image/miniApp/offer/pdf-icon.svg" mode="widthFix"></image>
|
||||||
<view class="title">官方宣传册</view>
|
<view class="title">官方宣传册</view>
|
||||||
@ -598,8 +537,8 @@
|
|||||||
</block>
|
</block>
|
||||||
<view wx:else class="btns flex1 flexacenter">
|
<view wx:else class="btns flex1 flexacenter">
|
||||||
<view class="item flexcenter flex1 {{ contras.status == 1 ? 'already' : '' }}" bind:tap="addComparison">
|
<view class="item flexcenter flex1 {{ contras.status == 1 ? 'already' : '' }}" bind:tap="addComparison">
|
||||||
<image wx:if="{{ contras.status == 1 }}" class="icon" src="https://app.gter.net/image/miniApp/offer/tick-grey.svg"></image>
|
<image wx:if="{{ contras.status == 1 }}" class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/tick-grey.svg"></image>
|
||||||
<image wx:else class="icon" src="https://app.gter.net/image/miniApp/offer/add-deep-blue.svg"></image>
|
<image wx:else class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/add-deep-blue.svg"></image>
|
||||||
{{ contras.status == 1 ? '已' : '' }}加入对比单
|
{{ contras.status == 1 ? '已' : '' }}加入对比单
|
||||||
</view>
|
</view>
|
||||||
<view class="item flexcenter flex1 {{ contras.ismanage == 1 ? 'already' : '' }}" bind:tap="addComparison">
|
<view class="item flexcenter flex1 {{ contras.ismanage == 1 ? 'already' : '' }}" bind:tap="addComparison">
|
||||||
@ -659,19 +598,6 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 输入备注弹窗 -->
|
|
||||||
<view wx:if="{{ remarkState }}" class="remark-mask flexflex" style="height: calc(100vh - {{ keyboardHeight }}px);" bind:tap="closeRemark" catchtouchmove="return">
|
|
||||||
<view class="remark" catch:tap="return">
|
|
||||||
<textarea class="remark-input" cursor-spacing="{{ 5 }}" placeholder="添加备注…" maxlength="{{ 100 }}" focus="{{ remarkFocus }}" auto-focus="{{ remarkFocus }}" model:value="{{ remarkInput }}" adjust-position="{{ false }}" show-confirm-bar="{{ false }}" bindkeyboardheightchange="bindkeyboardheightchange" bind:blur="bindblur"></textarea>
|
|
||||||
<view class="remark-bottom flexacenter">
|
|
||||||
<view class="remark-limit">{{ remarkInput.length }}/100</view>
|
|
||||||
<view class="remark-btn flexcenter" bindtap="confirmRemark">
|
|
||||||
<image class="remark-icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/arrows-deep-blue-green.svg"></image>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<template name="item-header">
|
<template name="item-header">
|
||||||
<view class="item-header flexacenter">
|
<view class="item-header flexacenter">
|
||||||
<view class="flexacenter">
|
<view class="flexacenter">
|
||||||
@ -682,10 +608,10 @@
|
|||||||
榜单
|
榜单
|
||||||
<image class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/arrow-circle-gray.png"></image>
|
<image class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/arrow-circle-gray.png"></image>
|
||||||
</view>
|
</view>
|
||||||
<view wx:if="{{ type == 'consult' }}" class="list-btn flexacenter" bind:tap="goPage" data-url="/pages/victoryList/victoryList">
|
<navigator target="miniProgram" app-id="wxa9296b07391c2bc7" wx:if="{{ type == 'consult' }}" class="list-btn flexacenter" url="/pages/victoryList/victoryList">
|
||||||
Offer榜
|
Offer榜
|
||||||
<image class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/arrow-circle-gray.png"></image>
|
<image class="icon" mode="widthFix" src="https://app.gter.net/image/miniApp/offer/arrow-circle-gray.png"></image>
|
||||||
</view>
|
</navigator>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -695,6 +621,41 @@
|
|||||||
|
|
||||||
<index-sidebar id="index-sidebar" class="index-sidebar" sidebarType="xg" isInitFinish="{{ isInitFinish }}" bind:openLogin="openLoginBtnState" islogin="{{ islogin }}"></index-sidebar>
|
<index-sidebar id="index-sidebar" class="index-sidebar" sidebarType="xg" isInitFinish="{{ isInitFinish }}" bind:openLogin="openLoginBtnState" islogin="{{ islogin }}"></index-sidebar>
|
||||||
|
|
||||||
|
<template name="table">
|
||||||
|
<view class="course block">
|
||||||
|
<image class="icon" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
||||||
|
<view class="title">{{ title }}</view>
|
||||||
|
<view class="hint" wx:if="{{ count }}">(共 {{ count }} 学分)</view>
|
||||||
|
<view class="table-head flexacenter">
|
||||||
|
<view class="item number">课程编号</view>
|
||||||
|
<view class="item name flex1">课程名称</view>
|
||||||
|
<view class="item credit">学分</view>
|
||||||
|
</view>
|
||||||
|
<view class="table-body">
|
||||||
|
<view class="list" wx:for="{{ data }}" wx:key="index">
|
||||||
|
<view class="item number flexcenter">{{ item.course_code || '-' }}</view>
|
||||||
|
<view class="item name flex1">
|
||||||
|
<view class="text">{{ item.course_name_zh }}</view>
|
||||||
|
<view class="english">{{ item.course_name_en }}</view>
|
||||||
|
</view>
|
||||||
|
<view class="item credit flexcenter">{{ item.credit || '-' }}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template name="demand">
|
||||||
|
<view class="title">英语能力要求</view>
|
||||||
|
<view class="hint">满足以下其中一项即可</view>
|
||||||
|
<view class="list">
|
||||||
|
<view class="item" wx:for="{{ list }}" wx:key="index">
|
||||||
|
<image class="triangle" src="https://app.gter.net/image/miniApp/offer/triangle-red.svg" mode="widthFix"></image>
|
||||||
|
<view class="name">{{ item.name }}</view>
|
||||||
|
<view class="value">{{ item.text }}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
<view class="quick-answer-pop" wx:if="{{ quickAnswerState }}" catch:touchmove="return" bind:tap="cutQuickAnswer">
|
<view class="quick-answer-pop" wx:if="{{ quickAnswerState }}" catch:touchmove="return" bind:tap="cutQuickAnswer">
|
||||||
<view class="quick-answer-box" catch:tap="return">
|
<view class="quick-answer-box" catch:tap="return">
|
||||||
<image class="quick-answer-img" src="https://app.gter.net/image/miniApp/offer/quick-answer-pop.png" mode="widthFix"></image>
|
<image class="quick-answer-img" src="https://app.gter.net/image/miniApp/offer/quick-answer-pop.png" mode="widthFix"></image>
|
||||||
|
@ -164,8 +164,8 @@ navigator {
|
|||||||
border-bottom: 1rpx solid #d9d9d9;
|
border-bottom: 1rpx solid #d9d9d9;
|
||||||
}
|
}
|
||||||
.details-box .borderTop {
|
.details-box .borderTop {
|
||||||
border-top: 1rpx dotted #d9d9d9;
|
border-top: 1rpx solid #ebebeb;
|
||||||
margin-left: 36rpx;
|
width: calc(100% + 15rpx);
|
||||||
}
|
}
|
||||||
.details-box .item-header {
|
.details-box .item-header {
|
||||||
margin-left: 36rpx;
|
margin-left: 36rpx;
|
||||||
@ -415,12 +415,7 @@ navigator {
|
|||||||
position: relative;
|
position: relative;
|
||||||
min-height: 160rpx;
|
min-height: 160rpx;
|
||||||
}
|
}
|
||||||
.details-box .tuition .left {
|
.details-box .tuition .unit {
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.details-box .tuition .left .unit {
|
|
||||||
padding: 0 10.5rpx;
|
padding: 0 10.5rpx;
|
||||||
width: fit-content;
|
width: fit-content;
|
||||||
height: 30rpx;
|
height: 30rpx;
|
||||||
@ -435,43 +430,17 @@ navigator {
|
|||||||
top: 15rpx;
|
top: 15rpx;
|
||||||
left: 15rpx;
|
left: 15rpx;
|
||||||
}
|
}
|
||||||
.details-box .tuition .left .number {
|
.details-box .tuition .number {
|
||||||
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
}
|
}
|
||||||
.details-box .tuition .left .text {
|
.details-box .tuition .text {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #555555;
|
color: #555555;
|
||||||
margin-right: 20rpx;
|
margin-right: 20rpx;
|
||||||
}
|
}
|
||||||
.details-box .tuition .right {
|
|
||||||
width: 300rpx;
|
|
||||||
background-color: #f6f6f6;
|
|
||||||
border-radius: 9rpx;
|
|
||||||
padding: 24rpx 15rpx;
|
|
||||||
min-height: 130rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.details-box .tuition .right .item {
|
|
||||||
font-size: 24rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
.details-box .tuition .right .item:not(:last-of-type) {
|
|
||||||
margin-bottom: 16.5rpx;
|
|
||||||
}
|
|
||||||
.details-box .tuition .right .item .key {
|
|
||||||
color: #555555;
|
|
||||||
}
|
|
||||||
.details-box .tuition .right .item .value {
|
|
||||||
font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif;
|
|
||||||
font-weight: 900;
|
|
||||||
font-style: normal;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.details-box .language-bonuses {
|
.details-box .language-bonuses {
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
margin-left: 36rpx;
|
margin-left: 36rpx;
|
||||||
@ -1171,115 +1140,6 @@ navigator {
|
|||||||
height: 24rpx;
|
height: 24rpx;
|
||||||
margin-right: 12rpx;
|
margin-right: 12rpx;
|
||||||
}
|
}
|
||||||
.bottom-base .right .remark {
|
|
||||||
width: 315rpx;
|
|
||||||
height: 72rpx;
|
|
||||||
background-color: #f6f6f6;
|
|
||||||
border: 1rpx solid #ebebeb;
|
|
||||||
border-radius: 312rpx;
|
|
||||||
padding: 0 24rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .remark .icon {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 15rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .remark .text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
width: 217.5rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .remark .text.placeholder {
|
|
||||||
color: #AAAAAA;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state-mask {
|
|
||||||
position: fixed;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
width: 100vw;
|
|
||||||
height: 100vh;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state {
|
|
||||||
width: 171rpx;
|
|
||||||
height: 117rpx;
|
|
||||||
position: relative;
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box {
|
|
||||||
border-radius: 12rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
border: 1rpx solid transparent;
|
|
||||||
transition: all 0.3s;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box.show {
|
|
||||||
background-color: #f5fcfd;
|
|
||||||
border: 1rpx solid #f2f2f2;
|
|
||||||
-moz-box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
-webkit-box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
box-shadow: 0 0 7.5rpx rgba(0, 0, 0, 0.2);
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box.show .state-list {
|
|
||||||
height: 313.5rpx;
|
|
||||||
border-bottom-color: #d7d7d7;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box.show .delete {
|
|
||||||
padding: 31.5rpx 0;
|
|
||||||
height: 111rpx;
|
|
||||||
border-bottom-color: #d7d7d7;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box.undetermined .state-pitch {
|
|
||||||
background-color: #f95d5d;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box.undetermined .state-list .state-item.pitch {
|
|
||||||
color: #F95D5D;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .state-pitch {
|
|
||||||
width: 135rpx;
|
|
||||||
height: 72rpx;
|
|
||||||
background-color: #04b0d5;
|
|
||||||
border-radius: 52.5rpx;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
margin: 22.5rpx 18rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .state-pitch .icon {
|
|
||||||
width: 16.5rpx;
|
|
||||||
height: 9rpx;
|
|
||||||
margin-left: 8rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .state-list {
|
|
||||||
padding: 0 22.5rpx 13.5rpx;
|
|
||||||
border-bottom: 1rpx dotted transparent;
|
|
||||||
height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
transition: all 0.3s;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .state-list .state-item {
|
|
||||||
height: 75rpx;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .state-list .state-item.pitch {
|
|
||||||
color: #04B0D5;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .delete {
|
|
||||||
height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
border-bottom: 1rpx dotted transparent;
|
|
||||||
transition: all 0.3s;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .delete .delete-btn {
|
|
||||||
width: 48rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
background-color: #f2f2f2;
|
|
||||||
border-radius: 50%;
|
|
||||||
}
|
|
||||||
.bottom-base .right .state .state-box .delete .delete-btn .icon {
|
|
||||||
width: 21rpx;
|
|
||||||
height: 22.5rpx;
|
|
||||||
}
|
|
||||||
.bottom-base .right .btns .item {
|
.bottom-base .right .btns .item {
|
||||||
background-color: #cff7ff;
|
background-color: #cff7ff;
|
||||||
border: 1rpx solid #badee6;
|
border: 1rpx solid #badee6;
|
||||||
@ -1605,7 +1465,7 @@ navigator {
|
|||||||
background-color: #fdfaf7;
|
background-color: #fdfaf7;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1.5rpx solid #f2f2f2;
|
border: 1.5rpx solid #f2f2f2;
|
||||||
border-radius: 4.5rpx 0 0 4.5rpx;
|
border-radius: 6rpx 0 0 6rpx;
|
||||||
font-size: 25.5rpx;
|
font-size: 25.5rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
line-height: 36rpx;
|
line-height: 36rpx;
|
||||||
@ -1644,7 +1504,9 @@ navigator {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
padding-right: 22rpx;
|
padding-right: 22rpx;
|
||||||
border-radius: 0 4.5rpx 4.5rpx 0;
|
border-radius: 0 6rpx 6rpx 0;
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
}
|
}
|
||||||
.about-start .right .text {
|
.about-start .right .text {
|
||||||
width: 145.5rpx;
|
width: 145.5rpx;
|
||||||
@ -1685,6 +1547,14 @@ navigator {
|
|||||||
font-size: 19.5rpx;
|
font-size: 19.5rpx;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
|
.about-start .right .aperture {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 223.5rpx;
|
||||||
|
height: 120rpx;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
.quick-answer {
|
.quick-answer {
|
||||||
width: 564rpx;
|
width: 564rpx;
|
||||||
height: 190.5rpx;
|
height: 190.5rpx;
|
||||||
|
@ -270,6 +270,7 @@ view {
|
|||||||
border-radius: 34.5rpx 0 34.5rpx 0;
|
border-radius: 34.5rpx 0 34.5rpx 0;
|
||||||
padding: 16rpx 16rpx 37.5rpx;
|
padding: 16rpx 16rpx 37.5rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
&::after {
|
||||||
content: "";
|
content: "";
|
||||||
width: calc(100% - 10rpx);
|
width: calc(100% - 10rpx);
|
||||||
@ -280,7 +281,7 @@ view {
|
|||||||
top: -8rpx;
|
top: -8rpx;
|
||||||
left: 0;
|
left: 0;
|
||||||
z-index: -1;
|
z-index: -1;
|
||||||
border-radius: 34.5rpx 0 34.5rpx 0;
|
border-radius: 40rpx 0 34.5rpx 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:not(:first-of-type) {
|
&:not(:first-of-type) {
|
||||||
@ -354,8 +355,7 @@ view {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
width: 313.5rpx;
|
width: 340rpx;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -364,10 +364,8 @@ view {
|
|||||||
width: 132rpx;
|
width: 132rpx;
|
||||||
height: 60rpx;
|
height: 60rpx;
|
||||||
font-weight: 650;
|
font-weight: 650;
|
||||||
|
background-color: rgb(249, 93, 93);
|
||||||
background-color: #f95d5d;
|
|
||||||
border-radius: 172.5rpx;
|
border-radius: 172.5rpx;
|
||||||
|
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
@ -545,6 +543,13 @@ view {
|
|||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
margin: 0 22.5rpx 80rpx;
|
margin: 0 22.5rpx 80rpx;
|
||||||
|
|
||||||
|
.img {
|
||||||
|
width: 345rpx;
|
||||||
|
border-radius: 18rpx;
|
||||||
|
margin-bottom: 15rpx;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
.waterfall-left {
|
.waterfall-left {
|
||||||
.more {
|
.more {
|
||||||
margin: 0 auto 30rpx;
|
margin: 0 auto 30rpx;
|
||||||
@ -708,13 +713,6 @@ view {
|
|||||||
margin-bottom: 50rpx;
|
margin-bottom: 50rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.img {
|
|
||||||
width: 345rpx;
|
|
||||||
border-radius: 18rpx;
|
|
||||||
margin-bottom: 15rpx;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.more {
|
.more {
|
||||||
width: 42rpx;
|
width: 42rpx;
|
||||||
height: 42rpx;
|
height: 42rpx;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
<block wx:if="{{ banner.length != 0 }}">
|
<block wx:if="{{ banner.length != 0 }}">
|
||||||
<header-nav bgcolor="{{ isFirstPattern ? 'transparent' : '#f5f5f5' }}" user="{{ user }}" isIndexPage="{{ true }}">港校项目库</header-nav>
|
<header-nav bgcolor="{{ isFirstPattern ? 'transparent' : '#f5f5f5' }}" user="{{ user }}" isIndexPage="{{ true }}">港校项目库</header-nav>
|
||||||
<view class="slideshow-box">
|
<view class="slideshow-box">
|
||||||
<swiper wx:if="{{ isShow }}" class="swiper" autoplay="{{ true }}" circular style="height: {{(swiperHeightList[swiperCurrent] + 5) || 124 }}px;" current="{{ swiperCurrent || 0 }}" bindchange="bindchangeSwiper">
|
<swiper wx:if="{{ isShow }}" class="swiper" autoplay="{{ true }}" circular style="height: {{(swiperHeightList[swiperCurrent] + 5) || 124 }}px;" current="{{ swiperCurrent || 0 }}" bindanimationfinish="bindchangeSwiper">
|
||||||
<swiper-item class="swiper-item" wx:for="{{ banner }}" wx:key="index">
|
<swiper-item class="swiper-item" wx:for="{{ banner }}" wx:key="index">
|
||||||
<image class="slideshow-img" src="{{ item.imageurl }}" mode="widthFix" bindload="loadHeadSwiper" bind:tap="handleSwiper" data-index="{{ index }}" show-menu-by-longpress="{{ true }}"></image>
|
<image class="slideshow-img" src="{{ item.imageurl }}" mode="widthFix" bindload="loadHeadSwiper" bind:tap="handleSwiper" data-index="{{ index }}" show-menu-by-longpress="{{ true }}"></image>
|
||||||
</swiper-item>
|
</swiper-item>
|
||||||
@ -82,7 +82,6 @@
|
|||||||
<image class="icon-red" src="https://app.gter.net/image/miniApp/offer/triangle-red-r.svg" mode="widthFix"></image>
|
<image class="icon-red" src="https://app.gter.net/image/miniApp/offer/triangle-red-r.svg" mode="widthFix"></image>
|
||||||
<image class="icon-thin" src="https://app.gter.net/image/miniApp/offer/triangle-red-thin.svg" mode="widthFix"></image>
|
<image class="icon-thin" src="https://app.gter.net/image/miniApp/offer/triangle-red-thin.svg" mode="widthFix"></image>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</view>
|
</view>
|
||||||
<view class="content flexacenter">
|
<view class="content flexacenter">
|
||||||
@ -90,7 +89,7 @@
|
|||||||
<view class="project-item flexacenter" wx:for="{{ item.data }}" wx:key="index">
|
<view class="project-item flexacenter" wx:for="{{ item.data }}" wx:key="index">
|
||||||
<image class="icon" src="{{ item.schoollogo }}"></image>
|
<image class="icon" src="{{ item.schoollogo }}"></image>
|
||||||
{{ item.schoolalias }}
|
{{ item.schoolalias }}
|
||||||
<image class="arrows" src="https://app.gter.net/image/miniApp/offer/arrows-circle-blue.svg" mode="widthFix"></image>
|
<image class="arrows" src="https://app.gter.net/image/miniApp/offer/arrows-circle-black.svg" mode="widthFix"></image>
|
||||||
<view class="text one-line-display">{{ item.name_zh }}</view>
|
<view class="text one-line-display">{{ item.name_zh }}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -110,7 +109,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="box">
|
<view class="box">
|
||||||
<swiper class="swiper" current="{{ current }}" bindchange="swiperchange" circular="{{ true }}">
|
<swiper class="swiper" circular="{{ true }}" current="{{ current }}" bindanimationfinish="swiperchange">
|
||||||
<swiper-item class="swiper-item" wx:for="{{ admissionList }}" wx:key="index">
|
<swiper-item class="swiper-item" wx:for="{{ admissionList }}" wx:key="index">
|
||||||
<view class="item flexflex" wx:for="{{ item }}" wx:for-index="i" wx:key="i" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}">
|
<view class="item flexflex" wx:for="{{ item }}" wx:for-index="i" wx:key="i" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}">
|
||||||
<image class="img" src="{{ item.schoollogo }}"></image>
|
<image class="img" src="{{ item.schoollogo }}"></image>
|
||||||
|
@ -240,7 +240,7 @@ view {
|
|||||||
top: -8rpx;
|
top: -8rpx;
|
||||||
left: 0;
|
left: 0;
|
||||||
z-index: -1;
|
z-index: -1;
|
||||||
border-radius: 34.5rpx 0 34.5rpx 0;
|
border-radius: 40rpx 0 34.5rpx 0;
|
||||||
}
|
}
|
||||||
.fate .fate-box .fate-item:not(:first-of-type) {
|
.fate .fate-box .fate-item:not(:first-of-type) {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
@ -300,7 +300,7 @@ view {
|
|||||||
margin: 0 13.5rpx;
|
margin: 0 13.5rpx;
|
||||||
}
|
}
|
||||||
.fate .fate-box .fate-item .content .project-list .project-item .text {
|
.fate .fate-box .fate-item .content .project-list .project-item .text {
|
||||||
width: 313.5rpx;
|
width: 340rpx;
|
||||||
}
|
}
|
||||||
.fate .fate-box .fate-item .content .btn {
|
.fate .fate-box .fate-item .content .btn {
|
||||||
width: 132rpx;
|
width: 132rpx;
|
||||||
@ -446,6 +446,12 @@ view {
|
|||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
margin: 0 22.5rpx 80rpx;
|
margin: 0 22.5rpx 80rpx;
|
||||||
}
|
}
|
||||||
|
.waterfall .img {
|
||||||
|
width: 345rpx;
|
||||||
|
border-radius: 18rpx;
|
||||||
|
margin-bottom: 15rpx;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
.waterfall .waterfall-left .more {
|
.waterfall .waterfall-left .more {
|
||||||
margin: 0 auto 30rpx;
|
margin: 0 auto 30rpx;
|
||||||
}
|
}
|
||||||
@ -574,12 +580,6 @@ view {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
margin-bottom: 50rpx;
|
margin-bottom: 50rpx;
|
||||||
}
|
}
|
||||||
.img {
|
|
||||||
width: 345rpx;
|
|
||||||
border-radius: 18rpx;
|
|
||||||
margin-bottom: 15rpx;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
.more {
|
.more {
|
||||||
width: 42rpx;
|
width: 42rpx;
|
||||||
height: 42rpx;
|
height: 42rpx;
|
||||||
|
@ -204,6 +204,7 @@ view {
|
|||||||
.text {
|
.text {
|
||||||
font-size: 21rpx;
|
font-size: 21rpx;
|
||||||
color: #AAAAAA;
|
color: #AAAAAA;
|
||||||
|
margin-left: 5rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -173,6 +173,7 @@ view {
|
|||||||
.chunk .list .item .head .mark .text {
|
.chunk .list .item .head .mark .text {
|
||||||
font-size: 21rpx;
|
font-size: 21rpx;
|
||||||
color: #AAAAAA;
|
color: #AAAAAA;
|
||||||
|
margin-left: 5rpx;
|
||||||
}
|
}
|
||||||
.chunk .list .item .english {
|
.chunk .list .item .english {
|
||||||
font-size: 21rpx;
|
font-size: 21rpx;
|
||||||
|
@ -13,7 +13,6 @@ Page({
|
|||||||
islogin: false,
|
islogin: false,
|
||||||
isloginBtnState: false,
|
isloginBtnState: false,
|
||||||
|
|
||||||
isFirstPattern: true,
|
|
||||||
classify: "vs", // vs manage '' 代表都没有数据
|
classify: "vs", // vs manage '' 代表都没有数据
|
||||||
move: 0,
|
move: 0,
|
||||||
manageHintState: false, // 底部的提示的显示状态
|
manageHintState: false, // 底部的提示的显示状态
|
||||||
@ -513,7 +512,6 @@ Page({
|
|||||||
focusfocus(e) {
|
focusfocus(e) {
|
||||||
const index = e.currentTarget.dataset.index
|
const index = e.currentTarget.dataset.index
|
||||||
let list = this.data.list
|
let list = this.data.list
|
||||||
console.log("list", list[index]);
|
|
||||||
this.remarks = list[index]['remarks']
|
this.remarks = list[index]['remarks']
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -539,9 +537,7 @@ Page({
|
|||||||
util.wxpost("/api/project.user/remarks", {
|
util.wxpost("/api/project.user/remarks", {
|
||||||
token,
|
token,
|
||||||
remarks,
|
remarks,
|
||||||
}).then(res => {
|
}).then(res => common.toast(res.message))
|
||||||
common.toast(res.message)
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 备注输入
|
// 备注输入
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<!--pages/projectMy/projectMy.wxml-->
|
<!--pages/projectMy/projectMy.wxml-->
|
||||||
<view class="container {{ classify == '' ? 'no-data-bj' : '' }}">
|
<view class="container {{ classify == '' ? 'no-data-bj' : '' }}">
|
||||||
<header-nav class="header-nav" bgcolor="{{ isFirstPattern ? 'transparent' : '#f5f5f5' }}">我的项目</header-nav>
|
<header-nav class="header-nav" bgcolor="transparent">我的项目</header-nav>
|
||||||
<view class="header-box"></view>
|
<view class="header-box"></view>
|
||||||
<view class="no-data flexcenter" wx:if="{{ classify == '' }}">
|
<view class="no-data flexcenter" wx:if="{{ classify == '' }}">
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/empty-icon.png" mode="widthFix"></image>
|
<image class="icon" src="https://app.gter.net/image/miniApp/offer/empty-icon.png" mode="widthFix"></image>
|
||||||
@ -162,7 +162,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<block wx:if="{{ item.input }}">
|
<block wx:if="{{ item.input }}">
|
||||||
<textarea class="input flex1" focus="{{ true }}" auto-focus="{{ true }}" auto-height="{{ true }}" placeholder="添加备注…" maxlength="100" cursor-spacing="10" bindinput="inputRemark" bindlinechange="linechange" bindblur="bindblur" data-index="{{ index }}" value="{{ item.remarks }}"></textarea>
|
<textarea class="input flex1" focus="{{ true }}" auto-focus="{{ true }}" auto-height="{{ true }}" placeholder="添加备注…" maxlength="100" cursor-spacing="10" bindinput="inputRemark" bindlinechange="linechange" bindblur="bindblur" bindfocus="focusfocus" data-index="{{ index }}" value="{{ item.remarks }}"></textarea>
|
||||||
</block>
|
</block>
|
||||||
<block wx:else>
|
<block wx:else>
|
||||||
<view wx:if="{{ item.remarks }}" class="input flex1 text " bind:tap="openInput" data-index="{{ index }}">{{ item.remarks }}</view>
|
<view wx:if="{{ item.remarks }}" class="input flex1 text " bind:tap="openInput" data-index="{{ index }}">{{ item.remarks }}</view>
|
||||||
|
@ -89,6 +89,7 @@ Page({
|
|||||||
|
|
||||||
this.getinit()
|
this.getinit()
|
||||||
this.getProjectData()
|
this.getProjectData()
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -204,9 +205,7 @@ Page({
|
|||||||
const disciplineid = screen['disciplineid']
|
const disciplineid = screen['disciplineid']
|
||||||
const university = screen['university']
|
const university = screen['university']
|
||||||
let listAll = this.listAll
|
let listAll = this.listAll
|
||||||
|
|
||||||
screen['pitch'] = screen.key
|
screen['pitch'] = screen.key
|
||||||
|
|
||||||
let screenList = this.screenList
|
let screenList = this.screenList
|
||||||
|
|
||||||
let list = []
|
let list = []
|
||||||
@ -214,6 +213,7 @@ Page({
|
|||||||
else if (university) screenList = listAll.filter(item => item.department === university);
|
else if (university) screenList = listAll.filter(item => item.department === university);
|
||||||
else screenList = this.listAll
|
else screenList = this.listAll
|
||||||
|
|
||||||
|
|
||||||
if (sort == 0) {
|
if (sort == 0) {
|
||||||
screenList.sort((a, b) => {
|
screenList.sort((a, b) => {
|
||||||
// a 排在后面
|
// a 排在后面
|
||||||
@ -335,7 +335,6 @@ Page({
|
|||||||
y: data.top + data.height / 2 - this.rpx15,
|
y: data.top + data.height / 2 - this.rpx15,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -222,7 +222,6 @@ view {
|
|||||||
|
|
||||||
.line {
|
.line {
|
||||||
width: 526rpx;
|
width: 526rpx;
|
||||||
height: 285rpx;
|
|
||||||
margin-right: 15rpx;
|
margin-right: 15rpx;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
<view class="right flex1 flexflex">
|
<view class="right flex1 flexflex">
|
||||||
<view class="name">{{ info.name }}</view>
|
<view class="name">{{ info.name }}</view>
|
||||||
<view class="english">{{ info.enname }}</view>
|
<view class="english">{{ info.enname }}</view>
|
||||||
<view wx:if="{{ info.ranks.length != 0 }}" class="world" >
|
<view wx:if="{{ info.ranks.length != 0 }}" class="world">
|
||||||
<view class="head flexcenter">
|
<view class="head flexcenter">
|
||||||
<view class="icon flexcenter">
|
<view class="icon flexcenter">
|
||||||
<image class="img" src="https://app.gter.net/image/miniApp/offer/world-ranking-icon.png" mode="widthFix"></image>
|
<image class="img" src="https://app.gter.net/image/miniApp/offer/world-ranking-icon.png" mode="widthFix"></image>
|
||||||
@ -44,7 +44,7 @@
|
|||||||
<view class="hot">
|
<view class="hot">
|
||||||
<scroll-view class="hot-box" scroll-x="{{ true }}" bindscroll="hotscroll">
|
<scroll-view class="hot-box" scroll-x="{{ true }}" bindscroll="hotscroll">
|
||||||
<view class="line" wx:for="{{ hotList }}" wx:key="index">
|
<view class="line" wx:for="{{ hotList }}" wx:key="index">
|
||||||
<view class="item flexacenter" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}" wx:for="{{ item }}" wx:for-index="i" wx:key="i">
|
<view class="item flexacenter" wx:for="{{ item }}" wx:for-index="i" wx:key="i" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}">
|
||||||
<view class="box">
|
<view class="box">
|
||||||
<view class="name one-line-display">{{ item.name_zh }}</view>
|
<view class="name one-line-display">{{ item.name_zh }}</view>
|
||||||
<view class="english one-line-display">{{ item.name_en }}</view>
|
<view class="english one-line-display">{{ item.name_en }}</view>
|
||||||
@ -102,7 +102,6 @@
|
|||||||
<view class="total">共 {{ count }} 个项目</view>
|
<view class="total">共 {{ count }} 个项目</view>
|
||||||
|
|
||||||
<view class="item" wx:for="{{ list }}" wx:key="index" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}">
|
<view class="item" wx:for="{{ list }}" wx:key="index" bind:tap="goDetails" data-uniqid="{{ item.uniqid }}">
|
||||||
<!-- <image wx:if="{{ item.admissionsproject }}" class="angle" src="https://app.gter.net/image/miniApp/offer/admission-angle.svg"></image> -->
|
|
||||||
<view class="title flexflex">
|
<view class="title flexflex">
|
||||||
<view class="name flex1">{{ item.name_zh }}</view>
|
<view class="name flex1">{{ item.name_zh }}</view>
|
||||||
<view>
|
<view>
|
||||||
@ -125,7 +124,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:else class="join flexflex" catch:tap="handleClick" data-index="{{ item.random }}" data-type="list" data-random="{{ item.random }}" data-id="{{ item.id }}" data-index="{{ index }}" data-status="{{ item.contraststatus }}">
|
<view wx:else class="join flexflex" catch:tap="handleClick" data-type="list" data-random="{{ item.random }}" data-id="{{ item.id }}" data-index="{{ index }}" data-status="{{ item.contraststatus }}">
|
||||||
<view class="add flexcenter" id="add{{ item.random }}">
|
<view class="add flexcenter" id="add{{ item.random }}">
|
||||||
<image class="icon" src="https://app.gter.net/image/miniApp/offer/plus-icon.svg"></image>
|
<image class="icon" src="https://app.gter.net/image/miniApp/offer/plus-icon.svg"></image>
|
||||||
</view>
|
</view>
|
||||||
|
@ -189,7 +189,6 @@ view {
|
|||||||
}
|
}
|
||||||
.hot .hot-box .line {
|
.hot .hot-box .line {
|
||||||
width: 526rpx;
|
width: 526rpx;
|
||||||
height: 285rpx;
|
|
||||||
margin-right: 15rpx;
|
margin-right: 15rpx;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -142,15 +142,6 @@ scroll-view {
|
|||||||
padding-right: 22.5rpx;
|
padding-right: 22.5rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
// .angle {
|
|
||||||
// position: absolute;
|
|
||||||
// top: 0;
|
|
||||||
// right: 0;
|
|
||||||
// width: 60rpx;
|
|
||||||
// height: 60rpx;
|
|
||||||
// transform: rotate(-90deg);
|
|
||||||
// }
|
|
||||||
|
|
||||||
.name {
|
.name {
|
||||||
font-family: 'PingFangSC-Semibold', 'PingFang SC Semibold', 'PingFang SC', sans-serif;
|
font-family: 'PingFangSC-Semibold', 'PingFang SC Semibold', 'PingFang SC', sans-serif;
|
||||||
font-weight: 650;
|
font-weight: 650;
|
||||||
|
@ -37,7 +37,6 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="list" scroll-y="{{ true }}" style="height: calc(100vh - {{ contentHeight }}px);" bindscrolltolower="scrolltolower">
|
<view class="list" scroll-y="{{ true }}" style="height: calc(100vh - {{ contentHeight }}px);" bindscrolltolower="scrolltolower">
|
||||||
<view class="item" wx:for="{{ list }}" wx:key="index" bind:tap="goPage" data-url="/pages/projectDetails/projectDetails?uniqid={{ item.uniqid }}" style="z-index: {{ item.moreState ? 2 : '' }};">
|
<view class="item" wx:for="{{ list }}" wx:key="index" bind:tap="goPage" data-url="/pages/projectDetails/projectDetails?uniqid={{ item.uniqid }}" style="z-index: {{ item.moreState ? 2 : '' }};">
|
||||||
<!-- <image wx:if="{{ item.admissionsproject }}" class="angle" src="https://app.gter.net/image/miniApp/offer/admission-angle.svg"></image> -->
|
|
||||||
<view class="operate flexacenter">
|
<view class="operate flexacenter">
|
||||||
<view class="school flexacenter">
|
<view class="school flexacenter">
|
||||||
<image class="icon" src="{{ item.schoollogo }}" mode="widthFix"></image>
|
<image class="icon" src="{{ item.schoollogo }}" mode="widthFix"></image>
|
||||||
|
173
pages/setAvatarNickname/setAvatarNickname.js
Normal file
173
pages/setAvatarNickname/setAvatarNickname.js
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
// pages/setAvatarNickname/setAvatarNickname.js
|
||||||
|
var miucms = require('../../utils/miucms.js');
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
avatarUrl: '',
|
||||||
|
nickname: "",
|
||||||
|
islogin: false,
|
||||||
|
isloginBtnState: false,
|
||||||
|
informationState: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
options: {},
|
||||||
|
onLoad: function (options) {
|
||||||
|
this.options = options
|
||||||
|
miucms.pageStart(app).then(() => {
|
||||||
|
const globalData = app.globalData || {}
|
||||||
|
const user = globalData.user || {}
|
||||||
|
this.setData({
|
||||||
|
avatarUrl: user.avatar || '../../img/defaultAvatar.png',
|
||||||
|
nickname: user.nickname || '',
|
||||||
|
isIndex: options.isIndex ? true : false, // 判断是否顶部返回键的
|
||||||
|
token: options.token,
|
||||||
|
islogin: app.globalData.user.uid > 0 ? true : false,
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
onChooseAvatar(e) {
|
||||||
|
let avatarUrl = e.detail.avatarUrl
|
||||||
|
avatarUrl = 'data:image/jpeg;base64,' + wx.getFileSystemManager().readFileSync(avatarUrl, "base64")
|
||||||
|
this.setData({
|
||||||
|
avatarUrl
|
||||||
|
})
|
||||||
|
|
||||||
|
miucms.request("https://passport.gter.net/api/user/uploadAvatar", {
|
||||||
|
data: avatarUrl
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 401) {
|
||||||
|
wx.showToast({
|
||||||
|
title: res.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
this.openLoginBtnState()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
let data = res.data
|
||||||
|
app.globalData.user = data.user
|
||||||
|
app.globalData['setSate'] = true
|
||||||
|
})
|
||||||
|
},
|
||||||
|
submitNickname() {
|
||||||
|
miucms.request("https://passport.gter.net/api/user/updateNickname", {
|
||||||
|
nickname: this.data.nickname
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 401) {
|
||||||
|
wx.showToast({
|
||||||
|
title: res.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
this.openLoginBtnState()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (res.code == 200) {
|
||||||
|
let data = res.data
|
||||||
|
app.globalData.user = data.user
|
||||||
|
app.globalData.setSate = true
|
||||||
|
if (this.data.isIndex) {
|
||||||
|
wx.navigateBack({
|
||||||
|
delta: 1,
|
||||||
|
fail: function () {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/projectLibrary/projectLibrary',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if (data.status == 1 || data.status == 2) {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '/pagesSquare/pages/PCAuthorization/PCAuthorization?token=' + this.data.token + "&status=" + data.status,
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
wx.navigateBack({
|
||||||
|
delta: 1,
|
||||||
|
fail: function () {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/projectLibrary/projectLibrary',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
wx.showToast({
|
||||||
|
icon: "none",
|
||||||
|
title: res.message,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 关闭授权登录事件
|
||||||
|
popClose() {
|
||||||
|
this.setData({
|
||||||
|
isloginBtnState: !this.data.isloginBtnState
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 打开 登录弹窗
|
||||||
|
openLoginBtnState() {
|
||||||
|
this.setData({
|
||||||
|
isloginBtnState: true
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
userClickLogin(e) {
|
||||||
|
let data = e.detail.data
|
||||||
|
this.setData({
|
||||||
|
islogin: true,
|
||||||
|
isloginBtnState: false,
|
||||||
|
informationState: data.regdatastep == 'success' ? false : true,
|
||||||
|
})
|
||||||
|
|
||||||
|
this.onLoad(this.options)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 子组件传值 修改 完善信息组件的状态
|
||||||
|
revampInformationState() {
|
||||||
|
this.setData({
|
||||||
|
informationState: false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady: function () {},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow: function () {},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide: function () {},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload: function () {},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh: function () {},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom: function () {},
|
||||||
|
})
|
7
pages/setAvatarNickname/setAvatarNickname.json
Normal file
7
pages/setAvatarNickname/setAvatarNickname.json
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"header-nav": "/component/headerNav/headerNav",
|
||||||
|
"go-login": "/component/goLogin/goLogin",
|
||||||
|
"perfect-information": "/component/perfectInformation/perfectInformation"
|
||||||
|
}
|
||||||
|
}
|
26
pages/setAvatarNickname/setAvatarNickname.wxml
Normal file
26
pages/setAvatarNickname/setAvatarNickname.wxml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
<!--pages/setAvatarNickname/setAvatarNickname.wxml-->
|
||||||
|
<view class="container">
|
||||||
|
<header-nav bgcolor="#f6f6f6" isIndexPage="{{ !isIndex }}" notShowIndex="true">设置头像昵称</header-nav>
|
||||||
|
<view class="box">
|
||||||
|
<view class="item">
|
||||||
|
<view class="left">头像</view>
|
||||||
|
<view class="right">
|
||||||
|
<button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar">
|
||||||
|
<image class="head" src="{{ avatarUrl || '/img/defaultAvatar.png' }}"></image>
|
||||||
|
</button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="item">
|
||||||
|
<view class="left">昵称</view>
|
||||||
|
<view class="right">
|
||||||
|
<input type="nickname" class="nickname" model:value="{{nickname}}" maxlength="50" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="save" bindtap="submitNickname">保存</view>
|
||||||
|
|
||||||
|
<go-login wx:if="{{ isloginBtnState }}" islogin="{{ islogin }}" binduserClickLogin="userClickLogin" bindpopClose="popClose"></go-login>
|
||||||
|
|
||||||
|
<perfect-information wx:if="{{ informationState }}" bindrevampInformationState="revampInformationState"></perfect-information>
|
||||||
|
</view>
|
83
pages/setAvatarNickname/setAvatarNickname.wxss
Normal file
83
pages/setAvatarNickname/setAvatarNickname.wxss
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
/* pages/setAvatarNickname/setAvatarNickname.wxss */
|
||||||
|
.container {
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: rgb(245, 245, 245);
|
||||||
|
padding: 24rpx 22.5rpx 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box {
|
||||||
|
width: 705rpx;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-radius: 30rpx;
|
||||||
|
border: 1rpx solid #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box .item {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
height: 132rpx;
|
||||||
|
padding: 0 24rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box .item:not(:last-of-type) {
|
||||||
|
border-bottom: 1rpx solid #ebebeb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box .item .right {
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box .item .right .nickname {
|
||||||
|
text-align: right;
|
||||||
|
height: 132rpx;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box .head {
|
||||||
|
width: 72rpx;
|
||||||
|
height: 72rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-wrapper {
|
||||||
|
padding: 0;
|
||||||
|
width: 100% !important;
|
||||||
|
border-radius: 8px;
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
outline: none;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-wrapper::after {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.save {
|
||||||
|
width: 705rpx;
|
||||||
|
height: 97.5rpx;
|
||||||
|
border-radius: 60rpx;
|
||||||
|
background-color: rgba(207, 247, 255, 1);
|
||||||
|
border: 1rpx solid #badee6;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
color: #000;
|
||||||
|
font-weight: 650;
|
||||||
|
font-size: 30rpx;
|
||||||
|
margin-top: 60rpx;
|
||||||
|
|
||||||
|
font-weight: 650;
|
||||||
|
font-size: 32rpx;
|
||||||
|
color: #026277;
|
||||||
|
line-height: 45rpx;
|
||||||
|
font-family: 'PingFangSC-Semibold', 'PingFang SC Semibold', 'PingFang SC', sans-serif;
|
||||||
|
}
|
@ -8,6 +8,41 @@
|
|||||||
"condition": {
|
"condition": {
|
||||||
"miniprogram": {
|
"miniprogram": {
|
||||||
"list": [
|
"list": [
|
||||||
|
{
|
||||||
|
"name": "pages/projectSubjectList/projectSubjectList",
|
||||||
|
"pathName": "pages/projectSubjectList/projectSubjectList",
|
||||||
|
"query": "id=2",
|
||||||
|
"launchMode": "default",
|
||||||
|
"scene": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pages/projectComparison/projectComparison",
|
||||||
|
"pathName": "pages/projectComparison/projectComparison",
|
||||||
|
"query": "ids=9%2C773",
|
||||||
|
"launchMode": "default",
|
||||||
|
"scene": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pages/projectMy/projectMy",
|
||||||
|
"pathName": "pages/projectMy/projectMy",
|
||||||
|
"query": "",
|
||||||
|
"launchMode": "default",
|
||||||
|
"scene": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pages/projectSchoolHomepage/projectSchoolHomepage",
|
||||||
|
"pathName": "pages/projectSchoolHomepage/projectSchoolHomepage",
|
||||||
|
"query": "id=310",
|
||||||
|
"launchMode": "default",
|
||||||
|
"scene": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pages/projectDetails/projectDetails",
|
||||||
|
"pathName": "pages/projectDetails/projectDetails",
|
||||||
|
"query": "uniqid=jOfD40rjKzfC",
|
||||||
|
"launchMode": "default",
|
||||||
|
"scene": null
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "pages/projectList/projectList",
|
"name": "pages/projectList/projectList",
|
||||||
"pathName": "pages/projectList/projectList",
|
"pathName": "pages/projectList/projectList",
|
||||||
@ -22,13 +57,6 @@
|
|||||||
"launchMode": "default",
|
"launchMode": "default",
|
||||||
"scene": null
|
"scene": null
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "pages/projectDetails/projectDetails",
|
|
||||||
"pathName": "pages/projectDetails/projectDetails",
|
|
||||||
"query": "uniqid=rD0Sj0auDPzX",
|
|
||||||
"launchMode": "default",
|
|
||||||
"scene": null
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "pages/projectDetails/projectDetails",
|
"name": "pages/projectDetails/projectDetails",
|
||||||
"pathName": "pages/projectDetails/projectDetails",
|
"pathName": "pages/projectDetails/projectDetails",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user