5 changed files with 604 additions and 578 deletions
File diff suppressed because it is too large
@ -1,286 +1,269 @@ |
|||
<template> |
|||
<div> |
|||
<div class="dialog-h-content scroll-h"> |
|||
|
|||
<el-form ref="ref_form" |
|||
:inline="true" |
|||
:model="formData" |
|||
:rules="dataRule" |
|||
class="div_form"> |
|||
|
|||
<el-form-item label="日程标题" |
|||
prop="title" |
|||
label-width="150px" |
|||
style="display: block"> |
|||
<el-input class="item_width_1" |
|||
placeholder="请输入活动标题" |
|||
v-model="formData.title"> |
|||
<el-form |
|||
ref="ref_form" |
|||
:inline="true" |
|||
:model="formData" |
|||
:rules="dataRule" |
|||
class="div_form" |
|||
> |
|||
<el-form-item |
|||
label="日程标题" |
|||
prop="title" |
|||
label-width="150px" |
|||
style="display: block" |
|||
> |
|||
<el-input |
|||
class="item_width_1" |
|||
placeholder="请输入活动标题" |
|||
v-model="formData.title" |
|||
> |
|||
</el-input> |
|||
</el-form-item> |
|||
<el-form-item label="日程时间" |
|||
style="display: block" |
|||
prop="happenedTime" |
|||
label-width="150px"> |
|||
<el-date-picker v-model="formData.happenedTime" |
|||
value-format="yyyy-MM-dd HH:mm:ss" |
|||
format="yyyy-MM-dd" |
|||
type="date" |
|||
placeholder="选择时间"> |
|||
<el-form-item |
|||
label="日程时间" |
|||
style="display: block" |
|||
prop="happenedTime" |
|||
label-width="150px" |
|||
> |
|||
<el-date-picker |
|||
v-model="formData.happenedTime" |
|||
value-format="yyyy-MM-dd HH:mm:ss" |
|||
format="yyyy-MM-dd" |
|||
type="date" |
|||
placeholder="选择时间" |
|||
> |
|||
</el-date-picker> |
|||
</el-form-item> |
|||
<el-form-item label="提醒时间" |
|||
style="display: block" |
|||
prop="remindTime" |
|||
label-width="150px"> |
|||
<el-date-picker v-model="formData.remindTime" |
|||
value-format="yyyy-MM-dd HH:mm:ss" |
|||
format="yyyy-MM-dd" |
|||
placeholder="选择时间"> |
|||
<el-form-item |
|||
label="提醒时间" |
|||
style="display: block" |
|||
prop="remindTime" |
|||
label-width="150px" |
|||
> |
|||
<el-date-picker |
|||
v-model="formData.remindTime" |
|||
value-format="yyyy-MM-dd HH:mm:ss" |
|||
format="yyyy-MM-dd" |
|||
placeholder="选择时间" |
|||
> |
|||
</el-date-picker> |
|||
</el-form-item> |
|||
|
|||
<el-form-item label="是否公开" |
|||
label-width="150px" |
|||
prop="isPublic"> |
|||
<el-select v-model="formData.isPublic" |
|||
placeholder="请选择" |
|||
clearable |
|||
class="item_width_1"> |
|||
<el-option v-for="item in gongkaiArray" |
|||
:key="item.value" |
|||
:label="item.label" |
|||
:value="item.value"> |
|||
<el-form-item label="是否公开" label-width="150px" prop="isPublic"> |
|||
<el-select |
|||
v-model="formData.isPublic" |
|||
placeholder="请选择" |
|||
clearable |
|||
class="item_width_1" |
|||
> |
|||
<el-option |
|||
v-for="item in gongkaiArray" |
|||
:key="item.value" |
|||
:label="item.label" |
|||
:value="item.value" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
|
|||
<el-form-item label="日程介绍" |
|||
prop="remark" |
|||
label-width="150px" |
|||
style="display: block"> |
|||
<el-input class="item_width_1" |
|||
type="textarea" |
|||
maxlength="500" |
|||
show-word-limit |
|||
:rows="3" |
|||
placeholder="请输入日程介绍,不超过500字" |
|||
v-model="formData.remark"></el-input> |
|||
<el-form-item |
|||
label="日程介绍" |
|||
prop="remark" |
|||
label-width="150px" |
|||
style="display: block" |
|||
> |
|||
<el-input |
|||
class="item_width_1" |
|||
type="textarea" |
|||
maxlength="500" |
|||
show-word-limit |
|||
:rows="3" |
|||
placeholder="请输入日程介绍,不超过500字" |
|||
v-model="formData.remark" |
|||
></el-input> |
|||
</el-form-item> |
|||
|
|||
</el-form> |
|||
|
|||
</div> |
|||
|
|||
<div class="div_btn"> |
|||
<el-button size="small" |
|||
@click="handleCancle">取 消</el-button> |
|||
<el-button size="small" |
|||
type="primary" |
|||
:disabled="btnDisable" |
|||
@click="handleComfirm">确 定</el-button> |
|||
<el-button size="small" @click="handleCancle">取 消</el-button> |
|||
<el-button |
|||
size="small" |
|||
type="primary" |
|||
:disabled="btnDisable" |
|||
@click="handleComfirm" |
|||
>确 定</el-button |
|||
> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { mapGetters } from 'vuex' |
|||
import { Loading } from 'element-ui' // 引入Loading服务 |
|||
import { requestPost, requestGet } from '@/js/dai/request' |
|||
|
|||
|
|||
import { mapGetters } from "vuex"; |
|||
import { Loading } from "element-ui"; // 引入Loading服务 |
|||
import { requestPost, requestGet } from "@/js/dai/request"; |
|||
|
|||
|
|||
let loading // 加载动画 |
|||
let loading; // 加载动画 |
|||
export default { |
|||
data () { |
|||
data() { |
|||
return { |
|||
btnDisable: false, |
|||
|
|||
|
|||
formData: { |
|||
title: '',// |
|||
remindTime: '',// |
|||
isPublic: '',// |
|||
remark: '',// |
|||
scheduleId: '', |
|||
happenedTime: '' |
|||
title: "", // |
|||
remindTime: "", // |
|||
isPublic: "", // |
|||
remark: "", // |
|||
scheduleId: "", |
|||
happenedTime: "", |
|||
}, |
|||
|
|||
|
|||
gongkaiArray: [ |
|||
{ |
|||
value: '0', |
|||
label: '仅自己可见' |
|||
value: "0", |
|||
label: "仅自己可见", |
|||
}, |
|||
{ |
|||
value: '1', |
|||
label: '组织内其他人可见' |
|||
value: "1", |
|||
label: "组织内其他人可见", |
|||
}, |
|||
|
|||
], |
|||
|
|||
} |
|||
}; |
|||
}, |
|||
|
|||
watch: { |
|||
|
|||
}, |
|||
watch: {}, |
|||
components: {}, |
|||
async mounted () { |
|||
|
|||
async mounted() { |
|||
if (this.scheduleId) { |
|||
this.formData.scheduleId = this.scheduleId |
|||
await this.loadInfo() |
|||
|
|||
this.formData.scheduleId = this.scheduleId; |
|||
await this.loadInfo(); |
|||
} else { |
|||
this.$refs.ref_form.resetFields(); |
|||
} |
|||
|
|||
}, |
|||
|
|||
|
|||
methods: { |
|||
|
|||
async handleComfirm () { |
|||
|
|||
this.handleAdd() |
|||
async handleComfirm() { |
|||
this.handleAdd(); |
|||
}, |
|||
|
|||
async loadInfo () { |
|||
async loadInfo() { |
|||
const url = `/resi/partymember/icSchedule/${this.scheduleId}`; |
|||
// const url = `http://yapi.elinkservice.cn/mock/245/resi/partymember/icPartyAct/act-detail/${this.icPartyActId}`; |
|||
|
|||
let params = {} |
|||
let params = {}; |
|||
|
|||
const { data, code, msg } = await requestPost(url, params) |
|||
const { data, code, msg } = await requestPost(url, params); |
|||
|
|||
if (code === 0) { |
|||
this.formData = { ...data } |
|||
this.formData.scheduleId = this.scheduleId |
|||
|
|||
this.formData = { ...data }; |
|||
this.formData.scheduleId = this.scheduleId; |
|||
} else { |
|||
this.$message.error(msg) |
|||
this.$message.error(msg); |
|||
} |
|||
}, |
|||
|
|||
async handleAdd () { |
|||
|
|||
this.btnDisable = true |
|||
async handleAdd() { |
|||
this.btnDisable = true; |
|||
setTimeout(() => { |
|||
this.btnDisable = false |
|||
}, 10000) |
|||
this.$refs['ref_form'].validate((valid, messageObj) => { |
|||
this.btnDisable = false; |
|||
}, 10000); |
|||
this.$refs["ref_form"].validate((valid, messageObj) => { |
|||
if (!valid) { |
|||
|
|||
this.btnDisable = false |
|||
this.btnDisable = false; |
|||
} else { |
|||
|
|||
this.addSchedule() |
|||
|
|||
this.addSchedule(); |
|||
} |
|||
|
|||
}) |
|||
|
|||
}); |
|||
}, |
|||
|
|||
async addSchedule () { |
|||
async addSchedule() { |
|||
console.log(this.formData); |
|||
|
|||
console.log(this.formData) |
|||
|
|||
|
|||
const url = '/resi/partymember/icSchedule/addOrEdit' |
|||
const url = "/resi/partymember/icSchedule/addOrEdit"; |
|||
// const url = 'http://yapi.elinkservice.cn/mock/245/icSchedule/addOrEdit' |
|||
let params = { |
|||
|
|||
...this.formData |
|||
} |
|||
...this.formData, |
|||
}; |
|||
//params.happenedTime = this.formData+" 08:00:00" |
|||
|
|||
const { data, code, msg } = await requestPost(url, params) |
|||
const { data, code, msg } = await requestPost(url, params); |
|||
|
|||
if (code === 0) { |
|||
this.$message.success('操作成功') |
|||
this.resetData() |
|||
this.$emit('handleOk') |
|||
this.$message.success("操作成功"); |
|||
this.resetData(); |
|||
this.$emit("handleOk"); |
|||
} else { |
|||
this.$message.error(msg) |
|||
this.$message.error(msg); |
|||
} |
|||
}, |
|||
|
|||
|
|||
|
|||
handleCancle () { |
|||
this.resetData() |
|||
this.$emit('handleClose') |
|||
|
|||
handleCancle() { |
|||
this.resetData(); |
|||
this.$emit("handleClose"); |
|||
}, |
|||
|
|||
resetData () { |
|||
this.scheduleId = '' |
|||
resetData() { |
|||
this.scheduleId = ""; |
|||
this.formData = { |
|||
title: '',// |
|||
remindTime: '',// |
|||
isPublic: '',// |
|||
remark: '',// |
|||
scheduleId: '', |
|||
} |
|||
|
|||
title: "", // |
|||
remindTime: "", // |
|||
isPublic: "", // |
|||
remark: "", // |
|||
scheduleId: "", |
|||
}; |
|||
}, |
|||
// 开启加载动画 |
|||
startLoading () { |
|||
startLoading() { |
|||
loading = Loading.service({ |
|||
lock: true, // 是否锁定 |
|||
text: '正在加载……', // 加载中需要显示的文字 |
|||
background: 'rgba(0,0,0,.7)' // 背景颜色 |
|||
}) |
|||
text: "正在加载……", // 加载中需要显示的文字 |
|||
background: "rgba(0,0,0,.7)", // 背景颜色 |
|||
}); |
|||
}, |
|||
// 结束加载动画 |
|||
endLoading () { |
|||
endLoading() { |
|||
// clearTimeout(timer); |
|||
if (loading) { |
|||
loading.close() |
|||
loading.close(); |
|||
} |
|||
} |
|||
}, |
|||
}, |
|||
computed: { |
|||
dataRule () { |
|||
dataRule() { |
|||
return { |
|||
|
|||
title: [ |
|||
{ required: true, message: '日程标题不能为空', trigger: 'change' }, |
|||
{ required: true, message: "日程标题不能为空", trigger: "change" }, |
|||
], |
|||
remindTime: [ |
|||
{ required: true, message: '提醒时间不能为空', trigger: 'change' } |
|||
{ required: true, message: "提醒时间不能为空", trigger: "change" }, |
|||
], |
|||
happenedTime: [ |
|||
{ required: true, message: '日程时间不能为空', trigger: 'change' } |
|||
{ required: true, message: "日程时间不能为空", trigger: "change" }, |
|||
], |
|||
isPublic: [ |
|||
{ required: true, message: '是否公开不能为空', trigger: 'change' } |
|||
{ required: true, message: "是否公开不能为空", trigger: "change" }, |
|||
], |
|||
|
|||
} |
|||
}; |
|||
}, |
|||
|
|||
}, |
|||
props: { |
|||
|
|||
|
|||
formType: { //表单操作类型 add新增,edit编辑,detail详情,feedback反馈 |
|||
formType: { |
|||
//表单操作类型 add新增,edit编辑,detail详情,feedback反馈 |
|||
type: String, |
|||
required: '' |
|||
required: "", |
|||
}, |
|||
scheduleId: { //表单操作类型 add新增,edit编辑,detail详情,feedback反馈 |
|||
scheduleId: { |
|||
//表单操作类型 add新增,edit编辑,detail详情,feedback反馈 |
|||
type: String, |
|||
required: '' |
|||
required: "", |
|||
}, |
|||
|
|||
|
|||
} |
|||
} |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
|
|||
<style lang="scss" scoped > |
|||
<style lang="scss" scoped> |
|||
@import "@/assets/scss/modules/management/form-main.scss"; |
|||
</style> |
|||
|
Loading…
Reference in new issue