This commit is contained in:
commit
871bba4d5e
|
@ -3121,6 +3121,44 @@
|
|||
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"color-convert": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"color-name": "~1.1.4"
|
||||
}
|
||||
},
|
||||
"color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"css-loader": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmmirror.com/css-loader/-/css-loader-3.6.0.tgz",
|
||||
|
@ -3194,6 +3232,13 @@
|
|||
"slash": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"hash-sum": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz",
|
||||
|
@ -3308,6 +3353,42 @@
|
|||
"requires": {
|
||||
"minipass": "^3.1.1"
|
||||
}
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"has-flag": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"vue-loader-v16": {
|
||||
"version": "npm:vue-loader@16.8.3",
|
||||
"resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
|
||||
"integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"chalk": "^4.1.0",
|
||||
"hash-sum": "^2.0.0",
|
||||
"loader-utils": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"loader-utils": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz",
|
||||
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^2.1.2"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -16640,94 +16721,6 @@
|
|||
"vue-style-loader": "^4.1.0"
|
||||
}
|
||||
},
|
||||
"vue-loader-v16": {
|
||||
"version": "npm:vue-loader@16.8.3",
|
||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz",
|
||||
"integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"chalk": "^4.1.0",
|
||||
"hash-sum": "^2.0.0",
|
||||
"loader-utils": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"color-convert": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"color-name": "~1.1.4"
|
||||
}
|
||||
},
|
||||
"color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"hash-sum": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz",
|
||||
"integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"loader-utils": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
|
||||
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^2.1.2"
|
||||
}
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"has-flag": "^4.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vue-style-loader": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
|
||||
|
|
|
@ -65,6 +65,12 @@
|
|||
"lazyCodeLoading" : "requiredComponents",
|
||||
"optimization" : {
|
||||
"subPackages" : true
|
||||
},
|
||||
"plugins" : {
|
||||
"player" : {
|
||||
"version" : "2.1.1",
|
||||
"provider" : "wxa75efa648b60994b"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mp-alipay" : {
|
||||
|
@ -90,7 +96,7 @@
|
|||
// 与vue中的proxyTable配置大致上一致,此处我同时代理了两个
|
||||
"/pre" : {
|
||||
// 预发布
|
||||
"target" : "http://10.0.0.61:8080/h5/api", // 目标接口域名
|
||||
"target" : "http://192.168.1.3:8080/h5/api", // 目标接口域名
|
||||
|
||||
// "target" : "https://yxx.ydool.net/h5/api", // 目标接口域名
|
||||
"changeOrigin" : true, // 是否跨域
|
||||
|
|
1332
src/pages.json
1332
src/pages.json
File diff suppressed because it is too large
Load Diff
|
@ -237,8 +237,13 @@
|
|||
if (res.code == 200) {
|
||||
uni.removeStorageSync('isAdmin');
|
||||
uni.removeStorageSync('userType');
|
||||
uni.removeStorageSync('isExpert');
|
||||
uni.removeStorageSync('isVillageAdmin');
|
||||
uni.removeStorageSync('isExpert');
|
||||
uni.setStorageSync('isAdmin', res.data.isAdmin)
|
||||
uni.setStorageSync('userType', res.data.userType)
|
||||
uni.setStorageSync('isExpert', res.data.isExpert)
|
||||
uni.setStorageSync('isVillageAdmin', res.data.isVillageAdmin)
|
||||
this.getSwpper()
|
||||
}
|
||||
}).catch(e => {
|
||||
|
|
|
@ -165,7 +165,7 @@
|
|||
<u-empty v-if="list2.length == 0" mode="data" icon="../../static/orderE.png" marginTop="120"></u-empty>
|
||||
</view>
|
||||
<!-- 取消报名-原因 -->
|
||||
<u-popup :show="showB" mode="center" :round="10" @close="closeZ">
|
||||
<u-popup :show="showB" mode="center" :round="10" @close="closeZ" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 36rpx; font-weight: 800;">
|
||||
|
@ -188,7 +188,7 @@
|
|||
</view>
|
||||
</u-popup>
|
||||
<!-- 取消报名-确认 -->
|
||||
<u-popup :show="showS" mode="center" :round="10" @close="closeS">
|
||||
<u-popup :show="showS" mode="center" :round="10" @close="closeS" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 32rpx; font-weight: 800;">
|
||||
|
@ -208,7 +208,7 @@
|
|||
</view>
|
||||
</u-popup>
|
||||
<!-- 评分 -->
|
||||
<u-popup :show="showH" mode="center" :round="10" @close="closeH">
|
||||
<u-popup :show="showH" mode="center" :round="10" @close="closeH" :safeAreaInsetBottom="false">
|
||||
<view>
|
||||
<view style="padding: 32rpx;">
|
||||
<u-rate v-model="star" size='36'></u-rate>
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup :show="showType" @close="close" closeOnClickOverlay :round="5" customStyle="padding: 16px;">
|
||||
<u-popup :show="showType" @close="close" closeOnClickOverlay :round="5" customStyle="padding: 16px;" :safeAreaInsetBottom="false">
|
||||
<u-radio-group @change="selectForm1" v-model="hdType" :borderBottom="true" placement="column"
|
||||
iconPlacement="right">
|
||||
<u-radio :customStyle="{marginBottom: '16px' }" v-for="(item, index) in radiolist1" :key="index"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -36,7 +36,7 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup :show="showStar" @close="close" closeOnClickOverlay mode="center" :round="5">
|
||||
<u-popup :show="showStar" @close="close" closeOnClickOverlay mode="center" :round="5" :safeAreaInsetBottom="false">
|
||||
<view style="padding: 100rpx 100rpx 40rpx 100rpx;">
|
||||
<text>确认取消关注?</text>
|
||||
</view>
|
||||
|
|
|
@ -1,42 +1,44 @@
|
|||
<template>
|
||||
|
||||
<view class="im" >
|
||||
<image v-for=" (v,i) in imgArr" class="imgSt" :src="v" mode=""></image>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="im">
|
||||
<image
|
||||
v-for="(v, i) in imgArr"
|
||||
class="imgSt"
|
||||
:src="v"
|
||||
mode=""
|
||||
:key="i"
|
||||
></image>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
imgArr:[]
|
||||
};
|
||||
},
|
||||
onLoad(op) {
|
||||
console.log("ddddd",op.imgstring);
|
||||
let imgarrs=[]
|
||||
op.imgstring.split(",").forEach(function(eml,index){
|
||||
imgarrs.push(eml)
|
||||
})
|
||||
this.imgArr=imgarrs
|
||||
console.log("ar",imgarrs);
|
||||
}
|
||||
}
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
imgArr: [],
|
||||
};
|
||||
},
|
||||
onLoad(op) {
|
||||
let imgarrs = [];
|
||||
op.imgstring.split(",").forEach(function (eml, index) {
|
||||
imgarrs.push(eml);
|
||||
});
|
||||
this.imgArr = imgarrs;
|
||||
console.log("ar", imgarrs);
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.imgSt{
|
||||
width: 200rpx;
|
||||
height: 200rpx;
|
||||
border-radius: 10rpx;
|
||||
overflow: hidden;
|
||||
margin: 0 10rpx;
|
||||
.imgSt {
|
||||
width: 200rpx;
|
||||
height: 200rpx;
|
||||
border-radius: 10rpx;
|
||||
overflow: hidden;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
page{
|
||||
padding-top: 24rpx;
|
||||
width: calc(100% - 32rpx);
|
||||
margin: 0 auto;
|
||||
page {
|
||||
padding-top: 24rpx;
|
||||
width: calc(100% - 32rpx);
|
||||
margin: 0 auto;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,17 +1,26 @@
|
|||
<template>
|
||||
<view>
|
||||
<view class="topTabs">
|
||||
<u-tabs :list="list1" @click="click" lineColor="#99241B"></u-tabs>
|
||||
<view class="">
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
<view class="art_race_itm" v-for="(v,i) in dataList" :key="i" @click="goRaceDetail(v.id)">
|
||||
<image style="width: 100%; height: 296rpx;" src="../../static/orderE.png" mode=""></image>
|
||||
<view class="art_race_bot">
|
||||
<text class="art_title">{{v.title}}</text>
|
||||
<view class="art_race_con u-line-2">{{v.content}}</view>
|
||||
<view class="art_race_con">
|
||||
截止时间:{{v.time}}
|
||||
<view v-if="!load">
|
||||
<view class="topTabs">
|
||||
<u-tabs :list="list1" @click="click" lineColor="#99241B"></u-tabs>
|
||||
</view>
|
||||
<view v-if="dataList.length > 0" class="art_race_itm" v-for="(v,i) in dataList" :key="i" @click="goRaceDetail(v.id)">
|
||||
<image style="width: 100%; height: 296rpx;" :src="v.file" mode=""></image>
|
||||
<view class="art_race_bot">
|
||||
<text class="art_title">{{v.name}}</text>
|
||||
<view class="art_race_con u-line-2">{{v.content}}</view>
|
||||
<view class="art_race_con">
|
||||
截止时间:{{v.endTime}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
@ -20,70 +29,96 @@
|
|||
export default {
|
||||
data() {
|
||||
return {
|
||||
load: true,
|
||||
list1: [{
|
||||
name: '关注',
|
||||
},
|
||||
{
|
||||
name: '推荐',
|
||||
},
|
||||
{
|
||||
name: '电影'
|
||||
},
|
||||
{
|
||||
name: '科技'
|
||||
},
|
||||
{
|
||||
name: '音乐'
|
||||
},
|
||||
{
|
||||
name: '美食'
|
||||
},
|
||||
{
|
||||
name: '文化'
|
||||
},
|
||||
{
|
||||
name: '财经'
|
||||
},
|
||||
{
|
||||
name: '手工'
|
||||
}
|
||||
],
|
||||
dataList: [{
|
||||
id: '111',
|
||||
title: '艺起战疫',
|
||||
content: '寒冬虽冷,美术工作者们以画传心,心是热的;疫情虽紧,艺术家们以笔墨为歌,信心是充足的。在市委宣传部和市递正能量,吹响新时代的',
|
||||
time: '2023-09-30 20:00'
|
||||
},
|
||||
{
|
||||
id: '111',
|
||||
title: '艺起战疫',
|
||||
content: '寒冬虽冷,美术工作者们以画传心,心是热的;疫情虽紧,艺术家们以笔墨为歌,信心是充足的。在市委宣传部和市递正能量,吹响新时代的',
|
||||
time: '2023-09-30 20:00'
|
||||
},
|
||||
{
|
||||
id: '111',
|
||||
title: '艺起战疫',
|
||||
content: '寒冬虽冷,美术工作者们以画传心,心是热的;疫情虽紧,艺术家们以笔墨为歌,信心是充足的。在市委宣传部和市递正能量,吹响新时代的',
|
||||
time: '2023-09-30 20:00'
|
||||
},
|
||||
{
|
||||
id: '111',
|
||||
title: '艺起战疫',
|
||||
content: '寒冬虽冷,美术工作者们以画传心,心是热的;疫情虽紧,艺术家们以笔墨为歌,信心是充足的。在市委宣传部和市递正能量,吹响新时代的',
|
||||
time: '2023-09-30 20:00'
|
||||
}
|
||||
]
|
||||
name: '全部',
|
||||
value: '',
|
||||
}],
|
||||
dataList: [],
|
||||
pages: 1,
|
||||
size: 20,
|
||||
type: ''
|
||||
};
|
||||
},
|
||||
onLoad() {
|
||||
this.getType()
|
||||
},
|
||||
// 下拉刷新
|
||||
onPullDownRefresh() {
|
||||
this.pages = 1
|
||||
this.dataList = []
|
||||
this.getData()
|
||||
setTimeout(function() {
|
||||
uni.stopPullDownRefresh();
|
||||
}, 1000);
|
||||
},
|
||||
//上拉
|
||||
onReachBottom() {
|
||||
this.pages++
|
||||
this.load = true
|
||||
this.getData();
|
||||
},
|
||||
methods: {
|
||||
goRaceDetail(id) {
|
||||
console.log(id);
|
||||
uni.navigateTo({
|
||||
url: "/pagesB/ArtRace/ArtRaceDetail?id=" + String(id),
|
||||
})
|
||||
},
|
||||
click(item) {
|
||||
console.log('item', item);
|
||||
this.type = item.value
|
||||
this.pages = 1
|
||||
this.dataList = []
|
||||
this.getData()
|
||||
},
|
||||
getType() {
|
||||
let that = this
|
||||
this.http.request('/competition/types', {}, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
res.data.forEach(item => {
|
||||
that.list1.push({
|
||||
name: item.label,
|
||||
value: item.value
|
||||
})
|
||||
})
|
||||
this.getData()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
getData() {
|
||||
let that = this
|
||||
let par = {
|
||||
page: this.pages,
|
||||
size: this.size,
|
||||
type: this.type
|
||||
}
|
||||
this.http.request('/competition/list', par, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
if (res.data.records.length > 0) {
|
||||
res.data.records.forEach(function(item) {
|
||||
if (item.file) {
|
||||
let fileArr = item.file.split(',')
|
||||
item.file = fileArr[0]
|
||||
}
|
||||
that.dataList.push(item)
|
||||
})
|
||||
} else {
|
||||
this.pages--
|
||||
}
|
||||
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,14 +16,7 @@
|
|||
</u-swiper>
|
||||
</view>
|
||||
<view class="main">
|
||||
<view class="mainTitle">{{data.title}}</view>
|
||||
<view class="textList">
|
||||
<view class="type">
|
||||
<img class='textImg' src="../../static/detailIcon/icon10.png" alt="">
|
||||
<view class="text1">比赛简介</view>
|
||||
</view>
|
||||
<view class="text2">{{data.demand}}</view>
|
||||
</view>
|
||||
<view class="mainTitle">{{data.name}}</view>
|
||||
<view class="textList">
|
||||
<view class="type">
|
||||
<img class='textImg' src="../../static/detailIcon/icon10.png" alt="">
|
||||
|
@ -51,32 +44,32 @@
|
|||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon6.png" mode="scaleToFill"></image>
|
||||
<text> 可接单人数:</text>
|
||||
<text> 可参赛人数:</text>
|
||||
</view>
|
||||
<view class="content"><text style=" color: #99241B;"> {{data.jdrs}}</text>/{{data.quantity}}
|
||||
<view class="content"><text style=" color: #99241B;"> {{data.enrollment}}</text>/{{data.maxNum}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon7.png" mode="scaleToFill"></image>
|
||||
<text>截止时间:</text>
|
||||
<text>报名截止时间:</text>
|
||||
</view>
|
||||
<view class="content"> {{data.deadline}}</view>
|
||||
<view class="content"> {{data.startTime}}</view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon4.png" mode="scaleToFill"></image>
|
||||
<text>活动时间:</text>
|
||||
<text>活动结束时间:</text>
|
||||
</view>
|
||||
<view class="content"> {{data.activityTime}} </view>
|
||||
<view class="content"> {{data.endTime}} </view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 红色按钮 -->
|
||||
<view>
|
||||
<view class="" v-if="data.hallState == 1">
|
||||
<view class="orderBtn" v-if="data.isBaoming">
|
||||
<view class="btnQ" @click="throwWork">取消报名</view>
|
||||
<view class="" v-if="data.status == 0">
|
||||
<view class="orderBtn" v-if="data.isApplication">
|
||||
<view class="btnQ">您已报名</view>
|
||||
</view>
|
||||
<view class="orderBtn" v-else>
|
||||
<view class="btn" @click="throwWork">报名</view>
|
||||
|
@ -95,16 +88,24 @@
|
|||
<image class="icon" src="../../static/detailIcon/icon0.png" mode="scaleToFill"></image>
|
||||
<text>参赛作品展示</text>
|
||||
</view>
|
||||
<view class="worksPart">
|
||||
<view class="workItems" v-for="(v,i) in workList" :key="i">
|
||||
<view class="worksPart" v-if="workList.length > 0">
|
||||
<view class="workItems" v-for="(v,i) in workList" :key="i" @click="goWorkDetail(v.id)">
|
||||
<view class="sort" v-if="data.status != 0">
|
||||
<text>NO.<text style="font-size: 32rpx;">{{ i+1 }}</text></text>
|
||||
<text>{{ v.averageScore }}</text>
|
||||
</view>
|
||||
<view class="workImg">
|
||||
<image :src="v.img" style="width: 100%; height: 100%;"></image>
|
||||
<image :src="v.file" style="width: 100%; height: 100%;"></image>
|
||||
</view>
|
||||
<view class="workText">
|
||||
{{v.name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -115,59 +116,16 @@
|
|||
export default {
|
||||
data() {
|
||||
return {
|
||||
load: false,
|
||||
id: '',
|
||||
load: true,
|
||||
statusHeight: 0,
|
||||
titleHeight: 50,
|
||||
currentNum: 0,
|
||||
list: [
|
||||
'../../static/blackArrow.png'
|
||||
],
|
||||
data: {
|
||||
title: '标题',
|
||||
demand: '简介',
|
||||
content: 'FDA施工队发生噶v通过热巴v我提个阿萨出发',
|
||||
deadline: '2023-02-02',
|
||||
activityTime: '2023-02-02',
|
||||
jdrs: '10',
|
||||
quantity: '10',
|
||||
typeName: '类型',
|
||||
hallState: '1',
|
||||
isBaoming: false
|
||||
},
|
||||
workList: [
|
||||
{
|
||||
name: '111',
|
||||
img: '../../static/detailIcon/icon0.png'
|
||||
},
|
||||
{
|
||||
name: '222',
|
||||
img: '../../static/detailIcon/icon0.png'
|
||||
},
|
||||
{
|
||||
name: '333',
|
||||
img: '../../static/detailIcon/icon0.png'
|
||||
},
|
||||
{
|
||||
name: '444',
|
||||
img: '../../static/detailIcon/icon0.png'
|
||||
},
|
||||
{
|
||||
name: '555',
|
||||
img: '../../static/detailIcon/icon0.png'
|
||||
}
|
||||
]
|
||||
list: [],
|
||||
data: {},
|
||||
workList: []
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
back() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
throwWork() {
|
||||
uni.navigateTo({
|
||||
url: "/pagesB/ArtRace/ThrowWork"
|
||||
})
|
||||
}
|
||||
},
|
||||
onReady() {
|
||||
const systemMsg = uni.getSystemInfoSync();
|
||||
this.statusHeight = systemMsg.statusBarHeight
|
||||
|
@ -184,22 +142,92 @@
|
|||
// #endif
|
||||
},
|
||||
onLoad(opt) {
|
||||
console.log(opt.id);
|
||||
this.id = opt.id
|
||||
},
|
||||
onShow() {
|
||||
this.workList = []
|
||||
this.load = true
|
||||
this.getDate()
|
||||
},
|
||||
methods: {
|
||||
goWorkDetail(id) {
|
||||
uni.navigateTo({
|
||||
url: "/pagesB/ArtRace/raceWork?id=" + String(id),
|
||||
})
|
||||
},
|
||||
back() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
throwWork() {
|
||||
uni.navigateTo({
|
||||
url: "/pagesB/ArtRace/ThrowWork?id=" + this.id
|
||||
})
|
||||
},
|
||||
getDate() {
|
||||
let that = this
|
||||
let par = {
|
||||
id: this.id,
|
||||
}
|
||||
this.http.request('/competition/details', par, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
if (res.data.file) {
|
||||
this.list = res.data.file.split(',')
|
||||
}
|
||||
if (res.data.list && res.data.list.length > 0) {
|
||||
res.data.list.forEach(function(item) {
|
||||
if (item.file) {
|
||||
let fileArr = item.file.split(',')
|
||||
item.file = fileArr[0]
|
||||
}
|
||||
that.workList.push(item)
|
||||
})
|
||||
}
|
||||
this.workList = this.workList.sort(this.sortBy('averageScore', false))
|
||||
this.data = res.data
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
sortBy(attr, rev) {
|
||||
//第二个参数没有传递 默认升序排列
|
||||
if (rev == undefined) {
|
||||
rev = 1;
|
||||
} else {
|
||||
rev = (rev) ? 1 : -1;
|
||||
}
|
||||
|
||||
return function(a, b) {
|
||||
a = a[attr];
|
||||
b = b[attr];
|
||||
if (a < b) {
|
||||
return rev * -1;
|
||||
}
|
||||
if (a > b) {
|
||||
return rev * 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.art_race_itm {
|
||||
overflow: hidden;
|
||||
|
||||
|
||||
.return {
|
||||
position: fixed;
|
||||
left: 24rpx;
|
||||
top: 110rpx;
|
||||
z-index: 10;
|
||||
|
||||
|
||||
image {
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
|
@ -339,36 +367,45 @@
|
|||
|
||||
.content {}
|
||||
}
|
||||
|
||||
.worksPart{
|
||||
|
||||
.worksPart {
|
||||
padding: 32rpx;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
.workItems{
|
||||
|
||||
.workItems {
|
||||
width: 320rpx;
|
||||
height: 240rpx;
|
||||
height: 280rpx;
|
||||
margin-bottom: 24rpx;
|
||||
.workImg{
|
||||
|
||||
.workImg {
|
||||
width: 320rpx;
|
||||
height: 200rpx;
|
||||
}
|
||||
.workText{
|
||||
|
||||
.workText {
|
||||
width: 320rpx;
|
||||
height: 40rpx;
|
||||
}
|
||||
.sort{
|
||||
width: 320rpx;
|
||||
height: 40rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.orderBtn {
|
||||
width: 100%;
|
||||
background-color: #FFF;
|
||||
padding-bottom: 20rpx;
|
||||
|
||||
|
||||
|
||||
|
||||
.btn {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
|
@ -381,6 +418,7 @@
|
|||
color: #FFFFFF;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.btnQ {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
|
@ -396,5 +434,4 @@
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
</style>
|
|
@ -1,54 +1,56 @@
|
|||
<template>
|
||||
<view>
|
||||
<u--form :model="model2" :rules="rules" ref="form2">
|
||||
<u-form-item prop="userInfo.name" ref="item2" class="data_itm"></u-form-item>
|
||||
</u--form>
|
||||
|
||||
<u--input style="padding: 32rpx;" placeholder="请输入作品名称" border="none" clearable></u--input>
|
||||
|
||||
<u--textarea style="padding: 32rpx; height: 200rpx;" v-model="value" placeholder="请输入作品说明" border="none"></u--textarea>
|
||||
<view class="gap">
|
||||
作品内容可上传图片/视频/音频等
|
||||
<view class="">
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
名称
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<u--input placeholder="请输入名称" v-model="name" clearable border="none" inputAlign="right"
|
||||
style="color: #251B1D;">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<u-upload class="upload" accept="media" width="172rpx" height="172rpx" :fileList="fileList3"
|
||||
@afterRead="afterRead" @delete="deletePic" name="3" multiple :maxCount="2">
|
||||
<view class="form_box">
|
||||
<view class="form_left">
|
||||
作品简介
|
||||
</view>
|
||||
</view>
|
||||
<view class="text_box">
|
||||
<u--textarea v-model="text2" placeholder="请输入作品简介" maxlength="-1"></u--textarea>
|
||||
</view>
|
||||
<view class="gap">
|
||||
附件上传
|
||||
</view>
|
||||
<view class="gap" style="line-height: 30rpx;font-size: 28rpx;">
|
||||
可上传图片(png/jpg/jpeg/bmp/gif/tif/tiff)
|
||||
</view>
|
||||
<u-upload class="upload" width="172rpx" height="172rpx" :fileList="fileList3"
|
||||
@afterRead="afterRead" @delete="deletePic" name="3" multiple>
|
||||
<image style="width: 172rpx;height: 172rpx;" src="../../static/improveData/jia.png"></image>
|
||||
</u-upload>
|
||||
|
||||
<view class="operation">
|
||||
<button type="default" class="next" @click="throwMyWork">投稿</button>
|
||||
</view>
|
||||
|
||||
<view class="zhanwei">
|
||||
<view class="operation" @click="next">
|
||||
发布
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import http from '../../request/interface.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
value: '',
|
||||
id: '',
|
||||
name: '',
|
||||
text2: '',
|
||||
fileList3: [],
|
||||
model2:{
|
||||
workName:'',
|
||||
workDesc:''
|
||||
},
|
||||
rules:{
|
||||
|
||||
}
|
||||
};
|
||||
ok: true,
|
||||
}
|
||||
},
|
||||
onLoad(op){
|
||||
this.id = op.id
|
||||
},
|
||||
methods: {
|
||||
throwMyWork() {
|
||||
uni.showToast({
|
||||
title:"投稿作品"
|
||||
})
|
||||
/* uni.navigateTo({
|
||||
url: "/pagesB/PublishWorks/PublishWorksNext"
|
||||
}) */
|
||||
},
|
||||
// 删除图片
|
||||
deletePic(event) {
|
||||
this[`fileList${event.name}`].splice(event.index, 1)
|
||||
|
@ -80,7 +82,7 @@
|
|||
let token = uni.getStorageSync('token');
|
||||
return new Promise((resolve, reject) => {
|
||||
let a = uni.uploadFile({
|
||||
url: 'http://192.168.2.21:7001/upload', // 仅为示例,非真实的接口地址
|
||||
url: http.config.baseUrl + '/file/upload',
|
||||
filePath: url,
|
||||
name: 'file',
|
||||
formData: {
|
||||
|
@ -90,34 +92,126 @@
|
|||
"X-Token": token
|
||||
},
|
||||
success: (res) => {
|
||||
setTimeout(() => {
|
||||
resolve(res.data.data)
|
||||
}, 1000)
|
||||
if (JSON.parse(res.data).code == 200) {
|
||||
setTimeout(() => {
|
||||
resolve(JSON.parse(res.data).data.path)
|
||||
}, 1000)
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: JSON.parse(res.data).message,
|
||||
icon: "none",
|
||||
});
|
||||
this.fileList3.pop()
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
next() {
|
||||
this.ok = true
|
||||
if(this.name == ''){
|
||||
uni.showToast({
|
||||
title: '请输入名称',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.text2 == ''){
|
||||
uni.showToast({
|
||||
title: '请输入具体内容',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.fileList3.length == 0){
|
||||
uni.showToast({
|
||||
title: '请上传附件',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.ok){
|
||||
let image = []
|
||||
this.fileList3.forEach(function(item) {
|
||||
image.push(item.url)
|
||||
})
|
||||
let data = image.join(',')
|
||||
this.http.request('/competitionUser/addCompetition', {
|
||||
competitionId: this.id,
|
||||
introduce: this.text2,
|
||||
name: this.name,
|
||||
file: data
|
||||
}, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
<style>
|
||||
|
||||
</style>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
/deep/ .uni-icons{
|
||||
display: none;
|
||||
}
|
||||
/deep/ .uni-date-x{
|
||||
text-align: right;
|
||||
padding: 0;
|
||||
}
|
||||
.form_line {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
border-bottom: 1rpx solid #dadbde;
|
||||
|
||||
.form_right {
|
||||
width: 450rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.form_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
}
|
||||
|
||||
.text_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
}
|
||||
|
||||
.gap {
|
||||
font-size: 24rpx;
|
||||
|
||||
color: #AFADB0;
|
||||
height: 80rpx;
|
||||
background: #F5F5F5;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
opacity: 1;
|
||||
line-height: 80rpx;
|
||||
padding: 0 32rpx;
|
||||
padding: 10rpx 32rpx;
|
||||
font-size: 32rpx;
|
||||
}
|
||||
::v-deep .u-upload__wrap {
|
||||
padding: 32rpx;
|
||||
}
|
||||
|
||||
.upload {
|
||||
|
@ -125,39 +219,14 @@
|
|||
}
|
||||
|
||||
.operation {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding: 32rpx 32rpx 48rpx;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
background-color: #FFFFFF;
|
||||
box-shadow: 0px -4px 10px 1px rgba(192, 192, 192, 0.12);
|
||||
|
||||
.next {
|
||||
width: calc(100% - 48rpx);
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
|
||||
background-color: #99241B;
|
||||
color: #fff;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
|
||||
border: none;
|
||||
|
||||
button {
|
||||
&::after {
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.zhanwei {
|
||||
height: 460rpx;
|
||||
|
||||
width: 654rpx;
|
||||
height: 96rpx;
|
||||
margin: 32rpx 48rpx 48rpx;
|
||||
text-align: center;
|
||||
line-height: 96rpx;
|
||||
background-color: #99241B;
|
||||
color: #fff;
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -0,0 +1,395 @@
|
|||
<template>
|
||||
<view>
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
<view class="art_race_itm" v-if="!load">
|
||||
<view class="return" @click="back">
|
||||
<image src="../../static/orderLeftArrow.png" mode="scaleToFill"></image>
|
||||
</view>
|
||||
<view class="pageImg">
|
||||
<u-swiper v-if="list.length > 0" :list="list" :autoplay="true" @change="e => currentNum = e.current"
|
||||
indicatorStyle="right: 20px" height='440rpx'>
|
||||
<view slot="indicator" class="indicator-num">
|
||||
<text class="indicator-num__text">{{ currentNum + 1 }}/{{ list.length }}</text>
|
||||
</view>
|
||||
</u-swiper>
|
||||
</view>
|
||||
<view class="main">
|
||||
<view class="mainTitle">{{data.name}}</view>
|
||||
<view class="textList">
|
||||
<view class="type">
|
||||
<img class='textImg' src="../../static/detailIcon/icon10.png" alt="">
|
||||
<view class="text1">作品简介</view>
|
||||
</view>
|
||||
<view class="text2">
|
||||
{{data.introduce}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="textList" v-if="isExpert">
|
||||
<view class="type">
|
||||
<img class='textImg' src="../../static/detailIcon/icon10.png" alt="">
|
||||
<view class="text1">您的评分:<text class="redText">{{ data.myScore }}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="textList" v-if="isExpert">
|
||||
<view class="type">
|
||||
<img class='textImg' src="../../static/detailIcon/icon10.png" alt="">
|
||||
<view class="text1">作品平均分:<text class="redText">{{ data.averageScore }}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line"></view>
|
||||
<!-- 红色按钮 -->
|
||||
<view>
|
||||
<view class="" v-if="isExpert">
|
||||
<view class="orderBtn" v-if="data.isScore">
|
||||
<view class="btnQ">已评分</view>
|
||||
</view>
|
||||
<view class="orderBtn" v-else>
|
||||
<view class="btn" @click="toScore">评分</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="" v-else>
|
||||
<view class="orderBtn">
|
||||
<view class="btnQ">您无法评分</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 红色按钮ed -->
|
||||
<!-- 打分弹窗 -->
|
||||
<u-popup :show="showB" mode="center" :round="10" @close="close" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 36rpx; font-weight: 800;">
|
||||
请打分
|
||||
</view>
|
||||
</view>
|
||||
<view style="margin: 0 32rpx 32rpx;">
|
||||
<u--input type="number" placeholder="请输入分数" border="surround" v-model="value"></u--input>
|
||||
</view>
|
||||
<view
|
||||
style="display: flex; border-top:2rpx solid #E7E7E7;height: 112rpx;width: 640rpx;line-height: 112rpx; font-size: 32rpx;font-weight: 600;">
|
||||
<view style="width: 319rpx; border-right:1rpx solid #E7E7E7; text-align: center;"
|
||||
@click="close">
|
||||
取消
|
||||
</view>
|
||||
<view
|
||||
style="width: 319rpx; border-right:1rpx solid #E7E7E7; text-align: center; color: #3F84FD;"
|
||||
@click="sure">
|
||||
确定
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</u-popup>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
id: '',
|
||||
load: true,
|
||||
statusHeight: 0,
|
||||
titleHeight: 50,
|
||||
currentNum: 0,
|
||||
list: [],
|
||||
data: {},
|
||||
workList: [],
|
||||
isExpert: true,
|
||||
showB: false,
|
||||
value: 0,
|
||||
};
|
||||
},
|
||||
onReady() {
|
||||
const systemMsg = uni.getSystemInfoSync();
|
||||
this.statusHeight = systemMsg.statusBarHeight
|
||||
|
||||
// #ifdef MP-WEIXIN
|
||||
const menuButtonInfo = uni.getMenuButtonBoundingClientRect() //胶囊
|
||||
this.titleHeight = menuButtonInfo.height + (menuButtonInfo.top - systemMsg.statusBarHeight) * 2
|
||||
this.topHeight = this.statusHeight + this.titleHeight
|
||||
// #endif
|
||||
|
||||
// #ifndef MP-WEIXIN
|
||||
//除了小程序
|
||||
this.topHeight = this.statusHeight + this.titleHeight
|
||||
// #endif
|
||||
},
|
||||
onLoad(opt) {
|
||||
this.id = opt.id
|
||||
},
|
||||
onShow() {
|
||||
this.isExpert = uni.getStorageSync('isExpert');
|
||||
this.load = true
|
||||
this.getDate()
|
||||
},
|
||||
methods: {
|
||||
back() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
getDate() {
|
||||
let that = this
|
||||
let par = {
|
||||
id: this.id,
|
||||
}
|
||||
this.http.request('/competitionUser/details', par, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
if (res.data.file) {
|
||||
this.list = res.data.file.split(',')
|
||||
}
|
||||
this.data = res.data
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
close() {
|
||||
this.showB = false
|
||||
this.value = ''
|
||||
},
|
||||
toScore() {
|
||||
this.showB = true
|
||||
},
|
||||
sure() {
|
||||
this.http.request('/competitionUser/score?id=' + this.id + '&sorce=' + this.value, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.showB = false
|
||||
this.value = ''
|
||||
this.load = true
|
||||
this.getDate()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.art_race_itm {
|
||||
overflow: hidden;
|
||||
|
||||
.return {
|
||||
position: fixed;
|
||||
left: 24rpx;
|
||||
top: 110rpx;
|
||||
z-index: 10;
|
||||
|
||||
image {
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.pageImg {
|
||||
height: 440rpx;
|
||||
}
|
||||
|
||||
.main {
|
||||
padding: 32rpx;
|
||||
|
||||
.mainTitle {
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
margin-bottom: 28rpx;
|
||||
}
|
||||
|
||||
.textList {
|
||||
margin-bottom: 24rpx;
|
||||
|
||||
.type {
|
||||
display: flex;
|
||||
height: 48rpx;
|
||||
line-height: 48rpx;
|
||||
|
||||
.textImg {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
margin-top: 10rpx;
|
||||
margin-right: 16rpx;
|
||||
}
|
||||
|
||||
.text1 {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #32333C;
|
||||
|
||||
.redText {
|
||||
color: #99241B;
|
||||
font-size: 36rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.text2 {
|
||||
font-size: 28rpx;
|
||||
color: #32333C;
|
||||
line-height: 48rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.file_box {
|
||||
width: 92%;
|
||||
height: 64px;
|
||||
margin: 10px 4%;
|
||||
font-family: PingFangSC-Semibold, PingFang SC;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
background: #F4F5F7;
|
||||
border-radius: 6px;
|
||||
overflow: hidden;
|
||||
|
||||
.file_box_left {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-top: 12px;
|
||||
margin-left: 12px;
|
||||
float: left;
|
||||
|
||||
.file_box_left_img {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
}
|
||||
|
||||
.file_box_right {
|
||||
margin-left: 20px;
|
||||
float: left;
|
||||
|
||||
.file_box_name {
|
||||
height: 64px;
|
||||
line-height: 64px;
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.line {
|
||||
height: 16rpx;
|
||||
background: #F4F5F7;
|
||||
}
|
||||
|
||||
.activityDetails {
|
||||
.item_ul {
|
||||
.title {
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
padding: 24rpx;
|
||||
display: flex;
|
||||
background: #F4F5F7;
|
||||
|
||||
.icon {
|
||||
width: 40rpx;
|
||||
height: 40rpx;
|
||||
margin-right: 10rpx;
|
||||
// display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.item_li {
|
||||
padding: 16rpx 32rpx 32rpx;
|
||||
margin: 16rpx 0;
|
||||
border-bottom: 2rpx solid #F1F1F1;
|
||||
display: flex;
|
||||
// justify-content: space-between;
|
||||
align-items: center;
|
||||
font-weight: 600;
|
||||
|
||||
.standard {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-right: 10rpx;
|
||||
|
||||
.icon {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
// display: none;
|
||||
}
|
||||
|
||||
text {
|
||||
color: #251B1D;
|
||||
// color: $gray;
|
||||
margin-left: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.content {}
|
||||
}
|
||||
|
||||
.worksPart {
|
||||
padding: 32rpx;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
|
||||
.workItems {
|
||||
width: 320rpx;
|
||||
height: 240rpx;
|
||||
margin-bottom: 24rpx;
|
||||
|
||||
.workImg {
|
||||
width: 320rpx;
|
||||
height: 200rpx;
|
||||
}
|
||||
|
||||
.workText {
|
||||
width: 320rpx;
|
||||
height: 40rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.orderBtn {
|
||||
width: 100%;
|
||||
background-color: #FFF;
|
||||
padding-bottom: 20rpx;
|
||||
|
||||
|
||||
.btn {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
line-height: 96rpx;
|
||||
text-align: center;
|
||||
background: #99241B;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #FFFFFF;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.btnQ {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
line-height: 96rpx;
|
||||
text-align: center;
|
||||
background: #F9F2F2;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #99241B;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
|
@ -85,7 +85,7 @@
|
|||
</view>
|
||||
</view>
|
||||
|
||||
<u-popup :show="showStar" @close="close" closeOnClickOverlay mode="center" :round="10">
|
||||
<u-popup :show="showStar" @close="close" closeOnClickOverlay mode="center" :round="10" :safeAreaInsetBottom="false">
|
||||
<view style="padding: 100rpx 100rpx 40rpx 100rpx;">
|
||||
<u-rate count=5 v-model="orStar" size='30'></u-rate>
|
||||
</view>
|
||||
|
|
|
@ -16,10 +16,10 @@
|
|||
<u-icon name="arrow-right"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<view class="person_itm_sign" @click="goChangeInfo('出生日期',userInfoObj.birthDay )">
|
||||
<text class="person_itm_sign_tit">出生日期</text>
|
||||
<view class="person_itm_sign" @click="goChangeInfo('出生年月',userInfoObj.dateBirth )">
|
||||
<text class="person_itm_sign_tit">出生年月</text>
|
||||
<view class="person_itm_sign_right">
|
||||
<text> {{userInfoObj.birthDay}}</text>
|
||||
<text> {{userInfoObj.dateBirth}}</text>
|
||||
<u-icon name="calendar"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
<!-- 性别选择ed -->
|
||||
|
||||
<view class="date m16" @click="DatePicker"
|
||||
v-if="Edkey=='出生日期'||Edkey=='入会时间'||Edkey=='服务开始时间'||Edkey=='服务结束时间'">
|
||||
v-if="Edkey=='出生年月'||Edkey=='入会时间'||Edkey=='服务开始时间'||Edkey=='服务结束时间'">
|
||||
<u--input class='p32 gray' readonly v-model="Edvalue" border="none">
|
||||
</u--input>
|
||||
</view>
|
||||
|
@ -124,7 +124,7 @@
|
|||
:columns="Edkey=='政治面貌'? Zhengcolumns : Edkey=='会员级别'? peopleSkillColums:Edkey=='所属协会'? xiecolumns:Edkey=='学历'? educolumns:[]">
|
||||
</u-picker>
|
||||
<u-datetime-picker confirmColor="#99241B" :minDate="-2207520000000" :maxDate="1786778555000"
|
||||
:show="showBirthday" v-if="Edkey=='出生日期'||Edkey=='入会时间'||Edkey=='服务开始时间'||Edkey=='服务结束时间'" :value="Edvalue"
|
||||
:show="showBirthday" v-if="Edkey=='出生年月' || Edkey=='入会时间'||Edkey=='服务开始时间'||Edkey=='服务结束时间'" :value="Edvalue"
|
||||
:mode="timeMode" closeOnClickOverlay @confirm="birthdayConfirm" @cancel="birthdayClose"
|
||||
@close="birthdayClose">
|
||||
</u-datetime-picker>
|
||||
|
@ -159,7 +159,7 @@
|
|||
'人才类型': 'rcType',
|
||||
// '所属协会':,
|
||||
'身份证号码': 'idCard',
|
||||
'出生日期': 'birthDay',
|
||||
'出生年月': 'dateBirth',
|
||||
'入会时间': 'comeTime',
|
||||
'服务开始时间': 'timeStart',
|
||||
'服务结束时间': 'timeEnd',
|
||||
|
@ -228,8 +228,10 @@
|
|||
}
|
||||
}
|
||||
// 日期选择器模式的转换
|
||||
if (this.Edkey == '出生日期' || this.Edkey == '入会时间') {
|
||||
if (this.Edkey == '入会时间') {
|
||||
this.timeMode = 'date'
|
||||
}else if (this.Edkey == '出生年月') {
|
||||
this.timeMode = 'year-month'
|
||||
} else {
|
||||
this.timeMode = 'time'
|
||||
}
|
||||
|
@ -398,9 +400,11 @@
|
|||
},
|
||||
birthdayConfirm(e) {
|
||||
this.showBirthday = false
|
||||
if (this.Edkey == '出生日期' || this.Edkey == '入会时间') {
|
||||
if (this.Edkey == '入会时间') {
|
||||
this.Edvalue = uni.$u.timeFormat(e.value, 'yyyy-mm-dd')
|
||||
} else {
|
||||
} else if(this.Edkey == '出生年月') {
|
||||
this.Edvalue = uni.$u.timeFormat(e.value, 'yyyy.mm')
|
||||
}else {
|
||||
this.Edvalue = e.value
|
||||
}
|
||||
},
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
</u--input>
|
||||
</u-form-item>
|
||||
<u-form-item ref="item1" @click="showBirthday=true" class="data_itm">
|
||||
<text class="label_t"><text style="color: #99241B;">*</text>出生日期</text>
|
||||
<u--input class="p32" placeholder="请填选择出生日期" v-model="model1.userInfo.birthday" readonly
|
||||
<text class="label_t"><text style="color: #99241B;">*</text>出生年月</text>
|
||||
<u--input class="p32" placeholder="请填选择出生年月" v-model="model1.userInfo.dateBirth" readonly
|
||||
inputAlign="right" border="none">
|
||||
<u-icon slot="suffix" name="calendar"></u-icon>
|
||||
</u--input>
|
||||
|
@ -220,7 +220,7 @@
|
|||
<!-- 弹框区 ed -->
|
||||
<!-- 日期选择器 -->
|
||||
<u-datetime-picker confirmColor="#99241B" :minDate="-2207520000000" :show="showBirthday"
|
||||
:value="model1.userInfo.birthday" mode="date" closeOnClickOverlay @confirm="birthdayConfirm"
|
||||
:value="model1.userInfo.dateBirth" mode="year-month" closeOnClickOverlay @confirm="birthdayConfirm"
|
||||
@close="close('showBirthday')" @cancel="close('showBirthday')">
|
||||
</u-datetime-picker>
|
||||
<!-- 日期选择器ed -->
|
||||
|
@ -338,6 +338,7 @@
|
|||
name: '',
|
||||
sex: '',
|
||||
birthday: "2000-01-01",
|
||||
dateBirth: "2000.01",
|
||||
idCOde: '',
|
||||
phoneNum: '',
|
||||
meeting: '',
|
||||
|
@ -487,7 +488,8 @@
|
|||
this.model1.userInfo.officeTel = this.userData.officeTel
|
||||
this.model1.userInfo.unitName = this.userData.unitName
|
||||
this.model1.userInfo.mailAddress = this.userData.mailAddress
|
||||
this.model1.userInfo.birthday = this.userData.birthDay
|
||||
this.model1.userInfo.birthday = this.userData.birthDay
|
||||
this.model1.userInfo.dateBirth = this.userData.dateBirth
|
||||
}
|
||||
},
|
||||
onReady() {
|
||||
|
@ -562,7 +564,7 @@
|
|||
},
|
||||
birthdayConfirm(e) {
|
||||
this.showBirthday = false
|
||||
this.model1.userInfo.birthday = uni.$u.timeFormat(e.value, 'yyyy-mm-dd')
|
||||
this.model1.userInfo.dateBirth = uni.$u.timeFormat(e.value, 'yyyy.mm')
|
||||
// this.$refs.form1.validateField('userInfo.birthday')
|
||||
},
|
||||
ServeTimeConfirm(e) {
|
||||
|
@ -747,6 +749,7 @@
|
|||
associationId: this.xiehuiId,
|
||||
base: this.jiguan,
|
||||
birthDay: that.birthday,
|
||||
dateBirth: that.dateBirth,
|
||||
cfPhoto: fl4,
|
||||
comeTime: that.jionTime,
|
||||
greats: rongyujx,
|
||||
|
@ -779,7 +782,7 @@
|
|||
member: that.member,
|
||||
}
|
||||
console.log(data)
|
||||
if (!data.userName || !data.sex || !data.birthDay || !data.images || !data.password || !data.education || !
|
||||
if (!data.userName || !data.sex || !data.dateBirth || !data.images || !data.password || !data.education || !
|
||||
data.mailAddress || !data.politics) {
|
||||
this.upLoadReady = false
|
||||
console.log(zyz)
|
||||
|
|
|
@ -1,274 +1,278 @@
|
|||
<template>
|
||||
<view class="">
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
<view class="page" v-if="load == false">
|
||||
<view class="nav">
|
||||
<view class="list" v-for="(item,index) in list" :key="index" @click="onNav(item.code,index)">
|
||||
<view :class="['text',action == index?'on':'']">{{item.text}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="addIcon" @click="toAddOrder">
|
||||
<image src="../../static/orderHall/addOrder.png"></image>
|
||||
</view>
|
||||
<view class="main" v-if="mainList.length > 0">
|
||||
<view class="mainList" v-for="(item,i) in mainList" :key="i">
|
||||
<view class="mainListImg" @click="toDetail(item.id)">
|
||||
<img class='img' :src="item.enclosure" alt="">
|
||||
<view class="imgTags" v-if="item.isBaoming">
|
||||
<u-tag text="已完成" type="success" v-if="item.hallState == '3'"></u-tag>
|
||||
<u-tag text="已逾期" type="error" v-else-if="item.hallState == '4'"></u-tag>
|
||||
<u-tag text="已接单" type="warning" v-else></u-tag>
|
||||
</view>
|
||||
<view class="imgTags" v-else>
|
||||
<u-tag text="招募中" v-if="item.hallState == '1'"></u-tag>
|
||||
<u-tag text="进行中" v-else-if="item.hallState == '2'"></u-tag>
|
||||
<u-tag text="已完成" type="success" v-else-if="item.hallState == '3'"></u-tag>
|
||||
<u-tag text="已逾期" type="error" v-else-if="item.hallState == '4'"></u-tag>
|
||||
</view>
|
||||
</view>
|
||||
<view class="text">
|
||||
<view class="text1">{{item.title}}</view>
|
||||
<view class="text2">{{item.content}}</view>
|
||||
<view class="text3">
|
||||
<img class='mainListTime' src="../../static/orderHall/mainListTime.png" alt="">
|
||||
<view class="time">截止时间:{{item.deadline}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" >
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
<view class="page" v-if="load == false">
|
||||
<view class="nav">
|
||||
<view class="list" v-for="(item, index) in list" :key="index" @click="onNav(item.code, index)">
|
||||
<view :class="['text', action == index ? 'on' : '']">{{ item.text }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="addIcon" @click="toAddOrder">
|
||||
<image src="../../static/orderHall/addOrder.png"></image>
|
||||
</view>
|
||||
<view class="main" v-if="mainList.length > 0">
|
||||
<view class="mainList" v-for="(item, i) in mainList" :key="i">
|
||||
<view class="mainListImg" @click="toDetail(item.id)">
|
||||
<img class='img' :src="item.enclosure" alt="">
|
||||
<view class="imgTags" v-if="item.isBaoming">
|
||||
<u-tag text="已完成" type="success" v-if="item.hallState == '3'"></u-tag>
|
||||
<u-tag text="已逾期" type="error" v-else-if="item.hallState == '4'"></u-tag>
|
||||
<u-tag text="已接单" type="warning" v-else></u-tag>
|
||||
</view>
|
||||
<view class="imgTags" v-else>
|
||||
<u-tag text="招募中" v-if="item.hallState == '1'"></u-tag>
|
||||
<u-tag text="进行中" v-else-if="item.hallState == '2'"></u-tag>
|
||||
<u-tag text="已完成" type="success" v-else-if="item.hallState == '3'"></u-tag>
|
||||
<u-tag text="已逾期" type="error" v-else-if="item.hallState == '4'"></u-tag>
|
||||
</view>
|
||||
</view>
|
||||
<view class="text">
|
||||
<view class="text1">{{ item.title }}</view>
|
||||
<view class="text2">{{ item.content }}</view>
|
||||
<view class="text3">
|
||||
<img class='mainListTime' src="../../static/orderHall/mainListTime.png" alt="">
|
||||
<view class="time">截止时间:{{ item.deadline }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
load:true,
|
||||
list: [{
|
||||
text: '全部',
|
||||
code: ''
|
||||
},
|
||||
{
|
||||
text: '订购',
|
||||
code: 'order'
|
||||
},
|
||||
{
|
||||
text: '公益',
|
||||
code: 'gy'
|
||||
},
|
||||
{
|
||||
text: '演出',
|
||||
code: 'show'
|
||||
},
|
||||
{
|
||||
text: '其他',
|
||||
code: 'other'
|
||||
}
|
||||
],
|
||||
mainList: [],
|
||||
action: 0,
|
||||
pages: 1,
|
||||
size: 20,
|
||||
type: '',
|
||||
}
|
||||
},
|
||||
// 下拉刷新
|
||||
onPullDownRefresh() {
|
||||
this.pages = 1
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
setTimeout(function() {
|
||||
uni.stopPullDownRefresh();
|
||||
}, 1000);
|
||||
},
|
||||
//上拉
|
||||
onReachBottom() {
|
||||
this.pages++
|
||||
this.getData();
|
||||
},
|
||||
onShow() {
|
||||
this.pages = 1
|
||||
this.load = true
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData() {
|
||||
let _this = this
|
||||
this.http.request('/hall/list', {
|
||||
page: this.pages,
|
||||
size: this.size,
|
||||
type: this.type,
|
||||
}, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
if(res.data.records.length > 0){
|
||||
res.data.records.forEach(function(item){
|
||||
if (item.enclosure) {
|
||||
let fileArr = item.enclosure.split(',')
|
||||
let gs = fileArr[0].substr(fileArr[0].lastIndexOf(".") + 1)
|
||||
if (gs == 'jpg' || gs == 'jpeg' || gs == 'png' || gs == 'bmp' || gs == 'gif' || gs == 'tif' || gs == 'tiff') {
|
||||
item.enclosure = fileArr[0]
|
||||
}
|
||||
else if (gs == 'pdf') {
|
||||
item.enclosure = '../../static/fileImg/pdfB.png'
|
||||
}
|
||||
}
|
||||
_this.mainList.push(item)
|
||||
})
|
||||
}else{
|
||||
this.pages--
|
||||
}
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
onNav(val, index) {
|
||||
this.action = index
|
||||
this.type = val
|
||||
this.pages = 1
|
||||
this.load = true
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
},
|
||||
toDetail(val){
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/orderHall/orderHallDetails?id=` + val
|
||||
})
|
||||
},
|
||||
toAddOrder(){
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/orderHall/addOrder`
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
load: true,
|
||||
list: [{
|
||||
text: '全部',
|
||||
code: ''
|
||||
},
|
||||
{
|
||||
text: '订购',
|
||||
code: 'order'
|
||||
},
|
||||
{
|
||||
text: '公益',
|
||||
code: 'gy'
|
||||
},
|
||||
{
|
||||
text: '演出',
|
||||
code: 'show'
|
||||
},
|
||||
{
|
||||
text: '其他',
|
||||
code: 'other'
|
||||
}
|
||||
],
|
||||
mainList: [],
|
||||
action: 0,
|
||||
pages: 1,
|
||||
size: 20,
|
||||
type: '',
|
||||
}
|
||||
},
|
||||
// 下拉刷新
|
||||
onPullDownRefresh () {
|
||||
this.pages = 1
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
setTimeout(function () {
|
||||
uni.stopPullDownRefresh();
|
||||
}, 1000);
|
||||
},
|
||||
//上拉
|
||||
onReachBottom () {
|
||||
this.pages++
|
||||
this.getData();
|
||||
},
|
||||
onShow () {
|
||||
this.pages = 1
|
||||
this.load = true
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
let _this = this
|
||||
this.http.request('/hall/list', {
|
||||
page: this.pages,
|
||||
size: this.size,
|
||||
type: this.type,
|
||||
}, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
if (res.data.records.length > 0) {
|
||||
res.data.records.forEach(function (item) {
|
||||
if (item.enclosure) {
|
||||
let fileArr = item.enclosure.split(',')
|
||||
let gs = fileArr[0].substr(fileArr[0].lastIndexOf(".") + 1)
|
||||
if (gs == 'jpg' || gs == 'jpeg' || gs == 'png' || gs == 'bmp' || gs == 'gif' || gs == 'tif' || gs == 'tiff') {
|
||||
item.enclosure = fileArr[0]
|
||||
}
|
||||
else if (gs == 'pdf') {
|
||||
item.enclosure = '../../static/fileImg/pdfB.png'
|
||||
}
|
||||
}
|
||||
_this.mainList.push(item)
|
||||
})
|
||||
} else {
|
||||
this.pages--
|
||||
}
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
onNav (val, index) {
|
||||
this.action = index
|
||||
this.type = val
|
||||
this.pages = 1
|
||||
this.load = true
|
||||
this.mainList = []
|
||||
this.getData()
|
||||
},
|
||||
toDetail (val) {
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/orderHall/orderHallDetails?id=` + val
|
||||
})
|
||||
},
|
||||
toAddOrder () {
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/orderHall/addOrder`
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
page{
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
image{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.on {
|
||||
font-weight: 600;
|
||||
}
|
||||
page {
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
|
||||
.page {
|
||||
.nav {
|
||||
display: flex;
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.list {
|
||||
width: 20%;
|
||||
height: 76rpx;
|
||||
background: #FFFFFF;
|
||||
.on {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.text {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #251B1D;
|
||||
line-height: 70rpx;
|
||||
text-align: center;
|
||||
position: relative;
|
||||
.page {
|
||||
.nav {
|
||||
display: flex;
|
||||
|
||||
&.on::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
height: 6rpx;
|
||||
background: #9A2720;
|
||||
width: 39%;
|
||||
left: 50%;
|
||||
bottom: 0;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.list {
|
||||
width: 20%;
|
||||
height: 76rpx;
|
||||
background: #FFFFFF;
|
||||
|
||||
.main {
|
||||
padding: 32rpx;
|
||||
// background-color: #F4F5F7;
|
||||
.text {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #251B1D;
|
||||
line-height: 70rpx;
|
||||
text-align: center;
|
||||
position: relative;
|
||||
|
||||
.mainList {
|
||||
margin-bottom: 32rpx;
|
||||
border-radius: 16rpx;
|
||||
overflow: hidden;
|
||||
&.on::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
height: 6rpx;
|
||||
background: #9A2720;
|
||||
width: 39%;
|
||||
left: 50%;
|
||||
bottom: 0;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mainListImg {
|
||||
height: 400rpx;
|
||||
position: relative;
|
||||
.img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.imgTags{
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
}
|
||||
.main {
|
||||
padding: 32rpx;
|
||||
// background-color: #F4F5F7;
|
||||
|
||||
.text {
|
||||
padding: 32rpx;
|
||||
background-color: #FFF;
|
||||
.mainList {
|
||||
margin-bottom: 32rpx;
|
||||
border-radius: 16rpx;
|
||||
overflow: hidden;
|
||||
|
||||
.text1 {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
margin-bottom: 5rpx;
|
||||
}
|
||||
.mainListImg {
|
||||
height: 400rpx;
|
||||
position: relative;
|
||||
|
||||
.text2 {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
.img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.text3 {
|
||||
display: flex;
|
||||
margin-top: 16rpx;
|
||||
.imgTags {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.mainListTime {
|
||||
width: 26rpx;
|
||||
height: 26rpx;
|
||||
margin-top: 4rpx;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
.text {
|
||||
padding: 32rpx;
|
||||
background-color: #FFF;
|
||||
|
||||
.time {
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.addIcon{
|
||||
position: fixed;
|
||||
right: 24rpx;
|
||||
bottom: 242rpx;
|
||||
width: 104rpx;
|
||||
height: 104rpx;
|
||||
border-radius: 50%;
|
||||
z-index: 999;
|
||||
}
|
||||
}
|
||||
.text1 {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
margin-bottom: 5rpx;
|
||||
}
|
||||
|
||||
.text2 {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
|
||||
.text3 {
|
||||
display: flex;
|
||||
margin-top: 16rpx;
|
||||
|
||||
.mainListTime {
|
||||
width: 26rpx;
|
||||
height: 26rpx;
|
||||
margin-top: 4rpx;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.addIcon {
|
||||
position: fixed;
|
||||
right: 24rpx;
|
||||
bottom: 242rpx;
|
||||
width: 104rpx;
|
||||
height: 104rpx;
|
||||
border-radius: 50%;
|
||||
z-index: 999;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -119,7 +119,7 @@
|
|||
</view>
|
||||
</view>
|
||||
<!-- 取消报名-原因 -->
|
||||
<u-popup :show="showB" mode="center" :round="10" @close="closeZ">
|
||||
<u-popup :show="showB" mode="center" :round="10" @close="closeZ" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 36rpx; font-weight: 800;">
|
||||
|
@ -142,7 +142,7 @@
|
|||
</view>
|
||||
</u-popup>
|
||||
<!-- 取消报名-确认 -->
|
||||
<u-popup :show="showS" mode="center" :round="10" @close="closeS">
|
||||
<u-popup :show="showS" mode="center" :round="10" @close="closeS" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 32rpx; font-weight: 800;">
|
||||
|
@ -162,7 +162,7 @@
|
|||
</view>
|
||||
</u-popup>
|
||||
<!-- 报名-确认 -->
|
||||
<u-popup :show="showH" mode="center" :round="10" @close="closeH">
|
||||
<u-popup :show="showH" mode="center" :round="10" @close="closeH" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 32rpx; font-weight: 800;">
|
||||
|
|
|
@ -1,189 +1,327 @@
|
|||
<template>
|
||||
<view>
|
||||
|
||||
<view class="search_box">
|
||||
<u-search height=42 margin="12px 0" searchIconColor="black" bgColor="#f8f8f8" searchIconSize="40rpx"
|
||||
shape="square" :showAction="false" v-model="dataVal" placeholder="请输入资料名称"></u-search>
|
||||
<view class="car_box" v-if="false">
|
||||
<image src="../../static/DataSearch/chexboxs.png" mode=""></image>
|
||||
<text style="font-size: 20rpx;">选择</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
<view class="itm" v-for="(v,i) in folderList" :key="i">
|
||||
<view class="fileImg">
|
||||
<image src="../../static/DataSearch/Floder.png" mode=""></image>
|
||||
</view>
|
||||
<view class="data_detail_box" @click="GofileDetail(i)">
|
||||
|
||||
<view class="file_title">
|
||||
{{v.folderName}}
|
||||
<view v-if="!load">
|
||||
<view class="search_box">
|
||||
<view style="width: 100rpx; text-align: center;" @click="backTo()">
|
||||
返回
|
||||
</view>
|
||||
<view class="file_time">
|
||||
2021-12-18 17:08
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<view class="moreImg" @click="clickDot(i)" style="position: relative;" :ref="'tankuang'+String(i)">
|
||||
<image src="../../static/DataSearch/moreFCUN.png" mode=""></image>
|
||||
<view class="poup_edit_box" v-if="i===dotNum">
|
||||
<view class="poup_edit" @click="editDir">
|
||||
<image style="width: 32rpx;height: 32rpx; margin-right: 4rpx;"
|
||||
src="../../static/DataSearch/dirEdit.png" mode="">
|
||||
</image> 编辑目录
|
||||
<u-search height=42 margin="12px 0" searchIconColor="black" bgColor="#f8f8f8" searchIconSize="40rpx"
|
||||
shape="square" :showAction="false" v-model="dataVal" placeholder="请输入资料名称"></u-search>
|
||||
<view class="car_box " @click="isSelect=false">
|
||||
<view class="dd" v-if="isSelect">
|
||||
<image src="../../static/DataSearch/chexboxs.png" mode=""></image>
|
||||
</view>
|
||||
<view class="poup_del" @click="delDir">
|
||||
<image style="width: 32rpx; height: 32rpx;margin-right: 4rpx;"
|
||||
src="../../static/DataSearch/dirDel.png" mode="">
|
||||
</image> 删除目录
|
||||
<view class="dd" v-if="!isSelect" @click="moreSelected">
|
||||
<checkbox-group @change="allChoose">
|
||||
<label class="wr"
|
||||
style="display: flex; flex-direction: column;align-items: center; justify-content: space-around;">
|
||||
<checkbox value="all" :checked="allChecked?true:false" />
|
||||
<text style="font-size: 15rpx;margin-top: 8rpx;">全选</text>
|
||||
</label>
|
||||
</checkbox-group>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="moreImg" v-if="false">
|
||||
<image src="../../static/DataSearch/radioImg.png" v-if="false" mode=""></image>
|
||||
<view class="itm" v-for="(v,i) in folderList" :key="i">
|
||||
<view class="fileImg">
|
||||
<image src="../../static/DataSearch/Floder.png" mode=""></image>
|
||||
</view>
|
||||
<view class="data_detail_box" @click="GofileDetail(v.id)">
|
||||
<view class="file_title">
|
||||
{{ v.name }}
|
||||
</view>
|
||||
<view class="file_time">
|
||||
{{ v.createdAt }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="moreImg" @click="clickDot(v.id)" style="position: relative;">
|
||||
<image src="../../static/DataSearch/moreFCUN.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<checkbox-group @change="changeCheckbox">
|
||||
<view class="itm" v-for="(item,index) in checkboxData" :key="item.id">
|
||||
<view class="fileImg">
|
||||
<image :src="item.url" mode="" v-if="item.type == 'photo'"></image>
|
||||
<image src="../../static/DataSearch/TxtImg.png" mode="" v-else-if="item.type == 'txt'"></image>
|
||||
<image src="../../static/DataSearch/musicImg.png" mode="" v-else-if="item.type == 'music'">
|
||||
</image>
|
||||
<image src="../../static/DataSearch/other.png" mode="" v-else></image>
|
||||
</view>
|
||||
<view class="data_detail_box">
|
||||
<view class="file_title">
|
||||
<!-- 资料查找 -->
|
||||
{{ item.name }}
|
||||
</view>
|
||||
<view class="file_time">
|
||||
{{ item.createdAt }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="moreImg" v-if="isSelect" @click="delFile(item.id)">
|
||||
<image src="../../static/DataSearch/dirDel.png" mode=""></image>
|
||||
</view>
|
||||
<view class="moreImg" style="width: 32rpx;height: 32rpx;" v-if="!isSelect">
|
||||
<label class="wr">
|
||||
<checkbox :value="item.id" :checked="checkedArr.includes(item.id)" />
|
||||
</label>
|
||||
</view>
|
||||
</view>
|
||||
</checkbox-group>
|
||||
<view class="bottm" @click="show=!show">
|
||||
<image src="../../static/orderHall/addOrder.png" mode=""></image>
|
||||
</view>
|
||||
<!-- 底部对文件的操作栏 -->
|
||||
<view class="bottom_tab" v-if="!isSelect">
|
||||
<view class="bottom_yx">
|
||||
<!-- <view class="bottom_tab_itm" @click="downLoadAll()">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/dowmSelected.png" mode=""></image>
|
||||
</view>
|
||||
<view class="bottom_tab_itm_txt">
|
||||
下载
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="bottom_tab_itm" @click="delAll()">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/Deletselected.png" mode=""></image>
|
||||
</view>
|
||||
<view class="bottom_tab_itm_txt">
|
||||
删除
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部对文件的操作栏 ed -->
|
||||
<!-- 加号弹出框 -->
|
||||
<u-popup :show="show" closeOnClickOverlay @close="() => show = false" round=5>
|
||||
<view class="tan_con">
|
||||
<view class="tit">
|
||||
新建/上传
|
||||
</view>
|
||||
<view class="up_itm_box">
|
||||
<view class="img_itm" @click="addDir(0)">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/Floder.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
新建文件夹
|
||||
</view>
|
||||
</view>
|
||||
<view class="img_itm" @click="addDir(1)">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadImg.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
上传文件
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</u-popup>
|
||||
<!-- 加号 ed -->
|
||||
<!-- 三个点 中 删除目录 的弹出确认删除 -->
|
||||
<u-modal width="550rpx" confirmText="确认删除" confirmColor='#E34D59' :show="showModel" showCancelButton
|
||||
@confirm="confirmModel" @cancel="() => showModel = false">
|
||||
<text style="font-size: 32rpx; font-weight: 600;color: #251B1D;margin: 25rpx 0;">确认删除目录</text>
|
||||
</u-modal>
|
||||
<!-- 三个点ed -->
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<view class="bottm" @click="show=!show">
|
||||
<image src="../../static/orderHall/addOrder.png" mode=""></image>
|
||||
</view>
|
||||
|
||||
<!-- 加号弹出框 -->
|
||||
|
||||
<u-popup :show="show" closeOnClickOverlay @close="() => show = false" @open="open" round=5>
|
||||
<view class="tan_con">
|
||||
<view class="tit">
|
||||
上传文件
|
||||
</view>
|
||||
<view class="up_itm_box">
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadImg.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
上传图片
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/uploadDoc.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
上传文档
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadVideo.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
上传视频
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadMusic.png" mode=""></image>
|
||||
</view>
|
||||
<view class="Up_tit">
|
||||
上传音频
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</u-popup>
|
||||
<!-- 加号 ed -->
|
||||
<!-- 三个点 中 删除目录 的弹出确认删除 -->
|
||||
<u-modal width="550rpx" confirmText="确认删除" confirmColor='#E34D59' :show="showModel" showCancelButton
|
||||
@confirm="confirmModel" @cancel="() => showModel = false">
|
||||
<text style="font-size: 32rpx; font-weight: 600;color: #251B1D;margin: 25rpx 0;">确认删除目录</text>
|
||||
</u-modal>
|
||||
|
||||
<!-- 三个点ed -->
|
||||
|
||||
|
||||
</view>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
load: true,
|
||||
isSelect: true,
|
||||
dirIds: '',
|
||||
tempNum: '',
|
||||
dataVal: "",
|
||||
show: false,
|
||||
showDir: false,
|
||||
allChecked: false,
|
||||
listDir: [{
|
||||
name: '删除文件夹'
|
||||
}],
|
||||
dotNum: '',
|
||||
showModel: false,
|
||||
folderList: [{
|
||||
id: 1,
|
||||
folderName: "资料查找"
|
||||
}, {
|
||||
id: 2,
|
||||
folderName: "珍贵资料"
|
||||
}, {
|
||||
id: 3,
|
||||
folderName: "影音文件夹"
|
||||
}, {
|
||||
id: 4,
|
||||
folderName: "怀旧文件夹"
|
||||
}, {
|
||||
id: 5,
|
||||
folderName: "资料查找"
|
||||
}]
|
||||
|
||||
folderList: [],
|
||||
checkboxData: [],
|
||||
pages: 1,
|
||||
size: 20,
|
||||
checkedArr: [], //复选框选中的值
|
||||
parentId: '',
|
||||
oldID: [],
|
||||
};
|
||||
},
|
||||
// onLoad() {
|
||||
// this.getList()
|
||||
// },
|
||||
onShow() {
|
||||
this.folderList = []
|
||||
this.checkboxData = []
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 删除文件夹
|
||||
confirmModel() {
|
||||
this.showModel = false;
|
||||
console.log("++++++",this);
|
||||
// this 打印不出来 ref 无法用
|
||||
this.http.request('/information/delete?ids=' + this.dotNum, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.showModel = false
|
||||
this.pages = 1
|
||||
this.folderList = []
|
||||
this.checkboxData = []
|
||||
this.load = false
|
||||
this.showDir = false
|
||||
this.getList()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
},
|
||||
clickDot(num) {
|
||||
this.dotNum = num
|
||||
this.tempNum = Number(num)
|
||||
this.delDir()
|
||||
// this.showDir = true
|
||||
},
|
||||
editDir() {
|
||||
|
||||
uni.showToast({
|
||||
title: "编辑目录"
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
delDir() {
|
||||
|
||||
delFile(index) {
|
||||
this.dotNum = index
|
||||
this.showModel = true
|
||||
},
|
||||
selectClick(index) {
|
||||
if (index.name == '编辑文件夹') {
|
||||
|
||||
} else {
|
||||
this.delDir()
|
||||
}
|
||||
},
|
||||
delDir() {
|
||||
this.showModel = true
|
||||
},
|
||||
moreSelected() {
|
||||
this.allSelect = !this.allSelect
|
||||
},
|
||||
// 多选复选框改变事件
|
||||
changeCheckbox(e) {
|
||||
this.checkedArr = e.detail.value;
|
||||
// 如果选择的数组中有值,并且长度等于列表的长度,就是全选
|
||||
if (this.checkedArr.length > 0 && this.checkedArr.length == this.checkboxData.length) {
|
||||
this.allChecked = true;
|
||||
} else {
|
||||
this.allChecked = false;
|
||||
}
|
||||
},
|
||||
// 全选事件
|
||||
allChoose(e) {
|
||||
let chooseItem = e.detail.value;
|
||||
// 全选
|
||||
if (chooseItem[0] == 'all') {
|
||||
this.allChecked = true;
|
||||
for (let item of this.checkboxData) {
|
||||
let itemVal = item.id;
|
||||
if (!this.checkedArr.includes(itemVal)) {
|
||||
this.checkedArr.push(itemVal);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 取消全选
|
||||
this.allChecked = false;
|
||||
this.checkedArr = [];
|
||||
}
|
||||
},
|
||||
// 下载
|
||||
// outList() {
|
||||
// let urlPath = http.config.baseUrl + '/activityUser/sign_export/' + this.activityId + '/' + this.type
|
||||
// const token = uni.getStorageSync('token')
|
||||
// if (this.isWx) {
|
||||
// wx.downloadFile({
|
||||
// url: urlPath, //仅为示例,并非真实的资源
|
||||
// header: {
|
||||
// 'Authorization': "Bearer " + token,
|
||||
// 'x-token': token
|
||||
// },
|
||||
// success(res) {
|
||||
// // 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
|
||||
// if (res.statusCode === 200) {
|
||||
// const filePath = res.tempFilePath;
|
||||
// wx.openDocument({
|
||||
// filePath: filePath,
|
||||
// showMenu: true,
|
||||
// success: function(res) {
|
||||
// console.log(res, '打开文档成功');
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
// } else {
|
||||
// window.location.href = urlPath
|
||||
// }
|
||||
// }
|
||||
delAll() {
|
||||
this.dotNum = this.checkedArr.join(',')
|
||||
this.confirmModel()
|
||||
},
|
||||
GofileDetail(id) {
|
||||
|
||||
uni.navigateTo({
|
||||
url: "/pagesC/folderDetail/folderDetail?id=" + String(id)
|
||||
this.oldID.push(this.parentId)
|
||||
console.log(this.oldID)
|
||||
this.parentId = id
|
||||
this.dirIds = id
|
||||
this.folderList = []
|
||||
this.checkboxData = []
|
||||
this.getList()
|
||||
},
|
||||
backTo(){
|
||||
this.parentId = this.oldID.slice(-1).join(',')
|
||||
this.dirIds = this.oldID.slice(-1).join(',')
|
||||
this.oldID.splice(-1,1)
|
||||
this.folderList = []
|
||||
this.checkboxData = []
|
||||
this.getList()
|
||||
},
|
||||
addDir(val) {
|
||||
if (val == '0') {
|
||||
uni.navigateTo({
|
||||
url: "/pagesC/DataSearch/addNew?id=" + this.parentId
|
||||
})
|
||||
} else if (val == '1') {
|
||||
uni.navigateTo({
|
||||
url: "/pagesC/DataSearch/upload?id=" + this.parentId
|
||||
})
|
||||
}
|
||||
},
|
||||
getList() {
|
||||
let that = this
|
||||
let par = {
|
||||
dirIds: this.dirIds,
|
||||
name: this.dataVal
|
||||
}
|
||||
this.http.request('/information/list', par, "GET").then(res => {
|
||||
if (res.code == 200) {
|
||||
res.data.records.forEach(item => {
|
||||
if (item.type == 'dir') {
|
||||
that.folderList.push(item)
|
||||
} else {
|
||||
that.checkboxData.push(item)
|
||||
}
|
||||
})
|
||||
this.load = false
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@ -195,14 +333,19 @@
|
|||
|
||||
.search_box {
|
||||
padding: 32rpx;
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
box-sizing: border-box;
|
||||
|
||||
.car_box {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-left: 12px;
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
margin-left: 24rpx;
|
||||
|
||||
.dd {
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -279,6 +422,36 @@
|
|||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bottom_tab {
|
||||
height: 170rpx;
|
||||
// border: 1px solid red;
|
||||
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
|
||||
.bottom_yx {
|
||||
color: $black;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
background-color: #F7F7F7;
|
||||
height: 170rpx;
|
||||
|
||||
.bottom_tab_itm {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.bottom_tab_itm_img {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.tan_con {
|
||||
|
@ -317,4 +490,4 @@
|
|||
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</style>
|
|
@ -0,0 +1,64 @@
|
|||
<template>
|
||||
<view style="margin: 0rpx 48rpx;">
|
||||
<view class="">
|
||||
<u--input placeholder="请输入文件夹名称" clearable v-model="registInfo.name">
|
||||
</u--input>
|
||||
</view>
|
||||
<view style="margin-top: 80rpx;">
|
||||
<u-button text="确认" size="large" color="#99241B"
|
||||
@click="submitNext"></u-button>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
tips: '',
|
||||
registInfo: {
|
||||
name: '',
|
||||
userRole: 'zyz,wyrc',
|
||||
parentId: '',
|
||||
isExtent: '',
|
||||
dirIds: '/',
|
||||
}
|
||||
};
|
||||
},
|
||||
onLoad(op) {
|
||||
this.registInfo.parentId = op.id
|
||||
if(op.id){
|
||||
this.registInfo.dirIds = op.id
|
||||
}else{
|
||||
this.registInfo.dirIds = '/'
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
submitNext() {
|
||||
let data = {
|
||||
name: this.registInfo.name,
|
||||
userRole: this.registInfo.userRole,
|
||||
parentId: this.registInfo.parentId,
|
||||
dirIds: this.registInfo.dirIds,
|
||||
}
|
||||
this.http.request('/information/add', data, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.data_itm {
|
||||
margin: 30rpx 0px;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,246 @@
|
|||
<template>
|
||||
<view class="">
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
名称
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<u--input placeholder="请输入名称" v-model="name" clearable border="none" inputAlign="right"
|
||||
style="color: #251B1D;">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
类型
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<u--input placeholder="请输入类型" v-model="text2" clearable border="none" inputAlign="right"
|
||||
style="color: #251B1D;">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<view class="gap">
|
||||
文件上传
|
||||
</view>
|
||||
<u-upload v-if="isWx" class="upload" width="172rpx" height="172rpx" :fileList="fileList3" accept="all"
|
||||
@afterRead="afterRead" @delete="deletePic" name="3" multiple :maxCount="1">
|
||||
<image style="width: 172rpx;height: 172rpx;" src="../../static/improveData/jia.png"></image>
|
||||
</u-upload>
|
||||
<u-upload v-else class="upload" width="172rpx" height="172rpx" :fileList="fileList3" accept="file"
|
||||
@afterRead="afterRead" @delete="deletePic" name="3" multiple :maxCount="1">
|
||||
<image style="width: 172rpx;height: 172rpx;" src="../../static/improveData/jia.png"></image>
|
||||
</u-upload>
|
||||
|
||||
<view class="operation" @click="next">
|
||||
发布
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import http from '../../request/interface.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
id: '',
|
||||
name: '',
|
||||
text2: '',
|
||||
fileList3: [],
|
||||
ok: true,
|
||||
isWx: true,
|
||||
}
|
||||
},
|
||||
onLoad(op){
|
||||
if(op.id){
|
||||
this.id = op.id
|
||||
}else{
|
||||
this.id = '/'
|
||||
}
|
||||
},
|
||||
onReady() {
|
||||
|
||||
// #ifdef MP-WEIXIN
|
||||
this.isWx = true
|
||||
// #endif
|
||||
|
||||
// #ifndef MP-WEIXIN
|
||||
//除了小程序
|
||||
this.isWx = false
|
||||
// #endif
|
||||
},
|
||||
methods: {
|
||||
// 删除图片
|
||||
deletePic(event) {
|
||||
this[`fileList${event.name}`].splice(event.index, 1)
|
||||
},
|
||||
// 新增图片
|
||||
async afterRead(event) {
|
||||
// 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
|
||||
let lists = [].concat(event.file)
|
||||
let fileListLen = this[`fileList${event.name}`].length
|
||||
lists.map((item) => {
|
||||
this[`fileList${event.name}`].push({
|
||||
...item,
|
||||
status: 'uploading',
|
||||
message: '上传中'
|
||||
})
|
||||
})
|
||||
for (let i = 0; i < lists.length; i++) {
|
||||
const result = await this.uploadFilePromise(lists[i].url)
|
||||
let item = this[`fileList${event.name}`][fileListLen]
|
||||
this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
|
||||
status: 'success',
|
||||
message: '',
|
||||
url: result
|
||||
}))
|
||||
fileListLen++
|
||||
}
|
||||
},
|
||||
uploadFilePromise(url) {
|
||||
let token = uni.getStorageSync('token');
|
||||
return new Promise((resolve, reject) => {
|
||||
let a = uni.uploadFile({
|
||||
url: http.config.baseUrl + '/file/uploadUnlimited',
|
||||
filePath: url,
|
||||
name: 'file',
|
||||
formData: {
|
||||
user: 'test'
|
||||
},
|
||||
header: {
|
||||
"X-Token": token
|
||||
},
|
||||
success: (res) => {
|
||||
if (JSON.parse(res.data).code == 200) {
|
||||
setTimeout(() => {
|
||||
resolve(JSON.parse(res.data).data.path)
|
||||
}, 1000)
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: JSON.parse(res.data).message,
|
||||
icon: "none",
|
||||
});
|
||||
this.fileList3.pop()
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
next() {
|
||||
this.ok = true
|
||||
if(this.name == ''){
|
||||
uni.showToast({
|
||||
title: '请输入名称',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.text2 == ''){
|
||||
uni.showToast({
|
||||
title: '请输入类型',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.fileList3.length == 0){
|
||||
uni.showToast({
|
||||
title: '请上传文件',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if(this.ok){
|
||||
let image = []
|
||||
this.fileList3.forEach(function(item) {
|
||||
image.push(item.url)
|
||||
})
|
||||
let data = image.join(',')
|
||||
this.http.request('/information/upload?dirIds=' + this.id + '&type=' + this.text2 + '&name=' + this.name + '&url=' + data , {}, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
</style>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
/deep/ .uni-icons{
|
||||
display: none;
|
||||
}
|
||||
/deep/ .uni-date-x{
|
||||
text-align: right;
|
||||
padding: 0;
|
||||
}
|
||||
.form_line {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
border-bottom: 1rpx solid #dadbde;
|
||||
|
||||
.form_right {
|
||||
width: 450rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.form_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
}
|
||||
|
||||
.text_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
}
|
||||
|
||||
.gap {
|
||||
color: #AFADB0;
|
||||
background: #F5F5F5;
|
||||
opacity: 1;
|
||||
padding: 10rpx 32rpx;
|
||||
font-size: 32rpx;
|
||||
}
|
||||
::v-deep .u-upload__wrap {
|
||||
padding: 32rpx;
|
||||
}
|
||||
|
||||
.upload {
|
||||
padding: 32rpx;
|
||||
}
|
||||
|
||||
.operation {
|
||||
width: 654rpx;
|
||||
height: 96rpx;
|
||||
margin: 32rpx 48rpx 48rpx;
|
||||
text-align: center;
|
||||
line-height: 96rpx;
|
||||
background-color: #99241B;
|
||||
color: #fff;
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
}
|
||||
</style>
|
|
@ -21,7 +21,7 @@
|
|||
</view>
|
||||
</view>
|
||||
<!-- 确认 -->
|
||||
<u-popup :show="show" mode="center" :round="10" @close="close">
|
||||
<u-popup :show="show" mode="center" :round="10" @close="close" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx;">
|
||||
<view style="padding: 32rpx;">
|
||||
<view style="font-size: 36rpx; font-weight: 800;">
|
||||
|
@ -37,7 +37,7 @@
|
|||
<view style="width: 319rpx; border-right:1rpx solid #E7E7E7; text-align: center;" @click="close">
|
||||
取消
|
||||
</view>
|
||||
<view style="width: 319rpx; border-right:1rpx solid #E7E7E7; text-align: center; color: #99241B;"
|
||||
<view style="width: 319rpx; border-left:1rpx solid #E7E7E7; text-align: center; color: #99241B;"
|
||||
@click="sure">
|
||||
确定
|
||||
</view>
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
<template>
|
||||
<view>
|
||||
|
||||
<view class="search_box">
|
||||
|
||||
<u-search height=42 margin="12px 0" searchIconColor="black" bgColor="#f8f8f8" searchIconSize="40rpx"
|
||||
shape="square" :showAction="false" v-model="dataVal" placeholder="请输入资料名称"></u-search>
|
||||
<view class="car_box " @click="isSelect=false">
|
||||
|
@ -11,26 +9,21 @@
|
|||
<text style="font-size: 20rpx;">选择</text>
|
||||
</view>
|
||||
<view class="dd" v-if="!isSelect" @click="moreSelected">
|
||||
|
||||
<checkbox-group @change="allChoose">
|
||||
<label class="wr" style="display: flex; flex-direction: column;align-items: center; justify-content: space-around;">
|
||||
<checkbox value="all" :checked="allChecked?true:false" />
|
||||
<text style="font-size: 15rpx;margin-top: 8rpx;">全选</text>
|
||||
</label>
|
||||
</checkbox-group>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<checkbox-group @change="changeCheckbox">
|
||||
<view class="itm" v-for="(item,index) in checkboxData" :key="item.value">
|
||||
<view class="fileImg">
|
||||
<image src="../../static/DataSearch/musicImg.png" mode=""></image>
|
||||
</view>
|
||||
<view class="data_detail_box">
|
||||
|
||||
<view class="file_title">
|
||||
<!-- 资料查找 -->
|
||||
{{item.label}}
|
||||
|
@ -38,27 +31,19 @@
|
|||
<view class="file_time">
|
||||
2021-12-18 17:08 220KB
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<view class="moreImg" v-if="isSelect" @click="delFile(index)">
|
||||
<image src="../../static/DataSearch/dirDel.png" mode=""></image>
|
||||
</view>
|
||||
|
||||
<view class="moreImg" style="width: 32rpx;height: 32rpx;" v-if="!isSelect">
|
||||
|
||||
<label class="wr">
|
||||
<checkbox :value="String(item.value)" :checked="checkedArr.includes(String(item.value))" />
|
||||
</label>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</checkbox-group>
|
||||
|
||||
|
||||
<!-- 底部对文件的操作栏 -->
|
||||
<view class="bottom_tab" v-if="!isSelect">
|
||||
|
||||
<view class="bottom_wx" v-if="checkedArr.length > 0 ? false: true">
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
|
@ -68,8 +53,6 @@
|
|||
下载
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/share.png" mode=""></image>
|
||||
|
@ -78,7 +61,6 @@
|
|||
分享
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/Delet.png" mode=""></image>
|
||||
|
@ -88,8 +70,6 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="bottom_yx" v-if="checkedArr.length > 0">
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
|
@ -99,17 +79,7 @@
|
|||
下载
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/shareSelected.png" mode=""></image>
|
||||
</view>
|
||||
<view class="bottom_tab_itm_txt">
|
||||
分享
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="bottom_tab_itm">
|
||||
<view class="bottom_tab_itm_img">
|
||||
<image src="../../static/DataSearch/Deletselected.png" mode=""></image>
|
||||
|
@ -121,17 +91,10 @@
|
|||
</view>
|
||||
</view>
|
||||
<!-- 底部对文件的操作栏 ed -->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<view class="bottm" @click="zhanKai">
|
||||
<image src="../../static/orderHall/addOrder.png" mode=""></image>
|
||||
</view>
|
||||
|
||||
<!-- 弹出框 加号的弹出框-->
|
||||
|
||||
<u-popup :show="show" closeOnClickOverlay @close="() => show = false" @open="open" round=5>
|
||||
<view class="tan_con">
|
||||
<view class="tit">
|
||||
|
@ -147,8 +110,6 @@
|
|||
上传图片
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/uploadDoc.png" mode=""></image>
|
||||
|
@ -157,7 +118,6 @@
|
|||
上传文档
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadVideo.png" mode=""></image>
|
||||
|
@ -166,7 +126,6 @@
|
|||
上传视频
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="img_itm">
|
||||
<view class="img">
|
||||
<image src="../../static/DataSearch/UploadMusic.png" mode=""></image>
|
||||
|
@ -184,9 +143,7 @@
|
|||
@confirm="fileOprModelConfirm" @cancel="() => showModel = false">
|
||||
<text style="font-size: 32rpx; font-weight: 600;color: #251B1D;margin: 25rpx 0;">确认删除文件</text>
|
||||
</u-modal>
|
||||
|
||||
<!-- 三个点ed -->
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
|
|
@ -25,7 +25,8 @@
|
|||
<view class="codeTitle">公众号链接/二维码</view>
|
||||
<view class="codeImg">
|
||||
<view class="codeEle">
|
||||
<uqrcode :id="'uQRCode'+index" ref="uQRCode0" :size='QRsize' :text='item' />
|
||||
<uqrcode ref="uQRCode" canvas-id="uQRCode" :value="item.text" :size="QRsize" :start="true" :auto="true"></uqrcode>
|
||||
<!-- <uqrcode :id="'uQRCode'+index" ref="uQRCode0" :size='QRsize' :text='item' /> -->
|
||||
<!-- <image src="../../static/icon12.jpg" mode="" class="code"></image> -->
|
||||
</view>
|
||||
<view class="remark">
|
||||
|
@ -49,7 +50,11 @@
|
|||
opCalue: 0,
|
||||
pageTitle: "媒体宣传",
|
||||
QRsize: 136,
|
||||
QRlist: ['https://www.uviewui.com/components/tooltip.html']
|
||||
QRlist: [
|
||||
{
|
||||
text: 'https://www.uviewui.com/components/tooltip.html'
|
||||
},
|
||||
]
|
||||
};
|
||||
},
|
||||
onPageScroll(e) {
|
||||
|
|
|
@ -15,26 +15,12 @@
|
|||
<view class="line"></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '0'" >
|
||||
<view class="teamBox" v-for="(item, index) in 6">
|
||||
<view class="forms" v-if="tabC == '0'">
|
||||
<view class="teamBox" v-for="(item, index) in 2" :key="index">
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">张三</view>
|
||||
<view class="street">会长</view>
|
||||
<view class="item-image">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '1'" >
|
||||
<view class="teamBox" v-for="(item, index) in 2">
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
|
@ -47,10 +33,36 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '2'" >
|
||||
<view class="teamBox" v-for="(item, index) in 3">
|
||||
<view class="forms" v-if="tabC == '1'">
|
||||
<view
|
||||
class="teamBox"
|
||||
v-for="item in list"
|
||||
:key="item.id"
|
||||
@click="onInfo(item.id)"
|
||||
>
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
<view class="item-image">
|
||||
{{ item.userName }}
|
||||
<!-- <image src="../../static/txIcon.png" mode=""></image> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">{{ item.userName }}</view>
|
||||
<view class="street">{{ item.identity }}</view>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
{{ item.introduce }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '2'">
|
||||
<view class="teamBox" v-for="(item, index) in 3" :key="index">
|
||||
<view class="teamBox-right">
|
||||
<view class="item-image">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
|
@ -71,15 +83,44 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
tabC: "0",
|
||||
list: [],
|
||||
};
|
||||
},
|
||||
onShow() {
|
||||
// this.getData();
|
||||
this.get();
|
||||
},
|
||||
methods: {
|
||||
get() {
|
||||
this.http
|
||||
.request("/organPerson/list", {}, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.list = res.data.records;
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
toTab(val) {
|
||||
this.tabC = val;
|
||||
// this.getData()
|
||||
},
|
||||
onInfo(obj) {
|
||||
this.http
|
||||
.request("/organPerson/details", { id: obj }, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -140,14 +181,30 @@ export default {
|
|||
display: flex;
|
||||
.teamBox-right {
|
||||
margin-right: 20rpx;
|
||||
image {
|
||||
width: 180rpx;
|
||||
height: 130rpx;
|
||||
background-size: contain;
|
||||
width: 159rpx;
|
||||
height: 159rpx;
|
||||
.item-image {
|
||||
width: 159rpx;
|
||||
height: 159rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: rgba(152, 149, 149, 0.5);
|
||||
color: rgb(240, 239, 239);
|
||||
font-style: 64rpx;
|
||||
font-weight: bolder;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
image {
|
||||
width: 159rpx;
|
||||
height: 159rpx;
|
||||
border-radius: 50%;
|
||||
background-size: contain;
|
||||
}
|
||||
}
|
||||
}
|
||||
.teamBox-left {
|
||||
// width: 400rpx;
|
||||
// width: 400rpx;
|
||||
.teamMinbox-top {
|
||||
display: flex;
|
||||
margin-bottom: 16rpx;
|
||||
|
@ -166,7 +223,7 @@ export default {
|
|||
color: #a02521;
|
||||
margin-left: 18rpx;
|
||||
padding: 2rpx 20rpx;
|
||||
max-width:120rpx;
|
||||
max-width: 120rpx;
|
||||
overflow: hidden; /* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis; /*文字隐藏后添加省略号*/
|
||||
white-space: nowrap;
|
||||
|
|
|
@ -0,0 +1,350 @@
|
|||
<template>
|
||||
<view class="box">
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
标题
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<u--input placeholder="请输入名称" v-model="title" clearable border="none" inputAlign="right" style="color: #251B1D;">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
节目
|
||||
</view>
|
||||
<view class="form_right" @click="showType = true">
|
||||
<u--input placeholder="请选择" clearable border="none" inputAlign="right" style="color: #251B1D;"
|
||||
suffixIcon="arrow-right" readonly v-model="programs" disabledColor="#ffffff">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup :show="showType" @close="close" closeOnClickOverlay :round="5" customStyle="padding: 16px;">
|
||||
<u-radio-group @change="selectForm1" v-model="programs" :borderBottom="true" placement="column"
|
||||
iconPlacement="right">
|
||||
<u-radio :customStyle="{ marginBottom: '16px' }" v-for="(item, index) in program" :key="index" :label="item.name"
|
||||
labelSize="28rpx" labelColor="#231F1C" :name="item.name" activeColor="#99241B ">
|
||||
</u-radio>
|
||||
<u-button class="custom-style" style="background-color:#99241B ; color: #FFFFFF; margin-top: 32rpx;"
|
||||
type="default" @click="showType = false">确认</u-button>
|
||||
</u-radio-group>
|
||||
</u-popup>
|
||||
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
团队
|
||||
</view>
|
||||
<view class="form_right" @click="showTypes = true">
|
||||
<u--input placeholder="请选择" clearable border="none" inputAlign="right" style="color: #251B1D;"
|
||||
suffixIcon="arrow-right" readonly v-model="teams" disabledColor="#ffffff">
|
||||
</u--input>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup :show="showTypes" @close="close" closeOnClickOverlay :round="5" customStyle="padding: 16px;">
|
||||
<u-radio-group @change="selectForm2" v-model="teams" :borderBottom="true" placement="column" iconPlacement="right">
|
||||
<u-radio :customStyle="{ marginBottom: '16px' }" v-for="(item, index) in team" :key="index" :label="item.name"
|
||||
labelSize="28rpx" labelColor="#231F1C" :name="item.name" activeColor="#99241B ">
|
||||
</u-radio>
|
||||
<u-button class="custom-style" style="background-color:#99241B ; color: #FFFFFF; margin-top: 32rpx;"
|
||||
type="default" @click="showTypes = false">确认</u-button>
|
||||
</u-radio-group>
|
||||
</u-popup>
|
||||
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
开始时间
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<uni-datetime-picker type="datetime" v-model="wTime" :border="false" :clearIcon="false" />
|
||||
<!-- <u--input placeholder="请选择" clearable border="none" inputAlign="right" style="color: #251B1D;"
|
||||
suffixIcon="calendar" readonly v-model="wTime" disabledColor="#ffffff">
|
||||
</u--input> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="form_line">
|
||||
<view class="form_left">
|
||||
截止时间
|
||||
</view>
|
||||
<view class="form_right">
|
||||
<uni-datetime-picker type="datetime" v-model="eTime" :border="false" :clearIcon="false" />
|
||||
<!-- <u--input placeholder="请选择" clearable border="none" inputAlign="right" style="color: #251B1D;"
|
||||
suffixIcon="calendar" readonly v-model="eTime" disabledColor="#ffffff">
|
||||
</u--input> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="operation" @click="next">
|
||||
发布
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import http from '../../request/interface.js'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
title: '',
|
||||
typeId: '',
|
||||
showType: false,
|
||||
type: '',
|
||||
radiolist1: [],
|
||||
text1: '',
|
||||
text2: '',
|
||||
showTime: false,
|
||||
timeTab: 0,
|
||||
eTime: '',
|
||||
wTime: '',
|
||||
timeValue: Number(new Date()),
|
||||
showUser: false,
|
||||
userType: '',
|
||||
userTypeValue: 'wyrc,zyz',
|
||||
radiovalue2: [],
|
||||
radiolist2: [],
|
||||
morePer: true,
|
||||
perNumber: 1,
|
||||
fileList3: [],
|
||||
ok: true,
|
||||
team: [],
|
||||
teams: '',
|
||||
teamsId: '',
|
||||
program: [],
|
||||
programs: '',
|
||||
programsId: '',
|
||||
showTypes: false
|
||||
}
|
||||
},
|
||||
onShow () {
|
||||
|
||||
},
|
||||
async onLoad () {
|
||||
await this.getCurrentTime()
|
||||
await this.teamandprogram()
|
||||
},
|
||||
methods: {
|
||||
getCurrentTime () {
|
||||
//获取当前时间并打印
|
||||
let yy = new Date().getFullYear();
|
||||
let mm = new Date().getMonth() + 1;
|
||||
let dd = new Date().getDate();
|
||||
let gettime = yy + '-' + mm + '-' + dd;
|
||||
this.eTime = gettime
|
||||
this.wTime = gettime
|
||||
},
|
||||
close () {
|
||||
this.showType = false
|
||||
this.showTime = false
|
||||
this.showUser = false
|
||||
this.showTypes = false
|
||||
},
|
||||
selectForm1 (form) {
|
||||
let _this = this
|
||||
this.program.forEach((item) => {
|
||||
if (item.name == form) {
|
||||
_this.teamsId = item.id
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
selectForm2 (form) {
|
||||
let _this = this
|
||||
this.team.forEach(function (item) {
|
||||
if (item.name == form) {
|
||||
_this.programsId = item.id
|
||||
}
|
||||
})
|
||||
},
|
||||
chooseTime (val) {
|
||||
this.showTime = true
|
||||
this.timeTab = val
|
||||
},
|
||||
sureTime (e) {
|
||||
if (this.timeTab == 0) {
|
||||
this.eTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM')
|
||||
} else {
|
||||
this.wTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM')
|
||||
}
|
||||
this.showTime = false
|
||||
},
|
||||
next () {
|
||||
this.ok = true
|
||||
if (this.title == '') {
|
||||
uni.showToast({
|
||||
title: '请输入名称',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.teams == '') {
|
||||
uni.showToast({
|
||||
title: '请选择团队',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.programs == '') {
|
||||
uni.showToast({
|
||||
title: '请选择团队',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.eTime == '') {
|
||||
uni.showToast({
|
||||
title: '请选择截止日期',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.wTime == '') {
|
||||
uni.showToast({
|
||||
title: '请选择开始日期',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.eTime.length < 12) {
|
||||
uni.showToast({
|
||||
title: '请选择截止时间',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.wTime.length < 12) {
|
||||
uni.showToast({
|
||||
title: '请选择活动时间',
|
||||
icon: "none",
|
||||
});
|
||||
this.ok = false
|
||||
return
|
||||
}
|
||||
if (this.ok) {
|
||||
|
||||
this.http.request('/artCountryside/add', {
|
||||
title: this.title,
|
||||
showId: this.programsId,
|
||||
teamId: this.teamsId,
|
||||
endTime: this.eTime,
|
||||
startTime: this.wTime,
|
||||
}, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
teamandprogram () {
|
||||
this.http.request('/artTeam/list', {}, 'GET').then(res => {
|
||||
if (res.code === 200) {
|
||||
this.team = []
|
||||
this.program = []
|
||||
res.data.records.forEach((item, index) => {
|
||||
if (item.type == 'team') {
|
||||
this.team.push(item)
|
||||
} else {
|
||||
this.program.push(item)
|
||||
}
|
||||
});
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.data.message,
|
||||
icon: "error",
|
||||
});
|
||||
}
|
||||
}).catch(err => {
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style></style>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.box {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/deep/ .uni-icons {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/deep/ .uni-date-x {
|
||||
text-align: right;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.form_line {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
border-bottom: 1rpx solid #dadbde;
|
||||
|
||||
.form_right {
|
||||
width: 450rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.form_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
justify-content: space-between;
|
||||
height: 104rpx;
|
||||
}
|
||||
|
||||
.text_box {
|
||||
width: 686rpx;
|
||||
padding: 0 32rpx;
|
||||
}
|
||||
|
||||
.gap {
|
||||
color: #AFADB0;
|
||||
background: #F5F5F5;
|
||||
opacity: 1;
|
||||
padding: 10rpx 32rpx;
|
||||
font-size: 32rpx;
|
||||
}
|
||||
|
||||
::v-deep .u-upload__wrap {
|
||||
padding: 32rpx;
|
||||
}
|
||||
|
||||
.upload {
|
||||
padding: 32rpx;
|
||||
}
|
||||
|
||||
.operation {
|
||||
width: 654rpx;
|
||||
height: 96rpx;
|
||||
margin: 32rpx 48rpx 48rpx;
|
||||
text-align: center;
|
||||
line-height: 96rpx;
|
||||
background-color: #99241B;
|
||||
color: #fff;
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
position: absolute;
|
||||
bottom: 0rpx;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,205 @@
|
|||
<template>
|
||||
<view class="box">
|
||||
<view class="">
|
||||
<u-loading-page :loading="load"></u-loading-page>
|
||||
</view>
|
||||
<view class="page" v-if="load == false">
|
||||
<view class="activityDetails">
|
||||
<view class="item_ul">
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon10.png" mode="scaleToFill"></image>
|
||||
<text>标题:</text>
|
||||
</view>
|
||||
<view class="content">{{ data.title }}</view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon7.png" mode="scaleToFill"></image>
|
||||
<text> 节目:</text>
|
||||
</view>
|
||||
<view class="content"><text> {{ data.teamName }}</text></view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon6.png" mode="scaleToFill"></image>
|
||||
<text> 团队:</text>
|
||||
</view>
|
||||
<view class="content"><text> {{ data.showName }}</text></view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon8.png" mode="scaleToFill"></image>
|
||||
<text> 地址:</text>
|
||||
</view>
|
||||
<view class="content"><text> {{ data.villageName }}</text></view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon1.png" mode="scaleToFill"></image>
|
||||
<text>开始时间:</text>
|
||||
</view>
|
||||
<view class="content"> {{ data.startTime }}</view>
|
||||
</view>
|
||||
<view class="item_li">
|
||||
<view class="standard">
|
||||
<image class="icon" src="../../static/detailIcon/icon2.png" mode="scaleToFill"></image>
|
||||
<text>截止时间:</text>
|
||||
</view>
|
||||
<view class="content"> {{ data.endTime }} </view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
load: true,
|
||||
id: '',
|
||||
data: {},
|
||||
list: [],
|
||||
list2: [],
|
||||
userList: [],
|
||||
currentNum: 0,
|
||||
isCheck: 0,
|
||||
}
|
||||
},
|
||||
onLoad(op) {
|
||||
this.id = op.id
|
||||
},
|
||||
onShow() {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData() {
|
||||
this.load = true
|
||||
this.http.request(`/artCountryside/details?id=${this.id}`, {}, 'GET').then(res => {
|
||||
if (res.code == 200) {
|
||||
this.data = res.data
|
||||
this.load = false
|
||||
} else {
|
||||
this.load = false
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: "error",
|
||||
});
|
||||
}
|
||||
}).catch(err => {
|
||||
this.load = false
|
||||
})
|
||||
},
|
||||
back() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
//点击文件
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.box {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
image {
|
||||
// height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.page {
|
||||
|
||||
.activityDetails {
|
||||
.item_ul {
|
||||
.item_li {
|
||||
padding: 16rpx 32rpx 32rpx;
|
||||
margin: 0rpx 0 32rpx;
|
||||
border-bottom: 2rpx solid #F1F1F1;
|
||||
display: flex;
|
||||
// justify-content: space-between;
|
||||
align-items: center;
|
||||
font-weight: 600;
|
||||
|
||||
.standard {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-right: 10rpx;
|
||||
|
||||
.icon {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
// display: none;
|
||||
}
|
||||
|
||||
text {
|
||||
color: #251B1D;
|
||||
// color: $gray;
|
||||
margin-left: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.content {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.orderBtn {
|
||||
width: 100%;
|
||||
background-color: #FFF;
|
||||
padding-bottom: 20rpx;
|
||||
|
||||
|
||||
.btn {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
line-height: 96rpx;
|
||||
text-align: center;
|
||||
background: #99241B;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #FFFFFF;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.btnQ {
|
||||
width: calc(100% - 64rpx);
|
||||
height: 96rpx;
|
||||
line-height: 96rpx;
|
||||
text-align: center;
|
||||
background: #F9F2F2;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #99241B;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
.bao_title {
|
||||
width: 686rpx;
|
||||
margin: 20rpx 32rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: 500;
|
||||
color: #32333C;
|
||||
}
|
||||
|
||||
.per_line {
|
||||
width: 686rpx;
|
||||
margin: 10rpx 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.oer_image {
|
||||
width: 88rpx;
|
||||
height: 88rpx;
|
||||
border-radius: 50%;
|
||||
margin-left: 30rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -15,77 +15,166 @@
|
|||
<view class="line"></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '0'" >
|
||||
<view class="teamBox" v-for="(item, index) in 6">
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">xx团队</view>
|
||||
<view class="street">丹东街道</view>
|
||||
<view class="forms" v-if="tabC == '0'">
|
||||
<view v-if="team.length > 0">
|
||||
<view class="teamBox" v-for="(item, index) in team">
|
||||
<view class="teamBox-right">
|
||||
<!-- <image :src="item.file" mode=""></image> -->
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
<!-- txIcon -->
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">{{ item.name }}</view>
|
||||
<view class="street">{{ item.villageName }}</view>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
{{ item.introduce }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '1'" >
|
||||
<view class="teamBox" v-for="(item, index) in 2">
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">xx团队</view>
|
||||
<view class="street">丹东街道</view>
|
||||
<view class="forms" v-if="tabC == '1'">
|
||||
<view v-if="program.length > 0">
|
||||
<view class="teamBox" v-for="(item, index) in program">
|
||||
<view class="teamBox-right">
|
||||
<!-- <image :src="item.file" mode=""></image> -->
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">{{ item.name }}</view>
|
||||
<view class="street">{{ item.villageName }}</view>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
{{ item.introduce }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '2'" >
|
||||
<view class="teamBox" v-for="(item, index) in 3">
|
||||
<view class="teamBox-right">
|
||||
<image src="../../static/txIcon.png" mode=""></image>
|
||||
</view>
|
||||
<view class="teamBox-left">
|
||||
<view class="teamMinbox-top">
|
||||
<view class="title">xx团队</view>
|
||||
<view class="street">丹东街道</view>
|
||||
</view>
|
||||
<view class="teamMinbox-bottom">
|
||||
xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队xx团队
|
||||
<view class="forms" v-if="tabC == '2'">
|
||||
<view class="addIcon" @click="toAddOrder" v-if="isadmin">
|
||||
<image src="../../static/orderHall/addOrder.png"></image>
|
||||
</view>
|
||||
<view class="main" v-if="mainList.length > 0">
|
||||
<view class="mainList" v-for="(item, i) in mainList" :key="i" @click="toDetail(item.id)">
|
||||
<view class="text">
|
||||
<view class="text1">{{ item.title ? item.title : '暂无' }}</view>
|
||||
<view class="text3">
|
||||
<view class="time">节目:{{ item.teamName ? item.teamName : '暂无' }}</view>
|
||||
</view>
|
||||
<view class="text3">
|
||||
<view class="time">团队:{{ item.showName ? item.showName : '暂无' }}</view>
|
||||
</view>
|
||||
<view class="text3">
|
||||
<img class='mainListTime' src="../../static/orderHall/mainListTime.png" alt="">
|
||||
<view class="time">开始时间:{{ item.startTime ? item.startTime : '暂无' }}</view>
|
||||
</view>
|
||||
<view class="text3">
|
||||
<img class='mainListTime' src="../../static/orderHall/mainListTime.png" alt="">
|
||||
<view class="time">截止时间:{{ item.endTime ? item.endTime : '暂无' }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
<u-loading-page class="loading" loading-text="加载中" :loading="loadings"></u-loading-page>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
tabC: "0",
|
||||
mainList: [],
|
||||
villageId: '',
|
||||
team: [],
|
||||
program: [],
|
||||
loadings: true,
|
||||
isadmin: false
|
||||
};
|
||||
},
|
||||
onShow() {
|
||||
// this.getData();
|
||||
},
|
||||
methods: {
|
||||
toTab(val) {
|
||||
toTab (val) {
|
||||
this.tabC = val;
|
||||
// this.getData()
|
||||
},
|
||||
RuralDevelopmentPlanlist () {
|
||||
this.loadings = true
|
||||
let data = {
|
||||
villageId: this.villageId
|
||||
}
|
||||
this.http.request(`/artCountryside/list`, data, 'GET').then(res => {
|
||||
if (res.code === 200) {
|
||||
this.mainList = res.data.records
|
||||
this.loadings = false
|
||||
} else {
|
||||
this.loadings = false
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: "error",
|
||||
});
|
||||
}
|
||||
}).catch(err => {
|
||||
this.loadings = false
|
||||
})
|
||||
},
|
||||
toAddOrder () {
|
||||
uni.navigateTo({
|
||||
url: `/pagesD/wyxx/addindex`
|
||||
})
|
||||
},
|
||||
teamandprogram () {
|
||||
this.http.request('/artTeam/list', {}, 'GET').then(res => {
|
||||
if (res.code === 200) {
|
||||
this.team = []
|
||||
this.program = []
|
||||
res.data.records.forEach((item, index) => {
|
||||
if (item.type == 'team') {
|
||||
this.team.push(item)
|
||||
} else {
|
||||
this.program.push(item)
|
||||
}
|
||||
});
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.data.message,
|
||||
icon: "error",
|
||||
});
|
||||
}
|
||||
}).catch(err => {
|
||||
|
||||
})
|
||||
},
|
||||
toDetail (value) {
|
||||
uni.navigateTo({
|
||||
url: `/pagesD/wyxx/detail?id=${value}`
|
||||
})
|
||||
}
|
||||
},
|
||||
async onShow () {
|
||||
this.isadmin = uni.getStorageSync('isAdmin');
|
||||
await this.teamandprogram()
|
||||
await this.RuralDevelopmentPlanlist()
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.wyxx {
|
||||
background-color: #fefefe;
|
||||
}
|
||||
|
@ -128,37 +217,51 @@ export default {
|
|||
}
|
||||
|
||||
.forms {
|
||||
width: 90%;
|
||||
width: 98%;
|
||||
// height: 40rpx;
|
||||
// background-color: skyblue;
|
||||
margin: 40rpx auto 0rpx;
|
||||
margin: 20rpx auto;
|
||||
// max-height: calc(100vh - 106px);
|
||||
// border: 1px solid #333333;
|
||||
// overflow-y: auto;
|
||||
|
||||
.teamBox {
|
||||
height: 140rpx;
|
||||
height: 180rpx;
|
||||
padding: 18rpx 10rpx;
|
||||
background-color: #fff;
|
||||
// background-color: rgb(241, 243, 244);
|
||||
border: 1px solid rgb(241, 243, 244);
|
||||
margin-bottom: 20rpx;
|
||||
display: flex;
|
||||
|
||||
.teamBox-right {
|
||||
margin-right: 20rpx;
|
||||
|
||||
image {
|
||||
width: 180rpx;
|
||||
height: 130rpx;
|
||||
height: 180rpx;
|
||||
background-size: contain;
|
||||
}
|
||||
}
|
||||
|
||||
.teamBox-left {
|
||||
// width: 400rpx;
|
||||
|
||||
// width: 400rpx;
|
||||
.teamMinbox-top {
|
||||
display: flex;
|
||||
margin-bottom: 16rpx;
|
||||
|
||||
.title {
|
||||
font-weight: 600;
|
||||
font-size: 32rpx;
|
||||
max-width: 160rpx;
|
||||
overflow: hidden; /* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis; /*文字隐藏后添加省略号*/
|
||||
overflow: hidden;
|
||||
/* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis;
|
||||
/*文字隐藏后添加省略号*/
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.street {
|
||||
height: 40rpx;
|
||||
border-radius: 30rpx;
|
||||
|
@ -166,21 +269,114 @@ export default {
|
|||
color: #a02521;
|
||||
margin-left: 18rpx;
|
||||
padding: 2rpx 20rpx;
|
||||
max-width:120rpx;
|
||||
overflow: hidden; /* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis; /*文字隐藏后添加省略号*/
|
||||
overflow: hidden;
|
||||
/* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis;
|
||||
/*文字隐藏后添加省略号*/
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.teamMinbox-bottom {
|
||||
font-size: 28rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.main {
|
||||
padding: 32rpx;
|
||||
// background-color: #F4F5F7;
|
||||
// background-color: rgb(241, 243, 244);
|
||||
border-radius: 16rpx;
|
||||
|
||||
.mainList {
|
||||
border-radius: 16rpx;
|
||||
// background-color: rgb(241, 243, 244);
|
||||
margin-bottom: 20rpx;
|
||||
border: 1px solid rgb(241, 243, 244);
|
||||
overflow: hidden;
|
||||
|
||||
.mainListImg {
|
||||
height: 400rpx;
|
||||
position: relative;
|
||||
|
||||
.img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.imgTags {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.text {
|
||||
padding: 32rpx;
|
||||
// background-color: #FFF;
|
||||
|
||||
|
||||
.text1 {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #251B1D;
|
||||
margin-bottom: 5rpx;
|
||||
}
|
||||
|
||||
.text2 {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
|
||||
.text3 {
|
||||
display: flex;
|
||||
margin-top: 16rpx;
|
||||
|
||||
.mainListTime {
|
||||
width: 26rpx;
|
||||
height: 26rpx;
|
||||
margin-top: 4rpx;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: #989898;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.addIcon {
|
||||
position: fixed;
|
||||
right: 24rpx;
|
||||
bottom: 242rpx;
|
||||
width: 104rpx;
|
||||
height: 104rpx;
|
||||
border-radius: 50%;
|
||||
z-index: 999;
|
||||
}
|
||||
|
||||
.loading {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
<template>
|
||||
<view>
|
||||
<!-- <player-component
|
||||
playerid="tvp"
|
||||
id="tvp-id"
|
||||
vid="p0743x9grjv"
|
||||
></player-component> -->
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
store: null,
|
||||
player: null,
|
||||
};
|
||||
},
|
||||
onShow() {
|
||||
// this.store = requirePlugin("player");
|
||||
// this.player = this.selectComponent('#tvp-id');
|
||||
// this.player = this.store.get("tvp");
|
||||
// console.log(this.store);
|
||||
// console.log(this.player);
|
||||
},
|
||||
mounted() {},
|
||||
methods: {},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
|
@ -1,228 +1,277 @@
|
|||
<template>
|
||||
<!-- 文艺下乡 -->
|
||||
<view class="wyxx">
|
||||
<view class="tabTitle">
|
||||
<view :class="tabC == '0' ? 'tabsC' : 'tabs'" @click="toTab('0')">
|
||||
<view> 分类 </view>
|
||||
<view class="line"></view>
|
||||
</view>
|
||||
<view :class="tabC == '1' ? 'tabsC' : 'tabs'" @click="toTab('1')">
|
||||
<view> 分类1 </view>
|
||||
<view class="line"></view>
|
||||
</view>
|
||||
<view :class="tabC == '2' ? 'tabsC' : 'tabs'" @click="toTab('2')">
|
||||
<view> 分类2 </view>
|
||||
<view class="line"></view>
|
||||
</view>
|
||||
<view :class="tabC == '3' ? 'tabsC' : 'tabs'" @click="toTab('3')">
|
||||
<view> 分类3 </view>
|
||||
<view class="line"></view>
|
||||
</view>
|
||||
<view :class="tabC == '4' ? 'tabsC' : 'tabs'" @click="toTab('4')">
|
||||
<view> 分类4 </view>
|
||||
<view class="line"></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="forms" v-if="tabC == '0'">
|
||||
<view class="teamBox" v-for="(item, index) in videoList">
|
||||
<view class="teamBox-top">
|
||||
<video
|
||||
id="video"
|
||||
style="width: 100%; height: 100%"
|
||||
object-fit="cover"
|
||||
controls
|
||||
:src="item.video"
|
||||
poster="../../static/orderE.png"
|
||||
></video>
|
||||
<view class="mask" @click="playMask(index)" v-if="item.play">
|
||||
<text>{{ item.title }}</text>
|
||||
<image src="../../static/play.png"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="teamBox-bottom">
|
||||
<view class="interactive">
|
||||
<image src="../../static/play.png" mode=""></image>
|
||||
<view class="title">{{ item.playback }}</view>
|
||||
</view>
|
||||
<view class="interactive">
|
||||
<image src="../../static/workDetail/heart1.png" mode=""></image>
|
||||
<view class="title">{{ item.like }}</view>
|
||||
</view>
|
||||
<view class="interactive">
|
||||
<image src="../../static/workDetail/star1.png" mode=""></image>
|
||||
<view class="title">{{ item.collect }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="wyxx">
|
||||
<view class="forms">
|
||||
<view class="teamBox" v-for="item in list" :key="item.id">
|
||||
<view class="teamBox-top">
|
||||
<video id="myVideo" :src="item.file" @error="videoErrorCallback"
|
||||
style="width: 750rpx;height: 500rpx;" controls></video>
|
||||
</view>
|
||||
<view class="teamBox-bottom">
|
||||
<view class="interactive">
|
||||
<image src="../../static/play-1.png" mode=""></image>
|
||||
<view class="title">{{ item.views }}</view>
|
||||
</view>
|
||||
<view class="interactive">
|
||||
<image src="../../static/workDetail/heart2.png" class="bot_img" v-if="item.isGreat"
|
||||
@click="clickHeart()">
|
||||
</image>
|
||||
<image src="../../static/workDetail/heart1.png" class="bot_img" v-else @click="clickHeart(item.isGreat,item.id)">
|
||||
</image>
|
||||
<view class="title" @click="clickHeart(item.isGreat,item.id)">
|
||||
{{item.likes}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="interactive">
|
||||
<image src="../../static/workDetail/star2.png" class="bot_img" v-if="item.isColl"
|
||||
@click="clickStar()"></image>
|
||||
<image src="../../static/workDetail/star1.png" class="bot_img" v-else @click="clickStar(item.isColl,item.id)">
|
||||
</image>
|
||||
<view class="title" @click="clickStar(item.isColl,item.id)">
|
||||
{{item.collections}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
tabC: "0",
|
||||
videoList: [
|
||||
{
|
||||
title:
|
||||
"美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学美丽科学",
|
||||
playback: "40.123",
|
||||
like: "8.112.490",
|
||||
collect: "8.112.490",
|
||||
video: "../../static/a1.mp4",
|
||||
play: true,
|
||||
},
|
||||
],
|
||||
};
|
||||
},
|
||||
onLoad() {
|
||||
this.exhibitionList();
|
||||
},
|
||||
onShow() {
|
||||
// this.getData();
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
toTab(val) {
|
||||
this.tabC = val;
|
||||
// this.getData()
|
||||
},
|
||||
playMask(index) {
|
||||
this.videoList[index].play = false;
|
||||
|
||||
var video = document.getElementById("video");
|
||||
// 暂停播放
|
||||
video.addEventListener("pause", function (e) {
|
||||
console.log("暂停播放");
|
||||
console.log(e);
|
||||
});
|
||||
// 15、ended:播放结束
|
||||
video.addEventListener("ended", function (e) {
|
||||
console.log("视频播放完了");
|
||||
console.log(e);
|
||||
});
|
||||
},
|
||||
exhibitionList() {
|
||||
this.http
|
||||
.request("/exhibition/list", {}, "get")
|
||||
.then((res) => {
|
||||
console.log(res.data);
|
||||
// this.releasesNum[6].num = res.data.allCreateCount;
|
||||
// this.releasesNum[6].time = res.data.lastUpdateAt;
|
||||
// this.releasesNum[6].moon = res.data.monthReadCount;
|
||||
// this.releasesNum[6].assemble = res.data.allReadCount;
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
},
|
||||
collect() {
|
||||
this.http
|
||||
.request("/worksCollection/addCollection", {}, "post")
|
||||
.then((res) => {
|
||||
console.log(res.data);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
// tabC: "0",
|
||||
list: [],
|
||||
query: {
|
||||
page: 1,
|
||||
size: 20,
|
||||
},
|
||||
};
|
||||
},
|
||||
onShow() {
|
||||
// this.getData();
|
||||
this.get();
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
toTab(val) {
|
||||
this.tabC = val;
|
||||
// this.getData()
|
||||
},
|
||||
//点赞、取消点赞
|
||||
clickHeart(val0,val1) {
|
||||
console.log(val1)
|
||||
if (val0) {
|
||||
this.http.request('/worksGreat/delGreat?type=3&workId=' + val1, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.get()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
} else {
|
||||
this.http.request('/worksGreat/addGreat?type=3&workId=' + val1, "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.get()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
//收藏、取消收藏
|
||||
clickStar(val0,val1) {
|
||||
if (val0) {
|
||||
this.http.request('/worksCollection/delCollection?workId=' + val1 + '&type=3', "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.get()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
} else {
|
||||
this.http.request('/worksCollection/addCollection?workId=' + val1 + '&type=3', "POST").then(res => {
|
||||
if (res.code == 200) {
|
||||
this.get()
|
||||
}
|
||||
}).catch(e => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
get() {
|
||||
this.http
|
||||
.request("/exhibition/list", this.query, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.list = res.data.records;
|
||||
this.query.page = res.data.current;
|
||||
this.query.size = res.data.size;
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
skip(query = {}) {
|
||||
uni.navigateTo({
|
||||
// 稍后改为 订单管理的页面
|
||||
url: "/pagesD/xskz/details",
|
||||
});
|
||||
},
|
||||
videoErrorCallback: function(e) {
|
||||
console.log(e.target.errMsg)
|
||||
uni.showModal({
|
||||
content: e.target.errMsg,
|
||||
showCancel: false
|
||||
})
|
||||
},
|
||||
playMask(obj) {
|
||||
// this.videoList[index].play = false;
|
||||
// var video = document.getElementById("video");
|
||||
// // 暂停播放
|
||||
// video.addEventListener("pause", function (e) {
|
||||
// console.log("暂停播放");
|
||||
// console.log(e);
|
||||
// });
|
||||
// // 15、ended:播放结束
|
||||
// video.addEventListener("ended", function (e) {
|
||||
// console.log("视频播放完了");
|
||||
// console.log(e);
|
||||
// });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.wyxx {
|
||||
background-color: #fefefe;
|
||||
}
|
||||
.wyxx {
|
||||
background-color: #fefefe;
|
||||
}
|
||||
|
||||
.tabTitle {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
background: #ffffff;
|
||||
.tabTitle {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
background: #ffffff;
|
||||
|
||||
.tabs {
|
||||
width: 33.3%;
|
||||
text-align: center;
|
||||
padding: 32rpx 0 0rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
.tabs {
|
||||
width: 33.3%;
|
||||
text-align: center;
|
||||
padding: 32rpx 0 0rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
|
||||
.line {
|
||||
width: 36rpx;
|
||||
height: 4rpx;
|
||||
margin: 10rpx auto 8rpx;
|
||||
}
|
||||
}
|
||||
.line {
|
||||
width: 36rpx;
|
||||
height: 4rpx;
|
||||
margin: 10rpx auto 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.tabsC {
|
||||
width: 33.3%;
|
||||
text-align: center;
|
||||
padding: 32rpx 0 0;
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
color: #000;
|
||||
.tabsC {
|
||||
width: 33.3%;
|
||||
text-align: center;
|
||||
padding: 32rpx 0 0;
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
color: #000;
|
||||
|
||||
.line {
|
||||
width: 44rpx;
|
||||
height: 4rpx;
|
||||
margin: 10rpx auto 8rpx;
|
||||
background-color: #a02521;
|
||||
}
|
||||
}
|
||||
}
|
||||
.line {
|
||||
width: 44rpx;
|
||||
height: 4rpx;
|
||||
margin: 10rpx auto 8rpx;
|
||||
background-color: #a02521;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.forms {
|
||||
width: 90%;
|
||||
margin: 40rpx auto 0rpx;
|
||||
.teamBox {
|
||||
.teamBox-top {
|
||||
height: 400rpx;
|
||||
position: relative;
|
||||
// video {
|
||||
// position: relative;
|
||||
// }
|
||||
.mask {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
z-index: 99;
|
||||
text {
|
||||
// position: absolute;
|
||||
// left: 60rpx;
|
||||
color: #fff;
|
||||
max-width: 500rpx;
|
||||
overflow: hidden; /* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis; /*文字隐藏后添加省略号*/
|
||||
white-space: nowrap;
|
||||
}
|
||||
image {
|
||||
width: 60rpx;
|
||||
height: 60rpx;
|
||||
margin: 110rpx 0 0 300rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
.teamBox-bottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
padding: 15rpx 15rpx;
|
||||
background-color: #fff;
|
||||
box-sizing: border-box;
|
||||
.interactive {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
image {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 12rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
.forms {
|
||||
margin: 40rpx auto 0rpx;
|
||||
|
||||
.teamBox {
|
||||
.teamBox-top {
|
||||
position: relative;
|
||||
|
||||
.content {
|
||||
position: relative;
|
||||
z-index: 4;
|
||||
|
||||
.content-title {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
padding: 18rpx;
|
||||
|
||||
text {
|
||||
color: #fff;
|
||||
max-width: 500rpx;
|
||||
overflow: hidden;
|
||||
/* 超出一行文字自动隐藏 */
|
||||
text-overflow: ellipsis;
|
||||
/*文字隐藏后添加省略号*/
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.team-image {
|
||||
width: 100%;
|
||||
height: 400rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.mask {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 12;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
.mask-play {
|
||||
image {
|
||||
width: 60rpx;
|
||||
height: 60rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.teamBox-bottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 15rpx 32rpx;
|
||||
background-color: #fff;
|
||||
box-sizing: border-box;
|
||||
|
||||
.interactive {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
image {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 12rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,602 @@
|
|||
<template>
|
||||
<view>
|
||||
<view v-if="isAdmin || isVillageAdmin" class="tabss" style="
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
background-color: #ffffff;
|
||||
">
|
||||
<view @click="clickTab(1)" :class="{ acttiveSty: tabNum == 1 }"
|
||||
style="flex: 1; text-align: center; height: 40px; line-height: 40px">
|
||||
<text>已发布</text>
|
||||
</view>
|
||||
<view style="flex: 1; text-align: center" :class="{ acttiveSty: tabNum == 2 }" @click="clickTab(2)">
|
||||
<text>已接单</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="main">
|
||||
<view v-if="tabNum == 1">
|
||||
<view class="art_act_itm" v-for="(item, i) in issueList" :key="i">
|
||||
<image :src="onPhoto(item.photos)" alt="图片加载错误" mode="" @click="goActDeat(item.id, 1)"></image>
|
||||
<view class="bottom_part" style="padding: 0 12px">
|
||||
<view class="ddd" style="
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
">
|
||||
<view class="title">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="tag_sta_end" v-if="item.state == '2'"> 已完成 </view>
|
||||
<!-- <view class="tag_sta_fail" v-if="item.state == '4'">
|
||||
未接单
|
||||
</view> -->
|
||||
<!-- <view
|
||||
class="tag_sta_going"
|
||||
v-if="item.state == '1' || item.state == '0'"
|
||||
>
|
||||
进行中
|
||||
</view> -->
|
||||
<view class="tag_sta_end" v-if="item.state == '1'"> 待评价 </view>
|
||||
<view class="tag_sta_end" v-if="item.state == '0'">
|
||||
待上传图片
|
||||
</view>
|
||||
</view>
|
||||
<view class="act_time">
|
||||
活动时间: {{ onDate(item.startTime) }} -
|
||||
{{ onDate(item.endTime) }}
|
||||
</view>
|
||||
<view class="but_box" style="margin-top: 20rpx" v-if="!(item.state == '4')">
|
||||
<view style="width: 236rpx; margin: 0 10rpx" v-if="!(item.state == '0')">
|
||||
<u-button icon="photo-fill" shape="circle" text="已传图片" @click="touploadedimg(item.id)">
|
||||
</u-button>
|
||||
</view>
|
||||
<!-- <view
|
||||
style="width: 236rpx; margin: 0 10rpx"
|
||||
v-if="item.state == '1'"
|
||||
@click="done(item.id)"
|
||||
>
|
||||
<u-button
|
||||
color="#99241B"
|
||||
shape="circle"
|
||||
text="确认完成"
|
||||
></u-button>
|
||||
</view> -->
|
||||
<!-- <view
|
||||
style="width: 236rpx; margin: 0 10rpx"
|
||||
@click="undone(item.id)"
|
||||
v-if="item.state != '2' && item.state != '3'"
|
||||
>
|
||||
<u-button
|
||||
color="#99241B"
|
||||
shape="circle"
|
||||
text="未完成"
|
||||
></u-button>
|
||||
</view> -->
|
||||
<view style="width: 236rpx; margin: 0 10rpx" v-if="item.state == '0'">
|
||||
<u-button icon="photo-fill" shape="circle" color="#99241B" plain text="图片上传"
|
||||
@click="toUpimgPage(item.id)"></u-button>
|
||||
</view>
|
||||
<view style="width: 190rpx; margin: 0 10rpx" v-if="item.state == '1'">
|
||||
<u-button plain color="#99241B" shape="circle" text="评价" @click="pingjia(item.id)">
|
||||
</u-button>
|
||||
</view>
|
||||
<view style="width: 190rpx; margin: 0 10rpx" v-if="item.state == '2'">
|
||||
<!-- <view style="width: 190rpx;margin: 0 10rpx; " > -->
|
||||
<u-button shape="circle" text="已评价" @click="toEvlauedpg(item.evaluate)"></u-button>
|
||||
</view>
|
||||
</view>
|
||||
<view style="
|
||||
margin-top: 50rpx;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
font-size: 36rpx;
|
||||
font-weight: 600;
|
||||
" v-if="item.state == '4'">
|
||||
活动已逾期
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="!(issueList.length > 0)">
|
||||
<u-empty mode="list" icon="http://cdn.uviewui.com/uview/empty/list.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view v-if="tabNum == 2">
|
||||
<view class="art_act_itm" v-for="(item, i) in receivingList" :key="i">
|
||||
<image @click="goActDeat(item.id)" :src="item.photos" mode=""></image>
|
||||
<view class="bottom_part" style="padding: 0 12px">
|
||||
<view class="ddd" style="
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
"
|
||||
>
|
||||
<view class="title">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="tag_sta" v-if="item.state == '0'"> 待上传图片 </view>
|
||||
<view class="tag_sta_end" v-if="item.state == '2'"> 已完成 </view>
|
||||
<view class="tag_sta_going" v-if="item.state == '1'">
|
||||
进行中
|
||||
</view>
|
||||
</view>
|
||||
<view class="act_time">
|
||||
活动时间: {{ onDate(item.startTime) }} -
|
||||
{{ onDate(item.endTime) }}
|
||||
</view>
|
||||
<view class="but_box" style="margin-top: 20rpx">
|
||||
<!-- <view
|
||||
style="width: 236rpx; margin: 0 10rpx"
|
||||
v-if="item.state == '0'"
|
||||
>
|
||||
<u-button
|
||||
shape="circle"
|
||||
text="取消报名"
|
||||
@click="cancleBM(item.id)"
|
||||
></u-button>
|
||||
</view> -->
|
||||
<view style="width: 236rpx; margin: 0 10rpx" v-if="item.state == '2'">
|
||||
<u-button shape="circle" text="收到的评价" @click="toEvlauedpg(item.evaluate)"></u-button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="!(receivingList.length > 0)">
|
||||
<u-empty mode="list" icon="http://cdn.uviewui.com/uview/empty/list.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup :show="showS" @close="closeS" mode="center" :round="10" :safeAreaInsetBottom="false">
|
||||
<view style="width: 640rpx">
|
||||
<view style="padding: 32rpx">
|
||||
<view style="font-size: 32rpx; font-weight: 800">
|
||||
确认接单者未完成或已逾期?
|
||||
</view>
|
||||
</view>
|
||||
<view style="
|
||||
display: flex;
|
||||
border-top: 2rpx solid #e7e7e7;
|
||||
height: 112rpx;
|
||||
width: 640rpx;
|
||||
line-height: 112rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
">
|
||||
<view style="
|
||||
width: 319rpx;
|
||||
border-right: 1rpx solid #e7e7e7;
|
||||
text-align: center;
|
||||
" @click="closeS">
|
||||
取消
|
||||
</view>
|
||||
<view style="
|
||||
width: 319rpx;
|
||||
border-right: 1rpx solid #e7e7e7;
|
||||
text-align: center;
|
||||
color: #3f84fd;
|
||||
" @click="sureS">
|
||||
确定
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</u-popup>
|
||||
<!-- 评价 -->
|
||||
<u-modal :show="show" title="评价" @close="close()" :closeOnClickOverlay="true">
|
||||
<view class="pinContent">
|
||||
<textarea :disabled="id == ''" cols="30" rows="10" v-model="evaluate" placeholder="请输入评价..."></textarea>
|
||||
</view>
|
||||
<view slot="confirmButton" style="display: flex; justify-content: center; align-items: center">
|
||||
<view style="width: 400rpx">
|
||||
<u-button v-if="id != ''" color="#99241B" shape="circle" text="提交" @click="onSubmit()"></u-button>
|
||||
<u-button v-else color="#99241B" shape="circle" text="确认" @click="show = false"></u-button>
|
||||
</view>
|
||||
</view>
|
||||
</u-modal>
|
||||
<u-modal :show="showShoudao" @close="closeRecive()" title="收到的评价" :closeOnClickOverlay="true">
|
||||
<u-rate count="5" v-model="starsvalue" readonly></u-rate>
|
||||
<view slot="confirmButton" style="display: flex; justify-content: center; align-items: center">
|
||||
<view style="width: 400rpx">
|
||||
<u-button color="#99241B" shape="circle" text="确定" @click="showShoudao = false"></u-button>
|
||||
</view>
|
||||
</view>
|
||||
</u-modal>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
showShoudao: false,
|
||||
show: false,
|
||||
showS: false,
|
||||
count: 4,
|
||||
value: 2,
|
||||
rate2: 2,
|
||||
total: 0,
|
||||
score: [
|
||||
{
|
||||
name: "jack",
|
||||
star: 0,
|
||||
},
|
||||
],
|
||||
starvalue: 0,
|
||||
orderList: [],
|
||||
tabNum: 1,
|
||||
pingjiaobj: {},
|
||||
baomingpingjia: [],
|
||||
starsvalue: 0,
|
||||
page: 1,
|
||||
size: 20,
|
||||
current: null,
|
||||
isAdmin: null, //管理员
|
||||
isVillageAdmin: null, //村管理
|
||||
issueList: [],
|
||||
receivingList: [],
|
||||
evaluate: "",
|
||||
id: "",
|
||||
};
|
||||
},
|
||||
onShow() {
|
||||
this.isAdmin = uni.getStorageSync("isAdmin");
|
||||
this.isVillageAdmin = uni.getStorageSync("isVillageAdmin");
|
||||
this.tabNum = this.isAdmin ? 1 : this.isVillageAdmin ? 2 : null;
|
||||
this.clickTab(this.tabNum);
|
||||
},
|
||||
// 下拉刷新
|
||||
onPullDownRefresh() {
|
||||
this.clickTab(this.tabNum);
|
||||
setTimeout(function () {
|
||||
uni.stopPullDownRefresh();
|
||||
}, 1000);
|
||||
},
|
||||
//上拉
|
||||
onReachBottom() {
|
||||
if (this.current > this.page) {
|
||||
this.page++;
|
||||
this.moreOrder();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
clickTab(num) {
|
||||
this.orderList = [];
|
||||
this.receivingList = [];
|
||||
this.issueList = [];
|
||||
this.tabNum = num;
|
||||
this.page = 1;
|
||||
if (num == 1) {
|
||||
this.myPosts();
|
||||
} else if (num == 2) {
|
||||
this.myArtCountryside();
|
||||
}
|
||||
},
|
||||
myArtCountryside() {
|
||||
let obj = {
|
||||
page: this.page,
|
||||
size: this.size,
|
||||
};
|
||||
this.http
|
||||
.request("/artCountryside/myArtCountryside", obj, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.receivingList = [...this.receivingList, ...res.data.records];
|
||||
this.page = res.data.current;
|
||||
this.current = res.data.current;
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
myPosts() {
|
||||
let obj = {
|
||||
page: this.page,
|
||||
size: this.size,
|
||||
};
|
||||
this.http
|
||||
.request("/artCountryside/myPosts", obj, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.issueList = [...this.issueList, ...res.data.records];
|
||||
this.page = res.data.current;
|
||||
this.current = res.data.current;
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
onDate(time) {
|
||||
let date = new Date(time);
|
||||
return date.toLocaleString();
|
||||
},
|
||||
onPhoto(photo) {
|
||||
let src = "";
|
||||
if (photo) {
|
||||
let list = photo.split(",");
|
||||
src = list[0];
|
||||
}
|
||||
return src;
|
||||
},
|
||||
toUpimgPage(id) {
|
||||
uni.navigateTo({
|
||||
url: `/pagesD/xxgl/upload?id=${id}`,
|
||||
});
|
||||
},
|
||||
touploadedimg(id) {
|
||||
uni.navigateTo({
|
||||
url: `/pagesD/xxgl/uploadShow?id=${id}`,
|
||||
});
|
||||
},
|
||||
close() {
|
||||
this.id = "";
|
||||
this.show = false;
|
||||
},
|
||||
closeRecive() {
|
||||
this.id = "";
|
||||
this.showShoudao = false;
|
||||
},
|
||||
undone(val) {
|
||||
this.undoneId = val;
|
||||
this.showS = true;
|
||||
},
|
||||
closeS() {
|
||||
this.showS = false;
|
||||
},
|
||||
pingjia(id) {
|
||||
this.id = id;
|
||||
this.show = true;
|
||||
},
|
||||
onSubmit() {
|
||||
if (this.id == "") {
|
||||
this.show = false;
|
||||
return;
|
||||
}
|
||||
this.http
|
||||
.request(
|
||||
`/artCountryside/evaluate?id=${this.id}&evaluate=${this.evaluate}`,
|
||||
{},
|
||||
"POST"
|
||||
)
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
uni.showToast({
|
||||
title: "评价成功",
|
||||
});
|
||||
this.show = false;
|
||||
this.moreOrder(true);
|
||||
this.id = "";
|
||||
this.evaluate = "";
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: err.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
uni.showToast({
|
||||
title: err.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
moreOrder(page = null) {
|
||||
if (page) {
|
||||
this.page = 1;
|
||||
}
|
||||
if (this.tabNum == 1) {
|
||||
this.myPosts();
|
||||
} else if (this.tabNum == 2) {
|
||||
this.myArtCountryside();
|
||||
}
|
||||
},
|
||||
// receiveevlaue(id) {
|
||||
// this.showShoudao = true;
|
||||
// this.http
|
||||
// .request("/hallUser/sdpj?id=" + id, {}, "POST")
|
||||
// .then((res) => {
|
||||
// if (res.code == 200) {
|
||||
// this.starsvalue = res.data.evaluate;
|
||||
// this.showShoudao = true;
|
||||
// }
|
||||
// })
|
||||
// .catch((e) => {
|
||||
// uni.showToast({
|
||||
// title: e.data.message,
|
||||
// icon: "none",
|
||||
// });
|
||||
// });
|
||||
// },
|
||||
// done(id) {
|
||||
// this.http
|
||||
// .request("/hallUser/complete?id=" + id, {}, "POST")
|
||||
// .then((res) => {
|
||||
// if (res.code == 200) {
|
||||
// this.clickTab(1);
|
||||
// }
|
||||
// })
|
||||
// .catch((e) => {
|
||||
// uni.showToast({
|
||||
// title: e.data.message,
|
||||
// icon: "none",
|
||||
// });
|
||||
// });
|
||||
// },
|
||||
// 评价
|
||||
|
||||
// cancleBM(id) {
|
||||
// let that = this;
|
||||
// this.http
|
||||
// .request("/hallUser/qxSingUp?hallId=" + id, {}, "POST")
|
||||
// .then((res) => {
|
||||
// if (res.code == 200) {
|
||||
// this.clickTab(2);
|
||||
// uni.showToast({
|
||||
// title: "成功",
|
||||
// icon: "none",
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
// .catch((e) => {
|
||||
// uni.showToast({
|
||||
// title: e.data.message,
|
||||
// icon: "none",
|
||||
// });
|
||||
// });
|
||||
// },
|
||||
|
||||
// goActDeat(id, typEnum) {
|
||||
// if (typEnum) {
|
||||
// uni.navigateTo({
|
||||
// url: `/pagesB/orderHall/orderHallDetails?id=${id}&isCheck=${typEnum}`,
|
||||
// });
|
||||
// } else {
|
||||
// uni.navigateTo({
|
||||
// url: `/pagesB/orderHall/orderHallDetails?id=${id}`,
|
||||
// });
|
||||
// }
|
||||
// },
|
||||
|
||||
toEvlauedpg(value) {
|
||||
this.show = true;
|
||||
this.evaluate = value;
|
||||
},
|
||||
|
||||
// sureS() {
|
||||
// this.http
|
||||
// .request("/hallUser/undone?id=" + this.undoneId, {}, "POST")
|
||||
// .then((res) => {
|
||||
// if (res.code == 200) {
|
||||
// this.clickTab(this.tabNum);
|
||||
// this.showS = false;
|
||||
// }
|
||||
// })
|
||||
// .catch((e) => {
|
||||
// uni.showToast({
|
||||
// title: e.data.message,
|
||||
// icon: "none",
|
||||
// });
|
||||
// });
|
||||
// },
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
page {
|
||||
/* width: calc(100% - 64rpx);
|
||||
margin: 0rpx 32rpx; */
|
||||
background-color: #f5f5f5 !important;
|
||||
}
|
||||
|
||||
.main {
|
||||
padding: 0rpx 32rpx;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 60%;
|
||||
}
|
||||
|
||||
.acttiveSty {
|
||||
color: #9a2720;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.but_box {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.tag_sta {
|
||||
width: 160rpx;
|
||||
height: 48rpx;
|
||||
background: #f9f2f2;
|
||||
border-radius: 8rpx;
|
||||
line-height: 48rpx;
|
||||
color: #99241b;
|
||||
text-align: center;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.tag_sta_going {
|
||||
width: 100rpx;
|
||||
height: 48rpx;
|
||||
background: rgba(238, 73, 60, 0.09);
|
||||
border-radius: 8rpx;
|
||||
line-height: 48rpx;
|
||||
color: #ee493c;
|
||||
text-align: center;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.tag_sta_end {
|
||||
width: 160rpx;
|
||||
height: 48rpx;
|
||||
background: #fff4ed;
|
||||
border-radius: 8rpx;
|
||||
line-height: 48rpx;
|
||||
color: #ff6600;
|
||||
text-align: center;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.tag_sta_fail {
|
||||
width: 100rpx;
|
||||
height: 48rpx;
|
||||
background: #f5f5f5;
|
||||
border-radius: 8rpx;
|
||||
line-height: 48rpx;
|
||||
color: #7a7a7a;
|
||||
text-align: center;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.act_time {
|
||||
margin: 26rpx 0;
|
||||
height: 34rpx;
|
||||
font-size: 24rpx;
|
||||
font-family: PingFangSC-Regular, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #afadb0;
|
||||
line-height: 34rpx;
|
||||
}
|
||||
|
||||
.art_act_itm {
|
||||
margin-top: 24rpx;
|
||||
height: 628rpx;
|
||||
border-radius: 8px;
|
||||
border: 2rpx solid transparnt;
|
||||
position: relative;
|
||||
border-radius: 20rpx;
|
||||
overflow: hidden;
|
||||
background-color: #ffffff;
|
||||
|
||||
.title {
|
||||
width: 580rpx;
|
||||
color: #000000;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #251b1d;
|
||||
}
|
||||
}
|
||||
|
||||
.pinContent {
|
||||
margin-top: 16rpx;
|
||||
|
||||
textarea {
|
||||
margin: 12rpx;
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,250 @@
|
|||
<template>
|
||||
<view>
|
||||
<view class="wanShan">
|
||||
<view class="data_itm_box" style="padding: 32rpx">
|
||||
<view class="data_itm">
|
||||
<view class="data_itm_key label_t"> 图片上传 </view>
|
||||
</view>
|
||||
<u-upload
|
||||
class="upload"
|
||||
accept="image"
|
||||
width="172rpx"
|
||||
height="172rpx"
|
||||
:fileList="fileList3"
|
||||
@afterRead="afterRead"
|
||||
@delete="deletePic"
|
||||
name="3"
|
||||
multiple
|
||||
>
|
||||
<image
|
||||
style="width: 172rpx; height: 172rpx"
|
||||
src="../../static/improveData/jia.png"
|
||||
></image>
|
||||
</u-upload>
|
||||
</view>
|
||||
</view>
|
||||
<view class="operation">
|
||||
<button type="default" class="next" @click="submit">确定</button>
|
||||
</view>
|
||||
<view class="zhan_w">
|
||||
<!-- zhanwei -->
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import http from "../../request/interface.js";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
fileList3: [], //照片上传
|
||||
id: "",
|
||||
};
|
||||
},
|
||||
onLoad(option) {
|
||||
this.id = option.id;
|
||||
},
|
||||
methods: {
|
||||
// 删除图片
|
||||
deletePic(event) {
|
||||
this[`fileList${event.name}`].splice(event.index, 1);
|
||||
},
|
||||
// 新增图片
|
||||
async afterRead(event) {
|
||||
// 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
|
||||
let lists = [].concat(event.file);
|
||||
let fileListLen = this[`fileList${event.name}`].length;
|
||||
lists.map((item) => {
|
||||
this[`fileList${event.name}`].push({
|
||||
...item,
|
||||
status: "uploading",
|
||||
message: "上传中",
|
||||
});
|
||||
});
|
||||
for (let i = 0; i < lists.length; i++) {
|
||||
const result = await this.uploadFilePromise(lists[i].url);
|
||||
let item = this[`fileList${event.name}`][fileListLen];
|
||||
this[`fileList${event.name}`].splice(
|
||||
fileListLen,
|
||||
1,
|
||||
Object.assign(item, {
|
||||
status: "success",
|
||||
message: "",
|
||||
url: result,
|
||||
})
|
||||
);
|
||||
fileListLen++;
|
||||
}
|
||||
},
|
||||
uploadFilePromise(url) {
|
||||
let token = uni.getStorageSync("token");
|
||||
return new Promise((resolve, reject) => {
|
||||
let a = uni.uploadFile({
|
||||
url: http.config.baseUrl + "/file/upload",
|
||||
filePath: url,
|
||||
name: "file",
|
||||
formData: {
|
||||
user: "test",
|
||||
},
|
||||
header: {
|
||||
"X-Token": token,
|
||||
},
|
||||
success: (res) => {
|
||||
if (JSON.parse(res.data).code == 200) {
|
||||
setTimeout(() => {
|
||||
resolve(JSON.parse(res.data).data.path);
|
||||
}, 1000);
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: JSON.parse(res.data).message,
|
||||
icon: "none",
|
||||
});
|
||||
this.fileList3.pop();
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
},
|
||||
submit() {
|
||||
let image = [];
|
||||
this.fileList3.forEach(function (item) {
|
||||
image.push(item.url);
|
||||
});
|
||||
let data = image.join(",");
|
||||
console.log(data);
|
||||
this.http
|
||||
.request(
|
||||
"/artCountryside/addPhotos?id=" + this.id + "&photos=" + data,
|
||||
{},
|
||||
"POST"
|
||||
)
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
uni.navigateBack();
|
||||
}
|
||||
})
|
||||
.catch((e) => {
|
||||
uni.showToast({
|
||||
title: e.data.message,
|
||||
icon: "none",
|
||||
});
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
/* page {
|
||||
background-color: #F5F5F5;
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
.p32 {
|
||||
padding: 20rpx !important;
|
||||
}
|
||||
|
||||
.WenYiUpload {
|
||||
margin-top: 16rpx;
|
||||
}
|
||||
|
||||
.te /deep/ .u-form-item__body__right__content__slot {
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.upload {
|
||||
padding-top: 32rpx;
|
||||
}
|
||||
|
||||
.data_itm_box {
|
||||
padding: 32rpx 0rpx;
|
||||
|
||||
.chen_itm {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 16rpx;
|
||||
|
||||
.right_img_box {
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
margin-left: 16rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
|
||||
margin-bottom: 16rpx;
|
||||
border: 1px solid transparent;
|
||||
padding: 0 32rpx;
|
||||
background-color: #ffffff;
|
||||
|
||||
.data_itm {
|
||||
.label_t {
|
||||
font-size: 28rpx;
|
||||
color: $black;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
.xie {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 16rpx;
|
||||
}
|
||||
|
||||
.upload_box {
|
||||
width: 166rpx;
|
||||
height: 166rpx;
|
||||
margin-left: 32rpx;
|
||||
position: relative;
|
||||
background-color: #f8f8f8;
|
||||
margin-bottom: 64rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.operation {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding: 32rpx 32rpx 48rpx;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
background-color: #ffffff;
|
||||
box-shadow: 0px -4px 10px 1px rgba(192, 192, 192, 0.12);
|
||||
z-index: 99;
|
||||
|
||||
.next {
|
||||
width: calc(100% - 48rpx);
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
|
||||
background-color: #99241b;
|
||||
color: #fff;
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
|
||||
border: none;
|
||||
|
||||
button {
|
||||
&::after {
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.zhan_w {
|
||||
height: 160rpx;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,59 @@
|
|||
<template>
|
||||
<view class="im">
|
||||
<image
|
||||
v-for="(v, i) in imgArr"
|
||||
class="imgSt"
|
||||
:src="v"
|
||||
mode=""
|
||||
:key="i"
|
||||
></image>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
id: "",
|
||||
imgArr: [],
|
||||
};
|
||||
},
|
||||
onLoad(query) {
|
||||
this.id = query.id;
|
||||
// let imgarrs = [];
|
||||
// op.imgstring.split(",").forEach(function (eml, index) {
|
||||
// imgarrs.push(eml);
|
||||
// });
|
||||
// this.imgArr = imgarrs;
|
||||
},
|
||||
onShow() {
|
||||
this.onInfo();
|
||||
},
|
||||
methods: {
|
||||
onInfo() {
|
||||
this.http
|
||||
.request(`/artCountryside/details`, { id: this.id }, "GET")
|
||||
.then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.imgArr = res.data.photos.split(",");
|
||||
}
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.imgSt {
|
||||
width: 200rpx;
|
||||
height: 200rpx;
|
||||
border-radius: 10rpx;
|
||||
overflow: hidden;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
page {
|
||||
padding-top: 24rpx;
|
||||
width: calc(100% - 32rpx);
|
||||
margin: 0 auto;
|
||||
}
|
||||
</style>
|
|
@ -5,10 +5,10 @@
|
|||
|
||||
export default {
|
||||
config: {
|
||||
// baseUrl: "http://10.0.0.61:8080/h5/api", //俞燕红-小程序不能配跨域
|
||||
baseUrl: "/pre", //俞燕红-跨域
|
||||
// baseUrl: "http://192.168.1.3:8080/h5/api", //俞燕红-小程序不能配跨域
|
||||
// baseUrl: "/pre", //俞燕红-跨域
|
||||
// baseUrl: "https://yxx.ydool.net/h5/api", //线上
|
||||
// baseUrl: "/h5/api", //h5
|
||||
baseUrl: "/h5/api", //h5
|
||||
header: {
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
// 'Content-Type':'application/x-www-form-urlencoded'
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 394 B |
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 7.7 KiB |
Loading…
Reference in New Issue