|
|
@ -14,13 +14,18 @@ |
|
|
|
<el-form-item label="主办方" |
|
|
|
prop="sponsorId" |
|
|
|
label-width="150px"> |
|
|
|
<el-cascader class="item_width_6" |
|
|
|
|
|
|
|
<el-cascader v-if="formData.richTextFlag||formType==='add'" |
|
|
|
class="item_width_6" |
|
|
|
ref="myCascader" |
|
|
|
v-model="agencyIdArray" |
|
|
|
:options="orgOptions" |
|
|
|
:props="orgOptionProps" |
|
|
|
:show-all-levels="false" |
|
|
|
@change="handleChangeAgency"></el-cascader> |
|
|
|
<el-input v-else |
|
|
|
class="item_width_6" |
|
|
|
v-model="formData.sponsorName"></el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="活动标题" |
|
|
@ -127,7 +132,7 @@ |
|
|
|
prop="auditSwitch" |
|
|
|
label-width="150px" |
|
|
|
style="display: block"> |
|
|
|
<el-checkbox v-model="formData.auditSwitch"></el-checkbox> |
|
|
|
<el-checkbox v-model="formData.noauditSwitch"></el-checkbox> |
|
|
|
<span class="div-tooltip">(选中后报名参加活动人员可以直接审核通过)</span> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
@ -262,19 +267,57 @@ |
|
|
|
</div> |
|
|
|
<el-form-item label="活动详情" |
|
|
|
prop="actContentHtml" |
|
|
|
label-width="150px"> |
|
|
|
<!-- <div style="width:400px"> --> |
|
|
|
<Tinymce class="tinymce_view" |
|
|
|
v-if="formType!='detail'" |
|
|
|
v-model="formData.actContentHtml" |
|
|
|
:height="250" |
|
|
|
style="width:1000px" |
|
|
|
:customerId="customerId" |
|
|
|
placeholder="在这里输入文字" /> |
|
|
|
<p v-else |
|
|
|
class="text_p" |
|
|
|
v-html="formData.actContentHtml"></p> |
|
|
|
<!-- </div> --> |
|
|
|
label-width="150px" |
|
|
|
style="display: block"> |
|
|
|
|
|
|
|
<div v-if="formData.richTextFlag||formType === 'add'"> |
|
|
|
<Tinymce class="tinymce_view" |
|
|
|
v-if="formType!='detail'" |
|
|
|
v-model="formData.actContentHtml" |
|
|
|
:height="250" |
|
|
|
style="width:1000px" |
|
|
|
:customerId="customerId" |
|
|
|
placeholder="在这里输入文字" /> |
|
|
|
<p v-else |
|
|
|
class="text_p" |
|
|
|
v-html="formData.actContentHtml"></p> |
|
|
|
</div> |
|
|
|
<div class="div_content" |
|
|
|
v-else> |
|
|
|
<div v-for="(item,index) in formData.actContent" |
|
|
|
:key="index"> |
|
|
|
<div v-if="item.contentType==='text'">{{item.content}}</div> |
|
|
|
<img v-if="item.contentType==='img'" |
|
|
|
class="img_icon" |
|
|
|
:src="item.content"> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item v-if="formData.summaryFlag" |
|
|
|
label="活动回顾" |
|
|
|
prop="summaryContentHtml" |
|
|
|
label-width="150px" |
|
|
|
style="display: block"> |
|
|
|
|
|
|
|
<div v-if="formData.richTextFlag"> |
|
|
|
|
|
|
|
<p class="text_p" |
|
|
|
v-html="formData.summaryContentHtml"></p> |
|
|
|
</div> |
|
|
|
<div class="div_content" |
|
|
|
v-else> |
|
|
|
<div v-for="(item,index) in formData.summaryContent" |
|
|
|
:key="index"> |
|
|
|
<div v-if="item.contentType==='text'">{{item.content}}</div> |
|
|
|
<img v-if="item.contentType==='img'" |
|
|
|
class="img_icon" |
|
|
|
:src="item.content"> |
|
|
|
<p v-if="item.contentType==='rich_text'" |
|
|
|
class="text_p" |
|
|
|
v-html="item.content"></p> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
|
|
|
@ -366,7 +409,8 @@ export default { |
|
|
|
actQuota: undefined, |
|
|
|
actStartTime: "", |
|
|
|
actType: "heart", |
|
|
|
auditSwitch: false, |
|
|
|
noauditSwitch: false, |
|
|
|
auditSwitch: true, |
|
|
|
coverPic: "", |
|
|
|
coverPicAuditStatus: "", |
|
|
|
customerId: "", |
|
|
@ -406,6 +450,7 @@ export default { |
|
|
|
actQuota: 50, |
|
|
|
actStartTime: "2022-07-15 00:00", |
|
|
|
actType: "heart", |
|
|
|
noauditSwitch: false, |
|
|
|
auditSwitch: true, |
|
|
|
coverPic: "", |
|
|
|
coverPicAuditStatus: "", |
|
|
@ -466,8 +511,8 @@ export default { |
|
|
|
components: { Tinymce }, |
|
|
|
mounted () { |
|
|
|
this.customerId = localStorage.getItem('customerId') |
|
|
|
this.initMap() |
|
|
|
this.loadSponsorlist() |
|
|
|
this.initMap() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -479,9 +524,6 @@ export default { |
|
|
|
async initForm (type, actId) { |
|
|
|
this.$refs.ref_form.resetFields(); |
|
|
|
|
|
|
|
this.formData = JSON.parse(JSON.stringify(this.formDataTemp)); |
|
|
|
this.agencyIdArray = this.formData.sponsorPath.split(',') |
|
|
|
|
|
|
|
this.formType = type |
|
|
|
if (actId) { |
|
|
|
this.startLoading() |
|
|
@ -490,6 +532,11 @@ export default { |
|
|
|
await this.loadFormData() |
|
|
|
this.endLoading() |
|
|
|
|
|
|
|
} else { |
|
|
|
this.actId = '' |
|
|
|
this.formData.actId = '' |
|
|
|
// this.formData = JSON.parse(JSON.stringify(this.formDataTemp)); |
|
|
|
// this.agencyIdArray = this.formData.sponsorPath.split(',') |
|
|
|
} |
|
|
|
|
|
|
|
}, |
|
|
@ -518,8 +565,9 @@ export default { |
|
|
|
handleChangeAgency (val) { |
|
|
|
let obj = this.$refs["myCascader"].getCheckedNodes()[0].data |
|
|
|
if (obj) { |
|
|
|
|
|
|
|
this.formData.sponsorId = obj.gridId |
|
|
|
this.formData.sponsorName = obj.agencyName |
|
|
|
this.formData.sponsorName = obj.agencyGridName |
|
|
|
this.formData.sponsorPath = this.agencyIdArray.join(',') |
|
|
|
|
|
|
|
|
|
|
@ -551,10 +599,17 @@ export default { |
|
|
|
if (code === 0) { |
|
|
|
|
|
|
|
this.formData = JSON.parse(JSON.stringify(data)); |
|
|
|
this.agencyIdArray = this.formData.sponsorPath.split(',') |
|
|
|
if (this.formData.actContent && this.formData.actContent.length > 0) { |
|
|
|
this.formData.actContentHtml = this.formData.actContent[0].content |
|
|
|
if (this.formData.richTextFlag) { |
|
|
|
this.agencyIdArray = this.formData.sponsorPath.split(',') |
|
|
|
if (this.formData.actContent && this.formData.actContent.length > 0) { |
|
|
|
this.formData.actContentHtml = this.formData.actContent[0].content |
|
|
|
} |
|
|
|
if (this.formData.summaryContent && this.formData.summaryContent.length > 0) { |
|
|
|
this.formData.summaryContentHtml = this.formData.summaryContent[0].content |
|
|
|
} |
|
|
|
} |
|
|
|
this.formData.noauditSwitch = !this.formData.auditSwitch |
|
|
|
|
|
|
|
|
|
|
|
if (this.formData.coverPic) { |
|
|
|
let obj = { |
|
|
@ -589,6 +644,28 @@ export default { |
|
|
|
app.util.validateRule(messageObj) |
|
|
|
this.btnDisable = false |
|
|
|
} else { |
|
|
|
let errBeforeSubmit = '' |
|
|
|
|
|
|
|
if ( |
|
|
|
new Date(this.formData.actEndTime).getTime() <= |
|
|
|
new Date(this.formData.actStartTime).getTime() |
|
|
|
) { |
|
|
|
errBeforeSubmit = "活动预计开始时间应早于活动预计结束时间"; |
|
|
|
} else if ( |
|
|
|
new Date(this.formData.signInEndTime).getTime() <= |
|
|
|
new Date(this.formData.signInStartTime).getTime() |
|
|
|
) { |
|
|
|
errBeforeSubmit = "签到开始时间应早于签到结束时间"; |
|
|
|
} |
|
|
|
|
|
|
|
if (errBeforeSubmit) { |
|
|
|
this.$message({ |
|
|
|
type: 'info', |
|
|
|
message: errBeforeSubmit |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
|
|
|
|
this.addHeartAct() |
|
|
|
} |
|
|
|
|
|
|
@ -604,9 +681,12 @@ export default { |
|
|
|
this.formData.actContent.push(obj) |
|
|
|
|
|
|
|
this.formData.customerId = this.customerId |
|
|
|
this.formData.noticePassedPeople = false |
|
|
|
this.formData.auditSwitch = !this.formData.noauditSwitch |
|
|
|
|
|
|
|
let url = "/heart/work/act/publishV2" |
|
|
|
if (this.actId) { |
|
|
|
this.formData.actId = this.actId |
|
|
|
url = '/heart/work/act/republishV2' |
|
|
|
} else { |
|
|
|
url = "/heart/work/act/publishV2" |
|
|
@ -614,9 +694,9 @@ export default { |
|
|
|
|
|
|
|
// let url = "http://yapi.elinkservice.cn/mock/245/gov/org/placepatrolrecord/add" |
|
|
|
|
|
|
|
|
|
|
|
this.startLoading() |
|
|
|
const { data, code, msg } = await requestPost(url, this.formData) |
|
|
|
|
|
|
|
this.endLoading() |
|
|
|
if (code === 0) { |
|
|
|
this.$message({ |
|
|
|
type: 'success', |
|
|
@ -841,6 +921,10 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
resetData () { |
|
|
|
this.actId = '' |
|
|
|
this.replayImgList = [] |
|
|
|
this.agencyIdArray = [] |
|
|
|
this.hideUploadBtn = false |
|
|
|
this.formData = { |
|
|
|
actAddress: "", |
|
|
|
actContentHtml: "", |
|
|
@ -853,7 +937,8 @@ export default { |
|
|
|
actQuota: undefined, |
|
|
|
actStartTime: "", |
|
|
|
actType: "heart", |
|
|
|
auditSwitch: false, |
|
|
|
noauditSwitch: false, |
|
|
|
auditSwitch: true, |
|
|
|
coverPic: "", |
|
|
|
coverPicAuditStatus: "", |
|
|
|
customerId: "", |
|
|
@ -966,6 +1051,22 @@ export default { |
|
|
|
margin-left: 10px; |
|
|
|
color: red; |
|
|
|
} |
|
|
|
|
|
|
|
.text_p { |
|
|
|
margin: 0 0; |
|
|
|
border: 3px; |
|
|
|
|
|
|
|
> p { |
|
|
|
margin: 0 0; |
|
|
|
} |
|
|
|
} |
|
|
|
.div_content { |
|
|
|
width: 1000px; |
|
|
|
} |
|
|
|
.img_icon { |
|
|
|
width: 200px; |
|
|
|
height: 200px; |
|
|
|
} |
|
|
|
</style> |
|
|
|
|
|
|
|
<style lang="scss"> |
|
|
|