taskPanel.js 1.68 KB
import create from 'dd-store';
import pageStore from '../../pages/meetingDetail/store';
import { debounce, throttle } from '../../utils/utils';
create.Component({
  store: pageStore,
  mixins: [],
  data: {
    currentTask: null //store
  },
  props: {
    action: ''
  },
  didMount() {
  },
  didUpdate() {
  },
  didUnmount() {
  },
  methods: {
    //编辑
    checkChange(e) {
      let { status, id } = e.target.dataset;
      if (status == '0') {
        status = '1'
      } else {
        status = '0'
      }
      this.store.data.currentTask.taskStatus = status;
      this.update();
    },
    inputChange: debounce(function (e) {
      const value = e.detail.value;
      this.store.data.currentTask.taskInfos = { taskTitle: value };
      this.update();
    }, 100),
    handleExcutorChange(e) {
      //执行人页面删除执行人
      if (e.target.dataset.acceptorId) {
        dd.navigateTo({ url: `../../pages/excutorList/excutorList` })
      }
      //参会人列表页面选择参会人
      else {
        dd.navigateTo({ url: `../../pages/attendeeList/attendeeList` })
      }
    },
    //新建才有完成按钮
    complete: throttle(
      function () {
        const { currentTask } = this.store.data;
        if (!currentTask.taskInfos.taskTitle) {
          return
        }
        this.props.onComplete()
      }
      , 1000),
    //删除任务
    handleDelete() {
      dd.confirm({
        title: '删除任务',
        content: '确认删除任务吗?',
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        success: (res) => {
          if (res.confirm) {
            this.props.onDeleteTask()
          }
        }
      })
    }
  },
});