提交 cf851fde 作者: wk

权限项配置处理

父级 d6099fbb
...@@ -9,7 +9,30 @@ ...@@ -9,7 +9,30 @@
console.log('App Launch') console.log('App Launch')
}, },
onShow: function() { onShow: function() {
console.log('App Show') const updateManager = uni.getUpdateManager(); // 获取更新管理器对象
updateManager.onCheckForUpdate(function(res) {
if (res.hasUpdate) {
updateManager.onUpdateReady(function() {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,点击确定重新启动',
showCancel: false,
success: res => {
if (res.confirm) {
updateManager.applyUpdate();
}
}
})
})
updateManager.onUpdateFailed(function() {
uni.showModal({
title: '提示',
content: '检查到有新版本,但是下载失败,请检查网络设置',
showCancel: false
})
})
}
})
}, },
onHide: function() { onHide: function() {
console.log('App Hide') console.log('App Hide')
...@@ -120,4 +143,22 @@ ...@@ -120,4 +143,22 @@
left: 0; left: 0;
bottom: 0; bottom: 0;
} }
.search-form-parent {
display: flex;
flex-direction: row;
align-items: center;
padding: 20rpx 32rpx;
background-color: #1890FF;
}
.search-form {
display: flex;
flex-direction: row;
padding: 20rpx 32rpx;
flex: 1;
align-items: center;
background-color: #FFFFFF;
border-radius: 10rpx;
}
</style> </style>
...@@ -2,6 +2,7 @@ const $toast = { ...@@ -2,6 +2,7 @@ const $toast = {
showToast: function(msg) { showToast: function(msg) {
uni.showToast({ uni.showToast({
title: msg, title: msg,
duration: 2000,
icon: 'none' icon: 'none'
}) })
} }
......
...@@ -132,7 +132,7 @@ ...@@ -132,7 +132,7 @@
.wrap { .wrap {
position: relative; position: relative;
border-radius: 30rpx; border-radius: 30rpx;
margin: 140rpx 30rpx 0 30rpx; margin: -60rpx 30rpx 0 30rpx;
background-color: #3B73FE; background-color: #3B73FE;
.swiper { .swiper {
......
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
<style lang="scss"> <style lang="scss">
.navbar-home { .navbar-home {
.navbar-content { .navbar-content {
position: fixed; position: relative;
top: 0; top: 0;
left: 0; left: 0;
margin-bottom: 16px; margin-bottom: 16px;
......
...@@ -8,13 +8,17 @@ ...@@ -8,13 +8,17 @@
<v-tabs :tabs="tabs" :scroll="true" :value="current" @change="tabChange"></v-tabs> <v-tabs :tabs="tabs" :scroll="true" :value="current" @change="tabChange"></v-tabs>
<view class="list-content"> <view class="list-content">
<view v-for="(item,index) in list" :key="index" class="list-item" @click="itemClick(item)"> <view v-for="(item,index) in list" :key="index" class="list-item" @click="itemClick(item)">
<image class="image" src="../../../static/ic-jrdb.png"></image> <image class="item-image"
:src="item.node_type!='999'? '../../../static/ic-wcldb.png':'../../../static/ic-ycldb.png'"></image>
<view class="item-content"> <view class="item-content">
<view class="title">{{item.created_by_name}}发起了{{item.app_name}},请于{{item.expect_end_date}}前完成。 <view class="title" v-if="item.node_type!='999'">
{{item.created_by_name}}发起了{{item.app_name}},请于{{item.expect_end_date}}前完成。
</view>
<view class="title" v-if="item.node_type=='999'">{{item.created_by_name}}发起了{{item.app_name}},已处理完成。
</view> </view>
<view class="time-content"> <view class="time-content">
<view class="create-time">{{item.end_opt_time}}</view> <view class="create-time">{{item.end_opt_time}}</view>
<view class="leave-time" v-if="item.node_type!='999'">处理倒计时:{{timeSpace(item.end_opt_time)}} <view class="leave-time" v-if="item.node_type!='999'">处理倒计时:{{timeSpace(item.expect_end_date)}}
</view> </view>
</view> </view>
<view class="line" style="margin: 30rpx 0;"></view> <view class="line" style="margin: 30rpx 0;"></view>
...@@ -55,7 +59,7 @@ ...@@ -55,7 +59,7 @@
}, },
methods: { methods: {
timeSpace(endTime) { timeSpace(endTime) {
return this.$date.timeDiff(endTime, true) return this.$date.timeDiff(endTime, false)
}, },
getData() { getData() {
this.getAllCount() this.getAllCount()
...@@ -171,13 +175,14 @@ ...@@ -171,13 +175,14 @@
padding: 30rpx 30rpx 0 30rpx; padding: 30rpx 30rpx 0 30rpx;
flex-direction: row; flex-direction: row;
image { .item-image {
width: 28rpx; width: 14px;
height: 28rpx; height: 14px;
} }
.item-content { .item-content {
display: flex; display: flex;
width: 590rpx;
flex-direction: column; flex-direction: column;
margin-left: 10rpx; margin-left: 10rpx;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<view v-for="(item,index) in list" :key="index" class="list-item" @click="itemClick(item)"> <view v-for="(item,index) in list" :key="index" class="list-item" @click="itemClick(item)">
<image class="image" src="../../../static/ic-jrdb.png"></image> <image class="image" src="../../../static/ic-jrdb.png"></image>
<view class="item-content"> <view class="item-content">
<view class="title">{{item.created_by_name}}发起了{{item.app_name}}请于{{item.expect_end_date}}完成。 <view class="title">{{item.created_by_name}}发起了{{item.app_name}}已处理完成。
</view> </view>
<view class="time-content"> <view class="time-content">
<view class="create-time">{{item.end_opt_time}}</view> <view class="create-time">{{item.end_opt_time}}</view>
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
</view> </view>
</view> </view>
</view> </view>
<view class="popularity-content" :style="{'margin-top':statusBarHeight+116+'px'}"> <view class="popularity-content" :style="{'margin-top':statusBarHeight+15+'px'}">
<image src="../../static/ic-sjzg.png" class="image" @click="linkToData"></image> <image src="../../static/ic-sjzg.png" class="image" @click="linkToData"></image>
<text class="text" @click="linkToData">数据智管</text> <text class="text" @click="linkToData">数据智管</text>
<image src="../../static/ic-rqyy.png" class="rq-image"></image> <image src="../../static/ic-rqyy.png" class="rq-image"></image>
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
requestParam: { requestParam: {
page: 1, page: 1,
per_page: 500, per_page: 500,
authed: 0, authed: 1,
showed: 1, showed: 1,
app_endpoint: 2, app_endpoint: 2,
is_publish: 1, is_publish: 1,
...@@ -173,8 +173,7 @@ ...@@ -173,8 +173,7 @@
uni.navigateTo({ uni.navigateTo({
url: `/pages/gallery/app/originalIndex/originalIndex?check_tpl_id=${model.source_id}&title=${result.data.tpl_name}` url: `/pages/gallery/app/originalIndex/originalIndex?check_tpl_id=${model.source_id}&title=${result.data.tpl_name}`
}) })
} else if (result.data.business_type == } else if (result.data.business_type == 2) { //独立模式 需要获取模块数量 如果只有一个模块 自动跳转表单页面 "体验嘛 呵呵"
2) { //独立模式 需要获取模块数量 如果只有一个模块 自动跳转表单页面 "体验嘛 呵呵"
this.toAlone(model, result.data) this.toAlone(model, result.data)
} else if (result.data.business_type == 3 || result.data.business_type == 4) { //流程模式 } else if (result.data.business_type == 3 || result.data.business_type == 4) { //流程模式
this.models = result.data.tpl_config this.models = result.data.tpl_config
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<view style="display: flex;flex-direction: column;padding: 32rpx;"> <view style="display: flex;flex-direction: column;padding: 32rpx;">
<view class="executor-text">发起时间:{{forms[0].created_at}}</view> <view class="executor-text">发起时间:{{forms[0].created_at}}</view>
<view class="executor-text">发起人:{{forms[0].created_by_name}}</view> <view class="executor-text">发起人:{{forms[0].created_by_name}}</view>
<view class="executor-text">目前状态:{{status}}</view> <view class="executor-text">目前状态:{{forms[forms.length-1].check_item_name}}</view>
<view class="executor-text"> <view class="executor-text">
目前执行人:{{forms[forms.length-1].executorStr}} 目前执行人:{{forms[forms.length-1].executorStr}}
</view> </view>
...@@ -152,8 +152,8 @@ ...@@ -152,8 +152,8 @@
v-if="item.control_type==20&&item.real_value&&item.real_value.length>0"> v-if="item.control_type==20&&item.real_value&&item.real_value.length>0">
<view class="normal-text-grey">{{item.content_name}}</view> <view class="normal-text-grey">{{item.content_name}}</view>
<view v-for="(value,i) in item.real_value" :key="i" class="detail-text"> <view v-for="(value,i) in item.real_value" :key="i" class="detail-text">
<text class="text-black-normal">{{value.value}}</text> <text class="text-black-normal">{{value.value}} </text>
<text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> <!-- <text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> -->
</view> </view>
<view class="margin-top-line"></view> <view class="margin-top-line"></view>
</view> </view>
...@@ -162,8 +162,8 @@ ...@@ -162,8 +162,8 @@
<view class="normal-text-grey">{{item.content_name}}</view> <view class="normal-text-grey">{{item.content_name}}</view>
<view style="display: flex;flex-direction: row;"> <view style="display: flex;flex-direction: row;">
<view v-for="(value,i) in item.real_value" :key="i" class="detail-text"> <view v-for="(value,i) in item.real_value" :key="i" class="detail-text">
<text class="text-black-normal">{{value.value}}</text> <text class="text-black-normal">{{value.value}} </text>
<text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> <!-- <text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> -->
</view> </view>
</view> </view>
<view class="margin-top-line"></view> <view class="margin-top-line"></view>
...@@ -232,7 +232,8 @@ ...@@ -232,7 +232,8 @@
<view class="normal-text-grey">{{item.content_name}}</view> <view class="normal-text-grey">{{item.content_name}}</view>
<view style="display: flex;flex-direction: row;align-items: center;padding: 20rpx 0 0 0rpx;"> <view style="display: flex;flex-direction: row;align-items: center;padding: 20rpx 0 0 0rpx;">
<view class="text-black-normal" style="flex: 1;">实得分数</view> <view class="text-black-normal" style="flex: 1;">实得分数</view>
<view class="text-grey-black-normal">{{item.real_value[0].real_value}}</view> <view class="text-grey-black-normal">{{item.real_value?item.real_value[0].real_value:""}}
</view>
</view> </view>
<view class="margin-top-line"></view> <view class="margin-top-line"></view>
</view> </view>
...@@ -244,8 +245,8 @@ ...@@ -244,8 +245,8 @@
<view style="display: flex;flex-direction: row;flex-wrap: wrap;"> <view style="display: flex;flex-direction: row;flex-wrap: wrap;">
<view v-for="(value,i) in item.real_value" :key="i" <view v-for="(value,i) in item.real_value" :key="i"
style="display: flex;flex-direction: row;"> style="display: flex;flex-direction: row;">
<text class="text-black-normal">{{value.user_name}}</text> <text class="text-black-normal">{{value.user_name}} </text>
<text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> <!-- <text class="text-black-normal" v-if="!(i==item.real_value.length-1)">,</text> -->
</view> </view>
</view> </view>
<view class="margin-top-line"></view> <view class="margin-top-line"></view>
...@@ -686,6 +687,7 @@ ...@@ -686,6 +687,7 @@
toSave: function() { toSave: function() {
this.form.is_tmp = 1 this.form.is_tmp = 1
this.form.check_module_id = this.form.cur_check_module_id this.form.check_module_id = this.form.cur_check_module_id
this.form.check_tpl_id = this.check_tpl_id
if (!this.form._id || this.form._id == '') { if (!this.form._id || this.form._id == '') {
this.form.check_record_id = this.check_record_id this.form.check_record_id = this.check_record_id
} else { } else {
......
...@@ -23,8 +23,8 @@ ...@@ -23,8 +23,8 @@
</view> </view>
<v-tabs :tabs="tabs" :scroll="true" :value="current" @change="tabChange"></v-tabs> <v-tabs :tabs="tabs" :scroll="true" :value="current" @change="tabChange"></v-tabs>
<view class="app-list-content"> <view class="app-list-content">
<view class="app-content" v-for="(item,index) in apps[current].list"> <view class="app-content" v-for="(item,index) in getMenuApps()" :key="index">
<view class="title">便捷服务</view> <view class="title">{{item.group_name||"其他"}}</view>
<view class="app-list"> <view class="app-list">
<view class="menu-item" v-for="(app,appIndex) in item.data" :key="appIndex"> <view class="menu-item" v-for="(app,appIndex) in item.data" :key="appIndex">
<view class="logo-content"> <view class="logo-content">
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
list: [] list: []
}], }],
current: 0, current: 0,
tabs: ["生活服务", "综合办公", "岗位工作"], tabs: ["岗位工作", "综合办公", "生活服务"],
requestParam: { requestParam: {
page: 1, page: 1,
per_page: 500, per_page: 500,
...@@ -78,6 +78,13 @@ ...@@ -78,6 +78,13 @@
this.getDefaultApp() this.getDefaultApp()
}, },
methods: { methods: {
getMenuApps() {
var menuApps = this.apps.find(item => item.app_menu == this.current + 1)
if (menuApps) {
return menuApps.list
}
return []
},
tabChange(e) { tabChange(e) {
this.current = e this.current = e
}, },
......
...@@ -361,7 +361,7 @@ ...@@ -361,7 +361,7 @@
Api.getNews({ Api.getNews({
data: { data: {
pageNum: 1, pageNum: 1,
pageSize: 20, pageSize: 5,
clientId: 1, clientId: 1,
projectId: this.project_id, projectId: this.project_id,
} }
...@@ -521,8 +521,12 @@ ...@@ -521,8 +521,12 @@
let show = false let show = false
var com = this.pageTemplateComponent.find(item => item.com_no == comNo) var com = this.pageTemplateComponent.find(item => item.com_no == comNo)
if (com) { if (com) {
if (objNo == "ydt-tq" || objNo == "ydt-cyyy" || objNo == "ydt-lbt") {
show = true
} else {
show = this.isHasAuth(objNo) show = this.isHasAuth(objNo)
} }
}
return show return show
}, },
isHasAuth(obj) { isHasAuth(obj) {
...@@ -839,7 +843,7 @@ ...@@ -839,7 +843,7 @@
display: flex; display: flex;
top: 120rpx; top: 120rpx;
align-items: center; align-items: center;
padding: 32rpx 44rpx; padding: 32rpx 32rpx;
left: 0; left: 0;
flex-direction: row; flex-direction: row;
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
</view> </view>
<view class="author-content"> <view class="author-content">
<text class="text">{{newDetail.createdUserName}}</text> <text class="text">{{newDetail.createdUserName}}</text>
<text class="text" style="margin-left: 30rpx;">{{timeChange(newDetail.articleTime)}}</text> <text class="text" style="margin-left: 30rpx;">{{timeChange(newDetail.createdAt)}}</text>
</view> </view>
<image :src="newDetail.articleImg" class="image" v-if="newDetail.articleImg"></image> <image :src="newDetail.articleImg" class="image" v-if="newDetail.articleImg"></image>
<view class="text-content"> <view class="text-content">
...@@ -63,7 +63,8 @@ ...@@ -63,7 +63,8 @@
}, },
toLinkDetail(item) { toLinkDetail(item) {
uni.navigateTo({ uni.navigateTo({
url: "/pages/index/newDetail/newDetail?id=" + item.articleLibraryId url: "/pages/index/newDetail/newDetail?id=" + item.articleLibraryId + "&clientId=" + this
.clientId
}) })
}, },
onEditorReady(content) { onEditorReady(content) {
...@@ -89,7 +90,7 @@ ...@@ -89,7 +90,7 @@
}, },
dealTitle(text) { dealTitle(text) {
if (text.length > 15) { if (text.length > 15) {
return text.substr(0, 13) + "..." return text.substr(0, 15) + "..."
} }
return text return text
}, },
...@@ -149,7 +150,7 @@ ...@@ -149,7 +150,7 @@
text { text {
font-weight: 600; font-weight: 600;
font-size: 28rpx; font-size: 28rpx;
width: 420rpx; width: 500rpx;
text-align: center; text-align: center;
color: #333; color: #333;
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<view v-for="(item,index) in list" :key="index" class="list-item" @click="toLinkDetail(item)"> <view v-for="(item,index) in list" :key="index" class="list-item" @click="toLinkDetail(item)">
<view class="new-content"> <view class="new-content">
<view class="title">{{item.title}}</view> <view class="title">{{item.title}}</view>
<view class="user">{{item.createdUserName}} {{timeChange(item.articleTime)}}</view> <view class="user">{{item.createdUserName}} {{timeChange(item.createdAt)}}</view>
</view> </view>
<image class="image" :src="httpToHttps(item.coverImg)"></image> <image class="image" :src="httpToHttps(item.coverImg)"></image>
</view> </view>
...@@ -173,7 +173,8 @@ ...@@ -173,7 +173,8 @@
.new-content { .new-content {
display: flex; display: flex;
width: 420rpx; flex: 1;
max-width: 630rpx;
margin: 15px; margin: 15px;
flex-direction: column; flex-direction: column;
......
...@@ -40,6 +40,8 @@ ...@@ -40,6 +40,8 @@
return '../../../static/light-rain-ic.png' return '../../../static/light-rain-ic.png'
} else if (img == 21) { } else if (img == 21) {
return '../../../static/moderate-rain-ic.png' return '../../../static/moderate-rain-ic.png'
} else if (img == 13) {
return '../../../static/light-snow-ic.png'
} }
} }
} }
......
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
return false return false
} }
if (name == '我的审批') { if (name == '我的审批') {
return this.role == 'PM' return this.role == 'PM' && this.isWorkerHasAuth('ydt-wdsp')
} }
if (name == '我的积分') { if (name == '我的积分') {
return this.role == 'WORKER' && this.isWorkerHasAuth('ydt-wdjf') return this.role == 'WORKER' && this.isWorkerHasAuth('ydt-wdjf')
...@@ -233,7 +233,7 @@ ...@@ -233,7 +233,7 @@
.func-content { .func-content {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
margin: 190px 30rpx 0 30rpx; margin: 90px 30rpx 0 30rpx;
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<image :src="arrowIcon" class="image"></image> <image :src="arrowIcon" class="image"></image>
</view> </view>
</view> </view>
<v-tabs :tabs="tabs" :scroll="true" :value="current" @change="tabChange"></v-tabs>
<view class="column-list-root"> <view class="column-list-root">
<view v-for="(item,index) in mDatas" :key="index" class="column-list-item"> <view v-for="(item,index) in mDatas" :key="index" class="column-list-item">
<view class="item">业务状态:{{statusText(item.status)}}</view> <view class="item">业务状态:{{statusText(item.status)}}</view>
...@@ -32,13 +33,15 @@ ...@@ -32,13 +33,15 @@
export default { export default {
data() { data() {
return { return {
tabs: ["加入单位", "加入项目部"],
page: 1, page: 1,
pageSize: 20, pageSize: 20,
totalPage: 1, totalPage: 1,
mDatas: [], mDatas: [],
order: "desc", order: "desc",
arrowIcon: "../../../static/icon_drop_arrow.png", arrowIcon: "../../../static/icon_drop_arrow.png",
key: "" key: "",
current: 0
} }
}, },
onLoad: function() { onLoad: function() {
...@@ -55,6 +58,11 @@ ...@@ -55,6 +58,11 @@
} }
}, },
methods: { methods: {
tabChange(e) {
this.current = e
this.page = 1
this.getApplyList()
},
search(e) { search(e) {
this.key = e.detail.value this.key = e.detail.value
this.page = 1 this.page = 1
...@@ -97,7 +105,7 @@ ...@@ -97,7 +105,7 @@
showTip: function(index, type) { showTip: function(index, type) {
let _this = this let _this = this
let apply = this.mDatas[index] let apply = this.mDatas[index]
let content = type == 3 ? `确定同意${apply.user_name}加入你的单位` : `确定拒绝${apply.user_name}加入你的单位` let content = type == 3 ? `确定同意${apply.user_name}加入你的组织` : `确定拒绝${apply.user_name}加入你的单位`
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
content: content, content: content,
...@@ -129,7 +137,7 @@ ...@@ -129,7 +137,7 @@
getApplyList: function() { getApplyList: function() {
Api.getExamineList({ Api.getExamineList({
data: { data: {
dept_type: 1, dept_type: this.current + 1,
is_page: 1, is_page: 1,
page: this.page, page: this.page,
page_size: this.pageSize, page_size: this.pageSize,
...@@ -143,9 +151,9 @@ ...@@ -143,9 +151,9 @@
if (this.page == 1) { if (this.page == 1) {
this.mDatas = [] this.mDatas = []
} }
result.data.list.forEach((item) => { if (result.data.list) {
this.mDatas.push(item) this.mDatas = this.mDatas.concat(result.data.list)
}) }
} else { } else {
this.$toast.showToast(result.msg) this.$toast.showToast(result.msg)
} }
......
...@@ -4,8 +4,8 @@ ...@@ -4,8 +4,8 @@
<image src="../../static/home-head.png" class="header-image"></image> <image src="../../static/home-head.png" class="header-image"></image>
<navbar :title="title" :showBack="false"></navbar> <navbar :title="title" :showBack="false"></navbar>
</view> </view>
<view class="org-name">{{orgName||""}}</view> <view class="org-name" :style="{top:statusBarHeight+36+'px'}">{{orgName||""}}</view>
<view class="list-content" v-if="isHasAuth"> <view class="list-content" v-if="isHasAuth" :style="{top:statusBarHeight+85+'px'}">
<view class="item-content" v-for="(app,index) in apps" :key="index"> <view class="item-content" v-for="(app,index) in apps" :key="index">
<image class="image" src="../../static/lwkb-bg-image.png"></image> <image class="image" src="../../static/lwkb-bg-image.png"></image>
<view class="bottom-content"> <view class="bottom-content">
...@@ -45,11 +45,14 @@ ...@@ -45,11 +45,14 @@
project_id: "", project_id: "",
orgName: "", orgName: "",
isProject: false, isProject: false,
type: "project" //企业级company 项目级project type: "project", //企业级company 项目级project
statusBarHeight: "20"
} }
}, },
onLoad() { onLoad() {
this.getAppList() this.getAppList()
const info = uni.getSystemInfoSync()
this.statusBarHeight = info.statusBarHeight
}, },
onShow() { onShow() {
this.userInfo = getApp().globalData.userInfo this.userInfo = getApp().globalData.userInfo
...@@ -142,7 +145,9 @@ ...@@ -142,7 +145,9 @@
font-weight: 500; font-weight: 500;
width: 408rpx; width: 408rpx;
margin: 15px 30rpx; margin: 15px 30rpx;
z-index: 999; position: absolute;
top: 53;
z-index: 1;
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
...@@ -173,6 +178,8 @@ ...@@ -173,6 +178,8 @@
.list-content { .list-content {
display: flex; display: flex;
z-index: 999; z-index: 999;
top: 100px;
position: absolute;
flex-direction: column; flex-direction: column;
.item-content { .item-content {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
Please register or to comment