|
|
|
@ -1,266 +1,271 @@ |
|
|
|
<template> |
|
|
|
<div class="g-cnt"> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="6"> |
|
|
|
<div class="m-sizer"> |
|
|
|
<div class="item"> |
|
|
|
<el-cascader |
|
|
|
class="customer_cascader" |
|
|
|
ref="myCascader" |
|
|
|
size="small" |
|
|
|
v-model="fmData.orgId" |
|
|
|
:options="partyOptions" |
|
|
|
:props="partyOptionsProps" |
|
|
|
:show-all-levels="false" |
|
|
|
@change="handleChangeParty" |
|
|
|
></el-cascader> |
|
|
|
</div> |
|
|
|
<div class="item"> |
|
|
|
<el-radio v-model="fmData.isSelf" label="1" |
|
|
|
>本人创建的活动</el-radio |
|
|
|
> |
|
|
|
<el-radio v-model="fmData.isSelf" label="0" |
|
|
|
>本组织所有活动</el-radio |
|
|
|
> |
|
|
|
<div> |
|
|
|
<div v-if="showType==='list'" |
|
|
|
class="g-cnt"> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="6"> |
|
|
|
<div class="m-sizer"> |
|
|
|
<div class="item"> |
|
|
|
<el-cascader class="customer_cascader" |
|
|
|
ref="myCascader" |
|
|
|
size="small" |
|
|
|
v-model="fmData.orgId" |
|
|
|
:options="partyOptions" |
|
|
|
:props="partyOptionsProps" |
|
|
|
:show-all-levels="false" |
|
|
|
@change="handleChangeParty"></el-cascader> |
|
|
|
</div> |
|
|
|
<div class="item"> |
|
|
|
<el-radio v-model="fmData.isSelf" |
|
|
|
label="1">本人创建的活动</el-radio> |
|
|
|
<el-radio v-model="fmData.isSelf" |
|
|
|
label="0">本组织所有活动</el-radio> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="m-date"> |
|
|
|
<div class="date-top"> |
|
|
|
{{ currentDate.year }}年{{ currentDate.month + 1 }}月 |
|
|
|
<div class="m-date"> |
|
|
|
<div class="date-top"> |
|
|
|
{{ currentDate.year }}年{{ currentDate.month + 1 }}月 |
|
|
|
</div> |
|
|
|
<div class="date-big">{{ currentDate.date }}</div> |
|
|
|
<div class="date-week">{{ currentDate.dayFormat }}</div> |
|
|
|
</div> |
|
|
|
<div class="date-big">{{ currentDate.date }}</div> |
|
|
|
<div class="date-week">{{ currentDate.dayFormat }}</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div |
|
|
|
class="m-list" |
|
|
|
v-if=" |
|
|
|
<div class="m-list" |
|
|
|
v-if=" |
|
|
|
currentDateData.activityList.length > 0 || |
|
|
|
currentDateData.scheduleList.length > 0 |
|
|
|
" |
|
|
|
> |
|
|
|
<div class="list-title">今日活动/日程</div> |
|
|
|
<div class="list"> |
|
|
|
<div |
|
|
|
class="item" |
|
|
|
:key="item.activityId" |
|
|
|
v-for="item in currentDateData.activityList" |
|
|
|
> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.theme }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动类型:</span> |
|
|
|
<span>{{ item.type }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>开始时间:</span> |
|
|
|
<span>{{ item.holdTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动地点:</span> |
|
|
|
<span>{{ item.address }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>参加组织:</span> |
|
|
|
<span>{{ item.joinOrgs.join("、") }}</span> |
|
|
|
"> |
|
|
|
<div class="list-title">今日活动/日程</div> |
|
|
|
<div class="list"> |
|
|
|
<div class="item" |
|
|
|
:key="item.activityId" |
|
|
|
v-for="item in currentDateData.activityList"> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.theme }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动类型:</span> |
|
|
|
<span>{{ item.type }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>开始时间:</span> |
|
|
|
<span>{{ item.holdTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动地点:</span> |
|
|
|
<span>{{ item.address }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>参加组织:</span> |
|
|
|
<span>{{ item.joinOrgs.join("、") }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-ope"> |
|
|
|
<el-button type="primary" |
|
|
|
size="mini" |
|
|
|
@click="handleClickHuodong('publish', item)">发布</el-button> |
|
|
|
<el-button type="success" |
|
|
|
size="mini" |
|
|
|
@click="handleClickHuodong('edit', item)">编辑</el-button> |
|
|
|
<el-button size="mini" |
|
|
|
@click="handleClickHuodong('del', item)">删除</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="item-ope"> |
|
|
|
<el-button |
|
|
|
type="primary" |
|
|
|
size="mini" |
|
|
|
@click="handleClickHuodong('publish', item)" |
|
|
|
>发布</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
type="success" |
|
|
|
size="mini" |
|
|
|
@click="handleClickHuodong('edit', item)" |
|
|
|
>编辑</el-button |
|
|
|
> |
|
|
|
<el-button size="mini" @click="handleClickHuodong('del', item)" |
|
|
|
>删除</el-button |
|
|
|
> |
|
|
|
|
|
|
|
<div class="item" |
|
|
|
:key="item.scheduleId" |
|
|
|
v-for="item in currentDateData.scheduleList"> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.title }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>提醒时间:</span> |
|
|
|
<span>{{ item.remindTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>备注说明:</span> |
|
|
|
<span>{{ item.remark }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-ope"> |
|
|
|
<el-button type="success" |
|
|
|
size="mini" |
|
|
|
@click="handleClickRicheng('edit', item)">编辑</el-button> |
|
|
|
<el-button size="mini" |
|
|
|
@click="handleClickRicheng('del', item)">删除</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div |
|
|
|
class="item" |
|
|
|
:key="item.scheduleId" |
|
|
|
v-for="item in currentDateData.scheduleList" |
|
|
|
> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.title }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>提醒时间:</span> |
|
|
|
<span>{{ item.remindTime }}</span> |
|
|
|
<div class="m-ope"> |
|
|
|
<el-button type="warning" |
|
|
|
style="width: 48%" |
|
|
|
@click="addHudong">添加活动计划</el-button> |
|
|
|
<el-button style="width: 48%" |
|
|
|
@click="addRicheng">添加日程</el-button> |
|
|
|
</div> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="18"> |
|
|
|
<div class="m-cal"> |
|
|
|
<div class="hd"> |
|
|
|
<div class="hd-year"> |
|
|
|
<el-date-picker v-model="currentYearStr" |
|
|
|
value-format="yyyy" |
|
|
|
type="year" |
|
|
|
placeholder="选择年" |
|
|
|
size="small" |
|
|
|
style="width: 150px"> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>备注说明:</span> |
|
|
|
<span>{{ item.remark }}</span> |
|
|
|
<div class="hd-month"> |
|
|
|
<div class="month-item" |
|
|
|
:class="{ 'z-on': m - 1 == currentMonth }" |
|
|
|
:key="'month' + m" |
|
|
|
@click="currentMonth = m - 1" |
|
|
|
v-for="m in 12"> |
|
|
|
<el-badge :value="monthData[m - 1]" |
|
|
|
:hidden="monthData[m - 1] == 0" |
|
|
|
class="item"> |
|
|
|
<div class="month-text">{{ m }}月</div> |
|
|
|
</el-badge> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="item-ope"> |
|
|
|
<el-button |
|
|
|
type="success" |
|
|
|
size="mini" |
|
|
|
@click="handleClickRicheng('edit', item)" |
|
|
|
>编辑</el-button |
|
|
|
> |
|
|
|
<el-button size="mini" @click="handleClickRicheng('del', item)" |
|
|
|
>删除</el-button |
|
|
|
> |
|
|
|
<div class="hd-btn"> |
|
|
|
<el-button type="primary" |
|
|
|
size="small" |
|
|
|
@click="handleAddYearPlan">批量生成年度报表</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="m-ope"> |
|
|
|
<el-button type="warning" style="width: 48%" @click="addHudong" |
|
|
|
>添加活动计划</el-button |
|
|
|
> |
|
|
|
<el-button style="width: 48%" @click="addRicheng">添加日程</el-button> |
|
|
|
</div> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="18"> |
|
|
|
<div class="m-cal"> |
|
|
|
<div class="hd"> |
|
|
|
<div class="hd-year"> |
|
|
|
<el-date-picker |
|
|
|
v-model="currentYearStr" |
|
|
|
value-format="yyyy" |
|
|
|
type="year" |
|
|
|
placeholder="选择年" |
|
|
|
size="small" |
|
|
|
style="width: 150px" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
<div class="hd-month"> |
|
|
|
<div |
|
|
|
class="month-item" |
|
|
|
:class="{ 'z-on': m - 1 == currentMonth }" |
|
|
|
:key="'month' + m" |
|
|
|
@click="currentMonth = m - 1" |
|
|
|
v-for="m in 12" |
|
|
|
> |
|
|
|
<el-badge |
|
|
|
:value="monthData[m - 1]" |
|
|
|
:hidden="monthData[m - 1] == 0" |
|
|
|
class="item" |
|
|
|
> |
|
|
|
<div class="month-text">{{ m }}月</div> |
|
|
|
</el-badge> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="hd-btn"> |
|
|
|
<el-button type="primary" size="small" |
|
|
|
>批量生成年度报表</el-button |
|
|
|
> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<calendar |
|
|
|
:currentYear="currentYear" |
|
|
|
:currentMonth="currentMonth" |
|
|
|
@rangeChange="handleRangeChange" |
|
|
|
@clickDate="handleChangeDate" |
|
|
|
> |
|
|
|
<template v-slot:date-item="{ item, index }"> |
|
|
|
<div |
|
|
|
class="tip" |
|
|
|
v-if=" |
|
|
|
<calendar :currentYear="currentYear" |
|
|
|
:currentMonth="currentMonth" |
|
|
|
@rangeChange="handleRangeChange" |
|
|
|
@clickDate="handleChangeDate"> |
|
|
|
<template v-slot:date-item="{ item, index }"> |
|
|
|
<div class="tip" |
|
|
|
v-if=" |
|
|
|
rangeData[item.dateId] && |
|
|
|
rangeData[item.dateId].activityList.length > 0 |
|
|
|
" |
|
|
|
> |
|
|
|
<div |
|
|
|
class="tip-num" |
|
|
|
v-if="rangeData[item.dateId].activityList.length > 1" |
|
|
|
> |
|
|
|
{{ rangeData[item.dateId].activityList.length }} |
|
|
|
</div> |
|
|
|
"> |
|
|
|
<div class="tip-num" |
|
|
|
v-if="rangeData[item.dateId].activityList.length > 1"> |
|
|
|
{{ rangeData[item.dateId].activityList.length }} |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="tip-text"> |
|
|
|
<span class="z-on"> |
|
|
|
{{ rangeData[item.dateId].activityList[0].type }}</span |
|
|
|
> |
|
|
|
{{ |
|
|
|
<div class="tip-text"> |
|
|
|
<span class="z-on"> |
|
|
|
{{ rangeData[item.dateId].activityList[0].type }}</span> |
|
|
|
{{ |
|
|
|
rangeData[item.dateId].activityList[0].isPublicValue |
|
|
|
? "(已发布)" |
|
|
|
: "" |
|
|
|
}} |
|
|
|
</div> |
|
|
|
<div class="tip-cnt"> |
|
|
|
{{ rangeData[item.dateId].activityList[0].topic }} |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="tip-cnt"> |
|
|
|
{{ rangeData[item.dateId].activityList[0].topic }} |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="all-list" :class="computeAllListClass(index)"> |
|
|
|
<div |
|
|
|
class="item" |
|
|
|
:key="item.activityId" |
|
|
|
v-for="item in rangeData[item.dateId].activityList" |
|
|
|
> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.theme }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动类型:</span> |
|
|
|
<span>{{ item.type }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>开始时间:</span> |
|
|
|
<span>{{ item.holdTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动地点:</span> |
|
|
|
<span>{{ item.address }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>参加组织:</span> |
|
|
|
<span>{{ item.joinOrgs.join("、") }}</span> |
|
|
|
<div class="all-list" |
|
|
|
:class="computeAllListClass(index)"> |
|
|
|
<div class="item" |
|
|
|
:key="item.activityId" |
|
|
|
v-for="item in rangeData[item.dateId].activityList"> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.theme }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动类型:</span> |
|
|
|
<span>{{ item.type }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>开始时间:</span> |
|
|
|
<span>{{ item.holdTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>活动地点:</span> |
|
|
|
<span>{{ item.address }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>参加组织:</span> |
|
|
|
<span>{{ item.joinOrgs.join("、") }}</span> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div |
|
|
|
class="corn" |
|
|
|
v-if=" |
|
|
|
<div class="corn" |
|
|
|
v-if=" |
|
|
|
rangeData[item.dateId] && |
|
|
|
rangeData[item.dateId].scheduleList.length > 0 |
|
|
|
" |
|
|
|
> |
|
|
|
<div class="corn-num"> |
|
|
|
{{ rangeData[item.dateId].scheduleList.length }} |
|
|
|
</div> |
|
|
|
<div class="corn-text">日程</div> |
|
|
|
|
|
|
|
<div class="all-list" :class="computeAllListClass(index)"> |
|
|
|
<div |
|
|
|
class="item" |
|
|
|
:key="item.scheduleId" |
|
|
|
v-for="item in rangeData[item.dateId].scheduleList" |
|
|
|
> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.title }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>提醒时间:</span> |
|
|
|
<span>{{ item.remindTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>备注说明:</span> |
|
|
|
<span>{{ item.remark }}</span> |
|
|
|
"> |
|
|
|
<div class="corn-num"> |
|
|
|
{{ rangeData[item.dateId].scheduleList.length }} |
|
|
|
</div> |
|
|
|
<div class="corn-text">日程</div> |
|
|
|
|
|
|
|
<div class="all-list" |
|
|
|
:class="computeAllListClass(index)"> |
|
|
|
<div class="item" |
|
|
|
:key="item.scheduleId" |
|
|
|
v-for="item in rangeData[item.dateId].scheduleList"> |
|
|
|
<div class="item-title"> |
|
|
|
{{ item.title }} |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>提醒时间:</span> |
|
|
|
<span>{{ item.remindTime }}</span> |
|
|
|
</div> |
|
|
|
<div class="item-prop"> |
|
|
|
<span>备注说明:</span> |
|
|
|
<span>{{ item.remark }}</span> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</calendar> |
|
|
|
</div> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</template> |
|
|
|
</calendar> |
|
|
|
</div> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<div v-if="showType==='yearplan'"> |
|
|
|
<yearplan-list @handleOk="handleAddPlanOk" |
|
|
|
@handleClose="handleAddPlanClose"></yearplan-list> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-dialog v-if="showAdd" |
|
|
|
:visible.sync="showAdd" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="addDiaTitle" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="showAdd = false"> |
|
|
|
<add-activity ref="ref_add_form" |
|
|
|
:formType="formType" |
|
|
|
:icPartyActId="icPartyActId" |
|
|
|
@handleOk="handleOk" |
|
|
|
@handleClose="handleClose"></add-activity> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-dialog v-if="showSchedule" |
|
|
|
:visible.sync="showSchedule" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="scheduleDiaTitle" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="showSchedule = false"> |
|
|
|
<schedule-form ref="ref_schedule_form" |
|
|
|
:formType="formType" |
|
|
|
:scheduleId="scheduleId" |
|
|
|
@handleOk="handleOk" |
|
|
|
@handleClose="handleClose"> |
|
|
|
</schedule-form> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
@ -268,8 +273,11 @@ |
|
|
|
import { requestPost, requestGet } from "@/js/dai/request"; |
|
|
|
import nextTick from "dai-js/tools/nextTick"; |
|
|
|
import calendar from "./cpts/calendar"; |
|
|
|
import yearplanList from "../orgActivity/activivityList/yearplanList"; |
|
|
|
import addActivity from "../orgActivity/activivityList/addActivity"; |
|
|
|
import scheduleForm from "../orgActivity/activivityList/scheduleForm"; |
|
|
|
|
|
|
|
function doAfter(fn) { |
|
|
|
function doAfter (fn) { |
|
|
|
return new Promise(async (resolve) => { |
|
|
|
while (!fn()) { |
|
|
|
await nextTick(100); |
|
|
|
@ -282,8 +290,11 @@ export default { |
|
|
|
name: "party-calendar", |
|
|
|
components: { |
|
|
|
calendar, |
|
|
|
yearplanList, |
|
|
|
addActivity, |
|
|
|
scheduleForm, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
data () { |
|
|
|
let todayObj = new Date(); |
|
|
|
|
|
|
|
return { |
|
|
|
@ -321,13 +332,23 @@ export default { |
|
|
|
isSelf: "1", |
|
|
|
yearId: "", |
|
|
|
}, |
|
|
|
|
|
|
|
showAdd: false, |
|
|
|
formType: 'add', |
|
|
|
addDiaTitle: '添加活动计划', |
|
|
|
showSchedule: false, |
|
|
|
scheduleDiaTitle: '添加日程提醒', |
|
|
|
showType: 'list', |
|
|
|
|
|
|
|
icPartyActId: '', |
|
|
|
scheduleId: '', |
|
|
|
}; |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
currentYear() { |
|
|
|
currentYear () { |
|
|
|
return parseInt(this.currentYearStr); |
|
|
|
}, |
|
|
|
apiParams() { |
|
|
|
apiParams () { |
|
|
|
const { currentYear, fmData } = this; |
|
|
|
return { |
|
|
|
yearId: currentYear, |
|
|
|
@ -352,39 +373,151 @@ export default { |
|
|
|
this.getMonthData(); |
|
|
|
}, |
|
|
|
}, |
|
|
|
async mounted() { |
|
|
|
async mounted () { |
|
|
|
await this.getPartyOptions(); |
|
|
|
this.getMonthData(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// 添加活动 |
|
|
|
addHudong() {}, |
|
|
|
addHudong () { |
|
|
|
this.icPartyActId = '' |
|
|
|
this.addDiaTitle = '新增活动计划' |
|
|
|
this.formType = 'add' |
|
|
|
this.showAdd = true; |
|
|
|
}, |
|
|
|
|
|
|
|
// 添加日程 |
|
|
|
addRicheng() {}, |
|
|
|
addRicheng () { |
|
|
|
this.formType = 'schedule' |
|
|
|
this.showSchedule = true; |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
// 点击活动操作 |
|
|
|
handleClickHuodong(type, item) { |
|
|
|
handleClickHuodong (type, item) { |
|
|
|
console.log(type, item); |
|
|
|
this.icPartyActId = item.activityId |
|
|
|
|
|
|
|
if (type == "publish") { |
|
|
|
// 发布 |
|
|
|
this.$confirm("确认发布活动?", "提示", { |
|
|
|
confirmButtonText: "确定", |
|
|
|
cancelButtonText: "取消", |
|
|
|
type: "warning" |
|
|
|
}) |
|
|
|
.then(() => { |
|
|
|
this.publishActivity() |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
if (err == "cancel") { |
|
|
|
// this.$message({ |
|
|
|
// type: "info", |
|
|
|
// message: "已取消发布" |
|
|
|
// }); |
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
} else if (type == "edit") { |
|
|
|
// 编辑 |
|
|
|
this.addDiaTitle = '修改活动计划' |
|
|
|
this.formType = 'edit' |
|
|
|
this.showAdd = true |
|
|
|
} else if (type == "del") { |
|
|
|
// 删除 |
|
|
|
this.$confirm("活动删除后不可恢复,您确定要删除吗?", "提示", { |
|
|
|
confirmButtonText: "确定", |
|
|
|
cancelButtonText: "取消", |
|
|
|
type: "warning" |
|
|
|
}) |
|
|
|
.then(() => { |
|
|
|
this.cancelActivity() |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
if (err == "cancel") { } |
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async publishActivity () { |
|
|
|
const url = `/resi/partymember/icPartyAct/publish/${this.icPartyActId}`; |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, {}); |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.$message.success("发布成功!"); |
|
|
|
this.refreshData(); |
|
|
|
} else { |
|
|
|
this.$message.error("操作失败!"); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async cancelActivity () { |
|
|
|
const url = "/resi/partymember/icPartyAct/del"; |
|
|
|
|
|
|
|
let params = [] |
|
|
|
params.push(this.icPartyActId) |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, params); |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.$message.success("删除成功!"); |
|
|
|
this.refreshData(); |
|
|
|
} else { |
|
|
|
this.$message.error("操作失败!"); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
// 点击日程操作 |
|
|
|
handleClickRicheng(type, item) { |
|
|
|
handleClickRicheng (type, item) { |
|
|
|
console.log(type, item); |
|
|
|
this.scheduleId = item.scheduleId |
|
|
|
if (type == "edit") { |
|
|
|
// 编辑 |
|
|
|
this.scheduleDiaTitle = '修改日程提醒' |
|
|
|
this.formType = 'schedule' |
|
|
|
this.showSchedule = true; |
|
|
|
} else if (type == "del") { |
|
|
|
// 删除 |
|
|
|
this.$confirm("日程提醒删除后不可恢复,您确定要删除吗?", "提示", { |
|
|
|
confirmButtonText: "确定", |
|
|
|
cancelButtonText: "取消", |
|
|
|
type: "warning" |
|
|
|
}) |
|
|
|
.then(() => { |
|
|
|
this.cancelSchedule() |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
if (err == "cancel") { } |
|
|
|
}); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async cancelSchedule () { |
|
|
|
|
|
|
|
const url = "/resi/partymember/icSchedule/del"; |
|
|
|
|
|
|
|
let params = [] |
|
|
|
params.push(this.scheduleId) |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, params); |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.$message.success("删除成功!"); |
|
|
|
this.refreshData(); |
|
|
|
} else { |
|
|
|
this.$message.error("操作失败!"); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleChangeParty() {}, |
|
|
|
//刷新日历 |
|
|
|
refreshData () { |
|
|
|
|
|
|
|
handleChangeDate(item) { |
|
|
|
}, |
|
|
|
|
|
|
|
handleChangeParty () { }, |
|
|
|
|
|
|
|
handleChangeDate (item) { |
|
|
|
console.log("handleChangeDate"); |
|
|
|
this.currentYearStr = item.year + ""; |
|
|
|
this.currentMonth = item.month; |
|
|
|
@ -393,7 +526,7 @@ export default { |
|
|
|
this.getCurrentDateData(); |
|
|
|
}, |
|
|
|
|
|
|
|
computeAllListClass(index) { |
|
|
|
computeAllListClass (index) { |
|
|
|
let x = index % 7; |
|
|
|
let y = Math.floor(index / 7); |
|
|
|
if (x < 3) { |
|
|
|
@ -411,12 +544,12 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleRangeChange(arr) { |
|
|
|
handleRangeChange (arr) { |
|
|
|
this.rangeDateList = arr; |
|
|
|
this.getRangeData(); |
|
|
|
}, |
|
|
|
|
|
|
|
async getRangeData() { |
|
|
|
async getRangeData () { |
|
|
|
const arr = this.rangeDateList; |
|
|
|
const url = "/resi/partymember/icPartyAct/homeSearch"; |
|
|
|
|
|
|
|
@ -454,7 +587,7 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getMonthData() { |
|
|
|
async getMonthData () { |
|
|
|
const url = "/resi/partymember/icPartyAct/homeMonthTotal"; |
|
|
|
|
|
|
|
if (!this.apiParams.orgId) return; |
|
|
|
@ -474,7 +607,7 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getCurrentDateData() { |
|
|
|
async getCurrentDateData () { |
|
|
|
const url = "/resi/partymember/icPartyAct/actAndScheduleList"; |
|
|
|
|
|
|
|
if (!this.apiParams.orgId) return; |
|
|
|
@ -491,7 +624,7 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getPartyOptions() { |
|
|
|
async getPartyOptions () { |
|
|
|
const url = "/resi/partymember/icPartyOrg/getSearchTreelist"; |
|
|
|
let params = { |
|
|
|
customerId: localStorage.getItem("customerId"), |
|
|
|
@ -507,6 +640,29 @@ export default { |
|
|
|
} else { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleAddYearPlan () { |
|
|
|
this.showType = 'yearplan' |
|
|
|
}, |
|
|
|
|
|
|
|
handleAddPlanOk () { |
|
|
|
this.showType = 'list' |
|
|
|
this.refreshData() |
|
|
|
}, |
|
|
|
handleAddPlanClose () { |
|
|
|
this.showType = 'list' |
|
|
|
}, |
|
|
|
|
|
|
|
handleClose () { |
|
|
|
this.formType = '' |
|
|
|
this.showAdd = false |
|
|
|
this.showSchedule = false |
|
|
|
}, |
|
|
|
|
|
|
|
handleOk () { |
|
|
|
this.handleClose() |
|
|
|
this.refreshData() |
|
|
|
}, |
|
|
|
}, |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|