<template>
  <div class="search">

    <el-form ref="ref_form1"
             :inline="false"
             :model="formData"
             :rules="dataRule">
      <el-form-item label="事件分类"
                    label-width="150px"
                    :class="{'form-item':source==='visiual'}"
                    prop="categoryList">
        <div :class="{'visiual-form':source==='visiual'}">
          <el-cascader class="cell-width-2"
                       ref="myCascader"
                       v-model="selCategoryArray"
                       :key="iscascaderShow"
                       :options="casOptions"
                       :props="optionProps"
                       :show-all-levels="false"
                       @change="handleChangeCate"></el-cascader>
        </div>
      </el-form-item>
      <el-form-item label="议题标题"
                    prop="issueTitle"
                    label-width="150px"
                    :class="{'form-item':source==='visiual'}"
                    style="display: block">
        <div :class="{'visiual-form':source==='visiual'}">
          <el-input v-model="formData.issueTitle"
                    class="cell-width-2"
                    clearable
                    placeholder="请输入议题标题">
          </el-input>
        </div>

      </el-form-item>
      <el-form-item label="处理意见"
                    prop="suggestion"
                    label-width="150px"
                    :class="{'form-item':source==='visiual'}"
                    style="display: block">
        <div :class="{'visiual-form':source==='visiual'}">
          <el-input class="cell-width-area"
                    type="textarea"
                    maxlength="500"
                    show-word-limit
                    :rows="5"
                    placeholder="请输入处理意见，不超过500字"
                    v-model="formData.suggestion"></el-input>
        </div>

      </el-form-item>

    </el-form>

  </div>
</template>

<script>
import { Loading } from "element-ui"; // 引入Loading服务
import { requestPost } from "@/js/dai/request";
import formVltHelper from "dai-js/tools/formVltHelper";

import { isCard } from "@/utils/validate";

let loading; // 加载动画


export default {
  data () {
    return {
      btnDisable: false,
      formData: {
        operationType: '3',//处理方式[0:已回复 1:已转项目  2:已转需求 3:转议题]	
        suggestion: '',
        issueTitle: '',

      },


      okflag: false,

      eventDetailCopy: {},

      casOptions: [],
      iscascaderShow: 0,
      selCategoryArray: [],
      selCateObj: {},
      optionProps: {
        multiple: false,
        value: 'id',
        label: 'name',
        children: 'subCategory',
      },

    };
  },
  components: {},
  computed: {
    dataRule () {

      return {
        issueTitle: [
          { required: true, message: "议题标题不能为空", trigger: "blur" },
        ],
        suggestion: [
          { required: true, message: "处理建议不能为空", trigger: "blur" },
        ],

      };
    },


  },
  props: {
    eventId: {
      type: String,
      default: "",
    },
    eventDetailData: {
      type: Object,
      default () {
        return {}
      }
    },
    source: {//展示来源：manage  管理平台    visiual  可视化平台
      type: String,
      default: 'manage'
    }
  },
  watch: {},

  created () {

    console.log(this.source)

  },

  async mounted () {

    this.getCategoryList()
    if (this.eventId) {
      this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData));

      if (this.eventDetailCopy.parentCategoryId && this.eventDetailCopy.categoryId) {
        this.selCategoryArray = []
        this.selCategoryArray.push(this.eventDetailCopy.parentCategoryId)
        this.selCategoryArray.push(this.eventDetailCopy.categoryId)

        this.selCateObj = {
          name: this.eventDetailCopy.categoryName,
          id: this.eventDetailCopy.categoryId
        }
      }
    }
  },

  methods: {
    async getCategoryList () {
      const url = "/gov/issue/issueprojectcategorydict/list"

      let params = {}

      const { data, code, msg } = await requestPost(url, params)

      if (code === 0) {

        let treeDataNew = this.filterTree(data)

        //组织级联数据
        ++this.iscascaderShow
        this.casOptions = []

        this.casOptions = treeDataNew

      } else {
        this.$message.error(msg)
      }

    },

    handleChangeCate () {
      console.log(this.$refs["myCascader"].getCheckedNodes()[0].data)
      this.selCateObj = this.$refs["myCascader"].getCheckedNodes()[0].data

    },

    //重构树，去除网格
    filterTree (arr) {
      let childs = arr
      for (let i = childs.length; i--; i > 0) {
        if (childs[i].subCategory) {
          if (childs[i].subCategory.length) {
            this.filterTree(childs[i].subCategory)
          } else {
            delete childs[i].subCategory
          }
        }
      }
      return arr
    },
    async getIssueInfo () {
      this.okflag = false
      this.$refs["ref_form1"].validate((valid, messageObj) => {
        if (!valid) {
          app.util.validateRule(messageObj);

        } else {
          this.formData.icEventId = this.eventId
          this.formData.categoryId = this.selCateObj.id
          this.formData.categoryList = []
          this.formData.categoryList.push(this.selCateObj)

          this.okflag = true
        }
      });
    },

    resetData () {

    },
    // 开启加载动画
    startLoading () {
      loading = Loading.service({
        lock: true, // 是否锁定
        text: "正在加载……", // 加载中需要显示的文字
        background: "rgba(0,0,0,.7)", // 背景颜色
      });
    },
    // 结束加载动画
    endLoading () {
      // clearTimeout(timer);
      if (loading) {
        loading.close();
      }
    },
  },
};
</script>


<style lang='scss' scoped>
@import "@/assets/scss/modules/visual/a_customize.scss";
@import "@/assets/scss/modules/shequzhili/event-info.scss";
</style>



<style>
.el-dialog__body {
  padding: 0 10px 20px !important;
}
</style>
