From 58c62dc5353487c20401afeff4d39686921f440b Mon Sep 17 00:00:00 2001 From: A1300399510 Date: Wed, 26 Feb 2025 12:14:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E9=BD=90offer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.json | 3 +- common/common.wxml | 12 +- component/admission-box/admission-box.js | 2 - img/defaultAvatar.png | Bin 0 -> 1957 bytes pages/projectComparison/projectComparison.js | 43 ++- .../projectComparison/projectComparison.json | 2 + .../projectComparison/projectComparison.wxml | 6 +- pages/projectDetails/projectDetails.js | 91 +++---- pages/projectDetails/projectDetails.less | 250 +++--------------- pages/projectDetails/projectDetails.wxml | 153 ++++------- pages/projectDetails/projectDetails.wxss | 164 ++---------- pages/projectLibrary/projectLibrary.less | 24 +- pages/projectLibrary/projectLibrary.wxml | 7 +- pages/projectLibrary/projectLibrary.wxss | 16 +- pages/projectList/projectList.less | 1 + pages/projectList/projectList.wxss | 1 + pages/projectMy/projectMy.js | 6 +- pages/projectMy/projectMy.wxml | 4 +- .../projectSchoolHomepage.js | 5 +- .../projectSchoolHomepage.less | 1 - .../projectSchoolHomepage.wxml | 7 +- .../projectSchoolHomepage.wxss | 1 - .../projectSubjectList.less | 9 - .../projectSubjectList.wxml | 1 - pages/setAvatarNickname/setAvatarNickname.js | 173 ++++++++++++ .../setAvatarNickname/setAvatarNickname.json | 7 + .../setAvatarNickname/setAvatarNickname.wxml | 26 ++ .../setAvatarNickname/setAvatarNickname.wxss | 83 ++++++ project.private.config.json | 42 ++- 29 files changed, 565 insertions(+), 575 deletions(-) create mode 100644 img/defaultAvatar.png create mode 100644 pages/setAvatarNickname/setAvatarNickname.js create mode 100644 pages/setAvatarNickname/setAvatarNickname.json create mode 100644 pages/setAvatarNickname/setAvatarNickname.wxml create mode 100644 pages/setAvatarNickname/setAvatarNickname.wxss diff --git a/app.json b/app.json index ba4474f..b87e63d 100644 --- a/app.json +++ b/app.json @@ -9,7 +9,8 @@ "pages/projectMy/projectMy", "pages/projectDetails/projectDetails", "pages/search/search", - "pages/webview/webview" + "pages/webview/webview", + "pages/setAvatarNickname/setAvatarNickname" ], "window": { "navigationBarTextStyle": "black", diff --git a/common/common.wxml b/common/common.wxml index 622ae31..ac77df2 100644 --- a/common/common.wxml +++ b/common/common.wxml @@ -166,7 +166,7 @@ - + @@ -218,7 +218,7 @@ - + @@ -308,7 +308,7 @@ - + @@ -381,7 +381,7 @@ - + @@ -551,7 +551,7 @@ - + @@ -630,7 +630,7 @@ - + diff --git a/component/admission-box/admission-box.js b/component/admission-box/admission-box.js index 828a83e..dda797a 100644 --- a/component/admission-box/admission-box.js +++ b/component/admission-box/admission-box.js @@ -70,7 +70,6 @@ Component({ }) }) - // console.log("urls", urls); // urls[0]['date'] = "2025-01-20 15:35" urls.sort((a, b) => b.rank - a.rank) @@ -95,7 +94,6 @@ Component({ urls = urls.filter(item => item.timestamp); - console.log("urls", urls); urls.push({ mold: 4, timestamp: "", diff --git a/img/defaultAvatar.png b/img/defaultAvatar.png new file mode 100644 index 0000000000000000000000000000000000000000..9a30c1a5c344db7d9a1384aa86e1d21613831277 GIT binary patch literal 1957 zcmV;W2U_@vP)1#J{$-Z4+UD(~y{T1@tH0FYWQwfy z?y7{Vrbddc)#dDJjH_dyz2NHbZG@!${QcwOtMT^sL4>90@bY1qwfpwM+veT*@v5rZ z;()8fQIfJxk*R*U%Rzmlp3vKMp{V=)`tkMo_qf8V$=Z>})TY?rTb--;&eU_Iz`@t! zqmHITiKVLA-fo|)%--jNu*Q3*qs!H){Qmlu&Dr|<`dyQ!p~2DR@ATj4?5W-1im}Ia zp{7-pwe_N_)t9EC#MXtr(Ea}Vah|DUl&E&G$CAm{dbP;<`}p|#`}X?z_W1ZghN+*^ z+~x1{_R7wn!qx8e_Nv_Dr`qI&vB+Vgs{Z}{YnrC^`up|y`}6tvZ=k>D@brqo&{2}L zbfmwR%iI0?{q_0zUZAL|+u;8G{{H^`|Nj5}{`~&`{{H^|{{R2~{{H{}{{8Z-`1$+) z|NZ^{{i@vIPk*AU+v2F)<^KQt|Ni}>+TrKuwf_C~{{H!~kfutAtx1li&*JK++2Y>m z@u$VsNsO{(grjAJt6PktZ-%F8i>OVIv0aq7QI)67-RZi|+^@u@yw%`QhN)GMu2GG% zScRvb!p~ofu9cXv`N79`v&hus=j`F@G& zuE|xIwSTClTbj4y?em7g)1TDhkI2^h@~o4`*uvG|n9bLmztQ~u`C^T){r&u!($-*> zsb!g_aGt&W_0R3}_kohEhLy0U!`7OXuK)i0rkk?w>#z9x`O)9$kg=xp`1bVr`GUZ% z_W1i&lCf2lv6;}@n$g_<|Np7m;;o(JJOBU$J4r-ARCwBA_>UFv%E1V9z<^x?P-zQq zD+BQwrrkcZX_esb2o@qW7}nd=)mLf@wh(87+!Am9NCie4*Zah3@MgIAL&3M*_YaYN z;AK%!(0BEls^h9@NSq&dEB2mqmC%W^x#KNIoDIe8=Qe2Q#EJ3B5vAe3oLJ=4xD9pk zKuK?+Y~U5s;n&voyVF9XrIyPe#M>k1VO*6ohKZ9{#Xl8Mh2Nn3|oSy>GZwid!K z4{6^F$K&bnBO8B;l+2j<4+N&q;R#-t%^!|09{fc`W=)?yeJ)7-%sJDa&YJP`(X}PG zHMGb-a8l#xn8U*Zv}5MTypolTAFG z8|0kfu$XCq)pJeU8UmkNF*B*fWTYJEe8KK~Lo|K%8fGg!b=(@%%|B`JJWaRY&to_H zTGr+wGJ6HnYCQ(r8hC$s&YCqtB-ll==uw!djM~%LvuAknGvLmmy!J6O{>_{}cjo+g z(`PQ4|L@=IfAeDOm*Yv^l})q%p@P}M?uDKZC zh2H;D(IFi(N;-nynPi@=zEoq%Y9cDbGrgor^n5E8Kgj(rc5mPThrCES&%f!wC@V?t z0CHzMeeK@AoEKdKFH6NQ+ov-?<=wy8bEZQgZ6>g=`Pb2*W;-De!%2pLzA?dSAcb?M rcXZ5zmX))>Hp~$zl1Ef3009O7Dox`FEOIxw00000NkvXXu0mjff%%Nv literal 0 HcmV?d00001 diff --git a/pages/projectComparison/projectComparison.js b/pages/projectComparison/projectComparison.js index 0420d7b..1cad3cd 100644 --- a/pages/projectComparison/projectComparison.js +++ b/pages/projectComparison/projectComparison.js @@ -14,6 +14,8 @@ Page({ screen_data: {}, totalTopHeight: 86, islogin: false, + isloginBtnState: false, // 登录弹窗的状态 + informationState: false, // 授权后可能需要弹出完成信息框 个人背景那些 briefness: false, // 是否开启头部的简单模式 isquick: false, // 快速保存按钮显示 @@ -40,8 +42,17 @@ Page({ /** * 生命周期函数--监听页面加载 */ + options: {}, ids: [], 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(",") || []; miucms.pageStart(app).then(() => { @@ -86,7 +97,6 @@ Page({ let allArr = [] list.forEach(element => allArr.push(common.decodeKey(element))) const obj = this.data.disciplineObj - // console.log("discipline", obj); Promise.allSettled(allArr).then(res => { console.log("res", res); let list = [] @@ -256,6 +266,12 @@ Page({ // 点击保存 save() { + if (!this.data.islogin) { + this.setData({ + isloginBtnState: true + }) + return + } util.wxpost("/api/project.contrast/addQuick", { projectid: this.ids }).then(res => { @@ -276,6 +292,31 @@ Page({ 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 + }) + }, /** * 生命周期函数--监听页面初次渲染完成 diff --git a/pages/projectComparison/projectComparison.json b/pages/projectComparison/projectComparison.json index 16c851d..204b5f5 100644 --- a/pages/projectComparison/projectComparison.json +++ b/pages/projectComparison/projectComparison.json @@ -1,5 +1,7 @@ { "usingComponents": { + "go-login": "/component/goLogin/goLogin", + "perfect-information": "/component/perfectInformation/perfectInformation", "header-nav": "/component/headerNav/headerNav", "index-sidebar": "/component/indexSidebar/indexSidebar" } diff --git a/pages/projectComparison/projectComparison.wxml b/pages/projectComparison/projectComparison.wxml index 5054fe1..56d0370 100644 --- a/pages/projectComparison/projectComparison.wxml +++ b/pages/projectComparison/projectComparison.wxml @@ -1,6 +1,10 @@ 项目对比 + + + + @@ -40,7 +44,7 @@ 学校排名 - + diff --git a/pages/projectDetails/projectDetails.js b/pages/projectDetails/projectDetails.js index cb803df..b82aab4 100644 --- a/pages/projectDetails/projectDetails.js +++ b/pages/projectDetails/projectDetails.js @@ -90,6 +90,7 @@ Page({ rpx30: 30, user: {}, offerList: [], + offerPage: 1, sideNum: {}, answerType: 0, // 招生管显示类型 0不显示 1长期答疑 2即将开始 countDown: { @@ -148,25 +149,17 @@ Page({ const data = res.data let admissionofficerin = data.admissionofficerin || [] - // console.log("data", data); - // admissionofficerin[0]['date'] = "2025-01-21 19:00" - if (admissionofficerin.length > 0) { admissionofficerin.forEach(element => { const date = new Date(element.date); - // let answerType = 1 if (!isNaN(date.getTime())) { if (Date.now() < date.getTime()) { this.startCountdown(date.getTime() - Date.now() || 0) - // answerType = 2 this.setData({ answerType: 2, }) } } - // this.setData({ - // answerType, - // }) }) } @@ -184,7 +177,7 @@ Page({ const info = data.info || {} - const fields = ['tuition_fee', ]; + const fields = ['tuition_fee']; fields.forEach(field => { const textKey = `${field}_text`; info[textKey] = common.formatNumberWithSpaces(info[field] || ''); @@ -241,40 +234,9 @@ Page({ if ((year < semester.year) || (year === semester.year && month < semester.month)) info['semesterState'] = true let scores = info.language_proficiency_scores || [] - const 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: "听力", - } + info["scoresList"] = common.scoresList(scores) - let scores = [element.reading, element.speaking, element.writing, element.listening] - - 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 + // info["scoresList"] = scoresList this.getOfferData(info.id) @@ -342,11 +304,8 @@ Page({ // 计算出外地申请截止时间 calculateApplicaDeadline(obj) { - // 初始化变量来存储最大时间点的属性和日期 let maxDate = null; - // 遍历对象的属性 for (const item in obj) { - // 如果当前日期是最大日期或是第一个日期,则更新最大日期和属性 if (maxDate === null || obj[item] > maxDate) maxDate = obj[item]; } return maxDate @@ -401,26 +360,38 @@ Page({ sideHeight: {}, getHeadHeight() { 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 + const headBox = rect[0][0] || {} + const side = rect[1] let sideHeight = {} - rect.forEach(element => { + let height = headBox.height - this.data.rpx30 + side.forEach(element => { const type = element.dataset.type - sideHeight[type] = element.top + sideHeight[type] = height + height += element.height || 0 }) this.sideHeight = sideHeight - }).exec(); + }) }, onPageScroll(e) { - // if (Math.random() > 0.5) return - const scrollTop = e.scrollTop const sideHeight = this.sideHeight const sideHeightList = Object.keys(sideHeight) || [] 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' if (sideKey != this.data.sideKey) { @@ -514,8 +485,10 @@ Page({ handSide(e) { const sideKey = e.currentTarget.dataset.key const sideHeight = this.sideHeight + let value = sideHeight[sideKey] - this.data.totalTopHeight || 0 + if (this.data.offerPage && ["issue", "links"].includes(sideKey)) value = 10000000 wx.pageScrollTo({ - scrollTop: sideHeight[sideKey] - this.data.totalTopHeight || 0, + scrollTop: value, }) }, @@ -601,7 +574,8 @@ Page({ }, 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 list = data.list || [] let side = this.data.side @@ -614,9 +588,14 @@ Page({ let sideNum = this.data.sideNum sideNum['consult'] = data.count this.setData({ - offerList: list, + offerList: this.data.offerList.concat(list), side, sideNum, + offerPage: data.count > data.limit * data.page ? this.data.offerPage + 1 : 0, + }, () => { + setTimeout(() => { + this.getHeadHeight() + }, 500) }) }) }, @@ -670,7 +649,7 @@ Page({ * 页面上拉触底事件的处理函数 */ onReachBottom() { - + if (this.data.offerPage != 0) this.getOfferData() }, /** * 页面相关事件处理函数--监听用户下拉动作 diff --git a/pages/projectDetails/projectDetails.less b/pages/projectDetails/projectDetails.less index eb60efc..68a363f 100644 --- a/pages/projectDetails/projectDetails.less +++ b/pages/projectDetails/projectDetails.less @@ -200,8 +200,9 @@ navigator { } .borderTop { - border-top: 1rpx dotted #d9d9d9; - margin-left: 36rpx; + border-top: 1rpx solid #ebebeb; + // margin-left: 36rpx; + width: calc(100% + 15rpx); } .item-header { @@ -503,72 +504,33 @@ navigator { position: relative; min-height: 160rpx; - .left { - display: flex; - // flex-direction: column; - justify-content: center; - align-items: center; - - .unit { - padding: 0 10.5rpx; - width: fit-content; - height: 30rpx; - line-height: 30rpx; - background-color: rgba(249, 93, 93, 1); - border-radius: 22.5rpx; - font-family: 'PingFangSC-Regular', 'PingFang SC', sans-serif; - 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; - } + .unit { + padding: 0 10.5rpx; + width: fit-content; + height: 30rpx; + line-height: 30rpx; + background-color: rgba(249, 93, 93, 1); + border-radius: 22.5rpx; + font-family: 'PingFangSC-Regular', 'PingFang SC', sans-serif; + font-weight: 400; + font-size: 21rpx; + color: #FFFFFF; + position: absolute; + top: 15rpx; + left: 15rpx; } - .right { - width: 300rpx; - background-color: rgba(246, 246, 246, 1); - border-radius: 9rpx; - padding: 24rpx 15rpx; - min-height: 130rpx; - display: flex; - justify-content: center; - flex-direction: column; + .number { + font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif; + font-weight: 900; + font-size: 30rpx; + color: #000000; + } - .item { - font-size: 24rpx; - justify-content: space-between; - - &: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; - } - } + .text { + font-size: 24rpx; + color: #555555; + margin-right: 20rpx; } } @@ -863,7 +825,7 @@ navigator { text-align: center; font-size: 24rpx; padding: 0 10rpx; - + &:not(:last-of-type) { 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 { .item { .icon { @@ -1938,19 +1765,18 @@ navigator { } .left { - // width: 453rpx; height: 120rpx; - // background: inherit; - // background-color: rgba(255, 255, 255, 0.898039215686275); background-color: rgba(253, 250, 247, 1); box-sizing: border-box; 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; color: #000000; line-height: 36rpx; padding: 10.5rpx 15rpx; + + .left-text { display: -webkit-box; -webkit-box-orient: vertical; @@ -1989,7 +1815,9 @@ navigator { height: 100%; justify-content: center; padding-right: 22rpx; - border-radius: 0 4.5rpx 4.5rpx 0; + border-radius: 0 6rpx 6rpx 0; + position: relative; + z-index: 1; .text { width: 145.5rpx; @@ -2036,10 +1864,18 @@ navigator { color: #FFFFFF; } } + + .aperture { + position: absolute; + left: 0; + bottom: 0; + width: 223.5rpx; + height: 120rpx; + z-index: -1; + } } } - .quick-answer { width: 564rpx; height: 190.5rpx; diff --git a/pages/projectDetails/projectDetails.wxml b/pages/projectDetails/projectDetails.wxml index 397dd5d..06dc1df 100644 --- a/pages/projectDetails/projectDetails.wxml +++ b/pages/projectDetails/projectDetails.wxml @@ -47,6 +47,7 @@ + @@ -75,7 +76,7 @@ - + @@ -114,12 +115,10 @@ - - - {{ info.tuition_currency || 'HK$' }} - 总学费 - {{ info.tuition_fee_text || '待确认' }} - + + {{ info.tuition_currency || 'HK$' }} + 总学费 + {{ info.tuition_fee_text || '待确认' }} @@ -150,15 +149,7 @@ - 英语能力要求 - 满足以下其中一项即可 - - - - {{ item.name }} - {{ item.text }} - - + @@ -241,19 +232,7 @@ {{ info.entrance_requirements || '-' }} - - 英语能力要求 - 满足以下其中一项即可 - - - - - {{ item.name }} - {{ item.text }} - - - - + @@ -265,12 +244,10 @@ - - - {{ info.tuition_currency || 'HK$' }} - 总学费 - {{ info.tuition_fee_text || '待确认' }} - + + {{ info.tuition_currency || 'HK$' }} + 总学费 + {{ info.tuition_fee_text || '待确认' }} @@ -343,46 +320,9 @@ - - - 必修课程 - (共 {{ course.requiredCount }} 学分) - - 课程编号 - 课程名称 - 学分 - - - - {{ item.course_code || '-' }} - - {{ item.course_name_zh }} - {{ item.course_name_en }} - - {{ item.credit || '-' }} - - - + - - - 选修课程 - - 课程编号 - 课程名称 - 学分 - - - - {{ item.course_code || '-' }} - - {{ item.course_name_zh }} - {{ item.course_name_en }} - - {{ item.credit || '-' }} - - - + 申请页项目详情 @@ -427,7 +367,6 @@ - @@ -469,7 +408,7 @@ - + {{ item.schoolname }} @@ -509,7 +448,7 @@ - + @@ -536,7 +475,7 @@ - + {{ item.num }} @@ -547,7 +486,7 @@ - + 官方宣传册 @@ -598,8 +537,8 @@ - - + + {{ contras.status == 1 ? '已' : '' }}加入对比单 @@ -659,19 +598,6 @@ - - - - - - {{ remarkInput.length }}/100 - - - - - - - @@ -695,6 +621,41 @@ + + + + diff --git a/pages/projectDetails/projectDetails.wxss b/pages/projectDetails/projectDetails.wxss index 1b68062..b089e72 100644 --- a/pages/projectDetails/projectDetails.wxss +++ b/pages/projectDetails/projectDetails.wxss @@ -164,8 +164,8 @@ navigator { border-bottom: 1rpx solid #d9d9d9; } .details-box .borderTop { - border-top: 1rpx dotted #d9d9d9; - margin-left: 36rpx; + border-top: 1rpx solid #ebebeb; + width: calc(100% + 15rpx); } .details-box .item-header { margin-left: 36rpx; @@ -415,12 +415,7 @@ navigator { position: relative; min-height: 160rpx; } -.details-box .tuition .left { - display: flex; - justify-content: center; - align-items: center; -} -.details-box .tuition .left .unit { +.details-box .tuition .unit { padding: 0 10.5rpx; width: fit-content; height: 30rpx; @@ -435,43 +430,17 @@ navigator { top: 15rpx; left: 15rpx; } -.details-box .tuition .left .number { +.details-box .tuition .number { font-family: 'Arial', 'Arial-Black', 'Arial Black', sans-serif; font-weight: 900; font-size: 30rpx; color: #000000; } -.details-box .tuition .left .text { +.details-box .tuition .text { font-size: 24rpx; color: #555555; 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 { justify-content: space-between; margin-left: 36rpx; @@ -1171,115 +1140,6 @@ navigator { height: 24rpx; 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 { background-color: #cff7ff; border: 1rpx solid #badee6; @@ -1605,7 +1465,7 @@ navigator { background-color: #fdfaf7; box-sizing: border-box; border: 1.5rpx solid #f2f2f2; - border-radius: 4.5rpx 0 0 4.5rpx; + border-radius: 6rpx 0 0 6rpx; font-size: 25.5rpx; color: #000000; line-height: 36rpx; @@ -1644,7 +1504,9 @@ navigator { height: 100%; justify-content: center; 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 { width: 145.5rpx; @@ -1685,6 +1547,14 @@ navigator { font-size: 19.5rpx; color: #FFFFFF; } +.about-start .right .aperture { + position: absolute; + left: 0; + bottom: 0; + width: 223.5rpx; + height: 120rpx; + z-index: -1; +} .quick-answer { width: 564rpx; height: 190.5rpx; diff --git a/pages/projectLibrary/projectLibrary.less b/pages/projectLibrary/projectLibrary.less index 2c64ac6..d72e280 100644 --- a/pages/projectLibrary/projectLibrary.less +++ b/pages/projectLibrary/projectLibrary.less @@ -270,6 +270,7 @@ view { border-radius: 34.5rpx 0 34.5rpx 0; padding: 16rpx 16rpx 37.5rpx; } + &::after { content: ""; width: calc(100% - 10rpx); @@ -280,7 +281,7 @@ view { top: -8rpx; left: 0; z-index: -1; - border-radius: 34.5rpx 0 34.5rpx 0; + border-radius: 40rpx 0 34.5rpx 0; } &:not(:first-of-type) { @@ -354,8 +355,7 @@ view { } .text { - width: 313.5rpx; - + width: 340rpx; } } } @@ -364,10 +364,8 @@ view { width: 132rpx; height: 60rpx; font-weight: 650; - - background-color: #f95d5d; + background-color: rgb(249, 93, 93); border-radius: 172.5rpx; - font-size: 24rpx; color: #FFFFFF; } @@ -545,6 +543,13 @@ view { align-items: flex-start; margin: 0 22.5rpx 80rpx; + .img { + width: 345rpx; + border-radius: 18rpx; + margin-bottom: 15rpx; + display: block; + } + .waterfall-left { .more { margin: 0 auto 30rpx; @@ -708,13 +713,6 @@ view { margin-bottom: 50rpx; } -.img { - width: 345rpx; - border-radius: 18rpx; - margin-bottom: 15rpx; - display: block; -} - .more { width: 42rpx; height: 42rpx; diff --git a/pages/projectLibrary/projectLibrary.wxml b/pages/projectLibrary/projectLibrary.wxml index 8ae310d..db65062 100644 --- a/pages/projectLibrary/projectLibrary.wxml +++ b/pages/projectLibrary/projectLibrary.wxml @@ -3,7 +3,7 @@ 港校项目库 - + @@ -82,7 +82,6 @@ - {{ item.name }} @@ -90,7 +89,7 @@ {{ item.schoolalias }} - + {{ item.name_zh }} @@ -110,7 +109,7 @@ - + diff --git a/pages/projectLibrary/projectLibrary.wxss b/pages/projectLibrary/projectLibrary.wxss index 75c08da..ccfeba5 100644 --- a/pages/projectLibrary/projectLibrary.wxss +++ b/pages/projectLibrary/projectLibrary.wxss @@ -240,7 +240,7 @@ view { top: -8rpx; left: 0; 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) { margin-top: 30rpx; @@ -300,7 +300,7 @@ view { margin: 0 13.5rpx; } .fate .fate-box .fate-item .content .project-list .project-item .text { - width: 313.5rpx; + width: 340rpx; } .fate .fate-box .fate-item .content .btn { width: 132rpx; @@ -446,6 +446,12 @@ view { align-items: flex-start; margin: 0 22.5rpx 80rpx; } +.waterfall .img { + width: 345rpx; + border-radius: 18rpx; + margin-bottom: 15rpx; + display: block; +} .waterfall .waterfall-left .more { margin: 0 auto 30rpx; } @@ -574,12 +580,6 @@ view { width: 100%; margin-bottom: 50rpx; } -.img { - width: 345rpx; - border-radius: 18rpx; - margin-bottom: 15rpx; - display: block; -} .more { width: 42rpx; height: 42rpx; diff --git a/pages/projectList/projectList.less b/pages/projectList/projectList.less index 2e5c2a5..9d4c535 100644 --- a/pages/projectList/projectList.less +++ b/pages/projectList/projectList.less @@ -204,6 +204,7 @@ view { .text { font-size: 21rpx; color: #AAAAAA; + margin-left: 5rpx; } } } diff --git a/pages/projectList/projectList.wxss b/pages/projectList/projectList.wxss index 76b3d67..a11605a 100644 --- a/pages/projectList/projectList.wxss +++ b/pages/projectList/projectList.wxss @@ -173,6 +173,7 @@ view { .chunk .list .item .head .mark .text { font-size: 21rpx; color: #AAAAAA; + margin-left: 5rpx; } .chunk .list .item .english { font-size: 21rpx; diff --git a/pages/projectMy/projectMy.js b/pages/projectMy/projectMy.js index edc0dd4..265b546 100644 --- a/pages/projectMy/projectMy.js +++ b/pages/projectMy/projectMy.js @@ -13,7 +13,6 @@ Page({ islogin: false, isloginBtnState: false, - isFirstPattern: true, classify: "vs", // vs manage '' 代表都没有数据 move: 0, manageHintState: false, // 底部的提示的显示状态 @@ -513,7 +512,6 @@ Page({ focusfocus(e) { const index = e.currentTarget.dataset.index let list = this.data.list - console.log("list", list[index]); this.remarks = list[index]['remarks'] }, @@ -539,9 +537,7 @@ Page({ util.wxpost("/api/project.user/remarks", { token, remarks, - }).then(res => { - common.toast(res.message) - }) + }).then(res => common.toast(res.message)) }, // 备注输入 diff --git a/pages/projectMy/projectMy.wxml b/pages/projectMy/projectMy.wxml index eee436d..41c55f1 100644 --- a/pages/projectMy/projectMy.wxml +++ b/pages/projectMy/projectMy.wxml @@ -1,6 +1,6 @@ - 我的项目 + 我的项目 @@ -162,7 +162,7 @@ - + {{ item.remarks }} diff --git a/pages/projectSchoolHomepage/projectSchoolHomepage.js b/pages/projectSchoolHomepage/projectSchoolHomepage.js index 657bceb..cb936ad 100644 --- a/pages/projectSchoolHomepage/projectSchoolHomepage.js +++ b/pages/projectSchoolHomepage/projectSchoolHomepage.js @@ -89,6 +89,7 @@ Page({ this.getinit() this.getProjectData() + }) }, @@ -204,9 +205,7 @@ Page({ const disciplineid = screen['disciplineid'] const university = screen['university'] let listAll = this.listAll - screen['pitch'] = screen.key - let screenList = this.screenList let list = [] @@ -214,6 +213,7 @@ Page({ else if (university) screenList = listAll.filter(item => item.department === university); else screenList = this.listAll + if (sort == 0) { screenList.sort((a, b) => { // a 排在后面 @@ -335,7 +335,6 @@ Page({ y: data.top + data.height / 2 - this.rpx15, } }) - }); } diff --git a/pages/projectSchoolHomepage/projectSchoolHomepage.less b/pages/projectSchoolHomepage/projectSchoolHomepage.less index a81a2d2..45dfd5d 100644 --- a/pages/projectSchoolHomepage/projectSchoolHomepage.less +++ b/pages/projectSchoolHomepage/projectSchoolHomepage.less @@ -222,7 +222,6 @@ view { .line { width: 526rpx; - height: 285rpx; margin-right: 15rpx; display: inline-block; overflow: hidden; diff --git a/pages/projectSchoolHomepage/projectSchoolHomepage.wxml b/pages/projectSchoolHomepage/projectSchoolHomepage.wxml index 5efab06..47697d3 100644 --- a/pages/projectSchoolHomepage/projectSchoolHomepage.wxml +++ b/pages/projectSchoolHomepage/projectSchoolHomepage.wxml @@ -9,7 +9,7 @@ {{ info.name }} {{ info.enname }} - + @@ -44,7 +44,7 @@ - + {{ item.name_zh }} {{ item.name_en }} @@ -102,7 +102,6 @@ 共 {{ count }} 个项目 - {{ item.name_zh }} @@ -125,7 +124,7 @@ - + diff --git a/pages/projectSchoolHomepage/projectSchoolHomepage.wxss b/pages/projectSchoolHomepage/projectSchoolHomepage.wxss index ad2acbe..ced387e 100644 --- a/pages/projectSchoolHomepage/projectSchoolHomepage.wxss +++ b/pages/projectSchoolHomepage/projectSchoolHomepage.wxss @@ -189,7 +189,6 @@ view { } .hot .hot-box .line { width: 526rpx; - height: 285rpx; margin-right: 15rpx; display: inline-block; overflow: hidden; diff --git a/pages/projectSubjectList/projectSubjectList.less b/pages/projectSubjectList/projectSubjectList.less index c13ebad..c54dd04 100644 --- a/pages/projectSubjectList/projectSubjectList.less +++ b/pages/projectSubjectList/projectSubjectList.less @@ -142,15 +142,6 @@ scroll-view { padding-right: 22.5rpx; position: relative; - // .angle { - // position: absolute; - // top: 0; - // right: 0; - // width: 60rpx; - // height: 60rpx; - // transform: rotate(-90deg); - // } - .name { font-family: 'PingFangSC-Semibold', 'PingFang SC Semibold', 'PingFang SC', sans-serif; font-weight: 650; diff --git a/pages/projectSubjectList/projectSubjectList.wxml b/pages/projectSubjectList/projectSubjectList.wxml index 747a0ab..3ac146f 100644 --- a/pages/projectSubjectList/projectSubjectList.wxml +++ b/pages/projectSubjectList/projectSubjectList.wxml @@ -37,7 +37,6 @@ - diff --git a/pages/setAvatarNickname/setAvatarNickname.js b/pages/setAvatarNickname/setAvatarNickname.js new file mode 100644 index 0000000..3f94cd8 --- /dev/null +++ b/pages/setAvatarNickname/setAvatarNickname.js @@ -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 () {}, +}) \ No newline at end of file diff --git a/pages/setAvatarNickname/setAvatarNickname.json b/pages/setAvatarNickname/setAvatarNickname.json new file mode 100644 index 0000000..5faf801 --- /dev/null +++ b/pages/setAvatarNickname/setAvatarNickname.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "header-nav": "/component/headerNav/headerNav", + "go-login": "/component/goLogin/goLogin", + "perfect-information": "/component/perfectInformation/perfectInformation" + } +} \ No newline at end of file diff --git a/pages/setAvatarNickname/setAvatarNickname.wxml b/pages/setAvatarNickname/setAvatarNickname.wxml new file mode 100644 index 0000000..a15a9ba --- /dev/null +++ b/pages/setAvatarNickname/setAvatarNickname.wxml @@ -0,0 +1,26 @@ + + + 设置头像昵称 + + + 头像 + + + + + + 昵称 + + + + + + + 保存 + + + + + \ No newline at end of file diff --git a/pages/setAvatarNickname/setAvatarNickname.wxss b/pages/setAvatarNickname/setAvatarNickname.wxss new file mode 100644 index 0000000..35ce1ff --- /dev/null +++ b/pages/setAvatarNickname/setAvatarNickname.wxss @@ -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; +} \ No newline at end of file diff --git a/project.private.config.json b/project.private.config.json index fb85605..41a2864 100644 --- a/project.private.config.json +++ b/project.private.config.json @@ -8,6 +8,41 @@ "condition": { "miniprogram": { "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", "pathName": "pages/projectList/projectList", @@ -22,13 +57,6 @@ "launchMode": "default", "scene": null }, - { - "name": "pages/projectDetails/projectDetails", - "pathName": "pages/projectDetails/projectDetails", - "query": "uniqid=rD0Sj0auDPzX", - "launchMode": "default", - "scene": null - }, { "name": "pages/projectDetails/projectDetails", "pathName": "pages/projectDetails/projectDetails",