8/31 dev 权限,sse,账单,bug
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
<el-row>
|
||||
<el-col :span="13">
|
||||
<el-form-item label="活动标题" prop="title">
|
||||
<el-input maxlength="30" v-model.trim="form.title" placeholder="请输入活动标题" />
|
||||
<el-input v-model.trim="form.title" maxlength="30" placeholder="请输入活动标题" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<!-- <el-col :span="11">-->
|
||||
@@ -23,11 +23,13 @@
|
||||
<el-col :span="11">
|
||||
<el-form-item label="报名截止日期" prop="applyDeadline">
|
||||
<el-date-picker
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
v-model="deadline"
|
||||
style="width: 100%"
|
||||
:disabled-date="disabledDate"
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
placeholder="请选择报名截止日期"
|
||||
style="width: 100%"
|
||||
type="datetime"
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
@update:model-value="
|
||||
(data) => {
|
||||
if (data) {
|
||||
@@ -37,8 +39,6 @@
|
||||
}
|
||||
}
|
||||
"
|
||||
type="datetime"
|
||||
placeholder="请选择报名截止日期"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -48,7 +48,11 @@
|
||||
<el-form-item label="活动时间" prop="startTime">
|
||||
<el-date-picker
|
||||
v-model="activityTime"
|
||||
end-placeholder="结束活动"
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
range-separator="至"
|
||||
start-placeholder="开始活动"
|
||||
type="datetimerange"
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
@change="
|
||||
(data: string[] | null) => {
|
||||
@@ -61,16 +65,12 @@
|
||||
}
|
||||
}
|
||||
"
|
||||
type="datetimerange"
|
||||
range-separator="至"
|
||||
start-placeholder="开始活动"
|
||||
end-placeholder="结束活动"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-form-item label="活动地点" prop="address">
|
||||
<el-input maxlength="50" type="textarea" show-word-limit v-model.trim="form.address" placeholder="请输入活动地点" />
|
||||
<el-input v-model.trim="form.address" maxlength="50" placeholder="请输入活动地点" show-word-limit type="textarea" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -78,8 +78,14 @@
|
||||
<el-col :span="13">
|
||||
<el-form-item label="签到时间" prop="signinStartTime">
|
||||
<el-date-picker
|
||||
v-model="SigninTime"
|
||||
v-model="SignInTime"
|
||||
:disabled="!Boolean(form.endTime)"
|
||||
:disabled-date="disabledSignInDate"
|
||||
end-placeholder="结束签到"
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
range-separator="至"
|
||||
start-placeholder="开始签到"
|
||||
type="datetimerange"
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
@change="
|
||||
(data: string[] | null) => {
|
||||
@@ -92,28 +98,24 @@
|
||||
}
|
||||
}
|
||||
"
|
||||
type="datetimerange"
|
||||
range-separator="至"
|
||||
start-placeholder="开始签到"
|
||||
end-placeholder="结束签到"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-form-item label="主办方" prop="organizer">
|
||||
<el-input maxlength="20" v-model.trim="form.organizer" placeholder="请输入主办方" />
|
||||
<el-input v-model.trim="form.organizer" maxlength="20" placeholder="请输入主办方" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="13">
|
||||
<el-form-item label="联系人" prop="contactName">
|
||||
<el-input maxlength="20" v-model.trim="form.contactName" placeholder="请输入联系人" />
|
||||
<el-input v-model.trim="form.contactName" maxlength="20" placeholder="请输入联系人" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-form-item label="联系方式" prop="contactPhone">
|
||||
<el-input maxlength="20" v-model.trim="form.contactPhone" placeholder="请输入联系方式" />
|
||||
<el-input v-model.trim="form.contactPhone" maxlength="11" placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -121,7 +123,7 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="活动名额" prop="quota">
|
||||
<div class="flex items-center">
|
||||
<el-input-number v-model.trim.number="form.quota" :min="0" :max="99999" placeholder="0代表无限" />
|
||||
<el-input-number v-model.trim.number="form.quota" :max="99999" :min="0" placeholder="0代表无限" />
|
||||
<span class="ml-2 text-gray-500 text-sm" style="font-size: 12px">(填 <strong>0</strong> 代表 <u>不限制名额</u> )</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
@@ -132,17 +134,17 @@
|
||||
<el-form-item label="活动封面" prop="title">
|
||||
<el-upload
|
||||
ref="upload"
|
||||
class="avatar-uploader"
|
||||
:action="uploadUrl"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:on-exceed="handleExceed"
|
||||
:before-upload="handleBeforeUpload"
|
||||
:on-error="handleError"
|
||||
accept=".png,.jpg,.jpeg,.bmp"
|
||||
:limit="1"
|
||||
:on-error="handleError"
|
||||
:on-exceed="handleExceed"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:show-file-list="false"
|
||||
accept=".png,.jpg,.jpeg,.bmp"
|
||||
class="avatar-uploader"
|
||||
>
|
||||
<img alt="活动封面" v-if="form.coverImage" :src="form.coverImage" class="avatar" />
|
||||
<img v-if="form.coverImage" :src="form.coverImage" alt="活动封面" class="avatar" />
|
||||
<el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
@@ -151,14 +153,14 @@
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-form-item label="招募要求" prop="requirements">
|
||||
<editor v-model="form.requirements" :height="200" :min-height="200" :read-only="false" :file-size="5" :type="'url'" />
|
||||
<editor v-model="form.requirements" :file-size="5" :height="200" :min-height="200" :read-only="false" :type="'url'" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-form-item label="活动详情" prop="content">
|
||||
<editor v-model="form.content" :height="300" :min-height="300" :read-only="false" :file-size="5" :type="'url'" />
|
||||
<editor v-model="form.content" :file-size="5" :height="300" :min-height="300" :read-only="false" :type="'url'" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -187,7 +189,7 @@
|
||||
<el-col :span="13">
|
||||
<el-form-item label="签到时间" prop="signinStartTime">
|
||||
<el-date-picker
|
||||
v-model="SigninTime"
|
||||
v-model="SignInTime"
|
||||
type="datetimerange"
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
@@ -238,7 +240,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
<script lang="ts" setup>
|
||||
import editor from '@/components/Editor/index.vue';
|
||||
import { ref } from 'vue';
|
||||
import PageHeader from '@/components/Pageheader/index.vue';
|
||||
@@ -333,8 +335,8 @@ const rules = {
|
||||
contactPhone: [
|
||||
{ required: true, message: '请输入联系方式', trigger: 'blur' },
|
||||
{
|
||||
validator: (_: any, value: string | number) => validator(value, 'Character'),
|
||||
message: '请输入中文,字母,数字等字符',
|
||||
validator: (_: any, value: string | number) => validator(value, 'phone'),
|
||||
message: '请输入联系方式',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
@@ -348,12 +350,16 @@ const disabledDate = (time: string) => {
|
||||
const selectDate = new Date(time);
|
||||
return selectDate.getTime() < today.getTime();
|
||||
};
|
||||
|
||||
function disabledSignInDate(time: string) {
|
||||
const selectDate = new Date(time);
|
||||
const today = new Date(form.value.endTime);
|
||||
return selectDate.getTime() > today.getTime();
|
||||
}
|
||||
const userid = ref();
|
||||
// 报名截止日期
|
||||
const deadline = ref([]);
|
||||
// 有效签到时间
|
||||
const SigninTime = ref([]);
|
||||
const SignInTime = ref([]);
|
||||
// 活动时间
|
||||
const activityTime = ref([]);
|
||||
|
||||
@@ -553,7 +559,7 @@ function init() {
|
||||
...res.data
|
||||
};
|
||||
activityTime.value = [res.data.startTime, res.data.endTime];
|
||||
SigninTime.value = [res.data.signinStartTime, res.data.signinEndTime];
|
||||
SignInTime.value = [res.data.signinStartTime, res.data.signinEndTime];
|
||||
deadline.value = [res.data.applyDeadline];
|
||||
|
||||
// if (res.data?.SignInfo !== null) {
|
||||
@@ -565,7 +571,7 @@ function init() {
|
||||
// 提交
|
||||
const submitForm = (status: string) => {
|
||||
form.value.status = status;
|
||||
console.log(form.value);
|
||||
|
||||
// if (!isSignin.value) {
|
||||
// form.value.SignInfo = null;
|
||||
// }
|
||||
@@ -611,7 +617,7 @@ onUnmounted(() => {
|
||||
});
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.SignMapbox {
|
||||
height: 500px;
|
||||
width: 500px;
|
||||
|
||||
Reference in New Issue
Block a user