<template>
  <div class="Transfer">
    <div class="contents">
      <u-form :model="forms" ref="uForm" label-width="auto" :border-bottom="false">
        <u-form-item label="事件分类" prop="groupName" required :border-bottom="false" right-icon="arrow-right">
          <u-input v-model="forms.groupName" placeholder="请选择事件分类" @click="show = true" />

          <u-select v-model="show" :list="myList" value-name="id" label-name="groupName" @confirm="selectStatus"></u-select>
        </u-form-item>

        <u-form-item :label="number == 3 ? '办结意见' : number == 2 ? '拒绝受理意见' : '办理意见'" prop="content" required :border-bottom="false" label-position="top" class="contents">
          <u-input v-model="forms.content" :placeholder="number == 2 ? '请写下拒绝受理意见…' : '请写下你的办结意见...'" type="textarea" auto-height height="100" maxlength="500" />
        </u-form-item>

        <div class="line"></div>

        <u-form-item label="图片上传(最多9张)" prop="files" :border-bottom="false" class="avatars" label-position="top">
          <AiUploader :def.sync="forms.files" multiple placeholder="上传图片" :limit="9" action="/admin/file/add2"></AiUploader>
        </u-form-item>

        <!-- <u-form-item label="转交给" prop="status" required :border-bottom="false" right-icon="arrow-right" class="first-form">
          <u-input v-model="forms.status" placeholder="请选择转交对象" @click="toSelectUser" disabled />

          <AiTreePicker :ops="treeList" v-model="forms.status" @select="handerSelect"> </AiTreePicker>
        </u-form-item> -->
      </u-form>
    </div>

    <div class="btn" v-if="this.number == 1" @click="submit3">
      <span>转交事件</span>
    </div>

    <div class="btn" v-if="this.number == 2" @click="submit2">
      <span>拒绝受理</span>
    </div>

    <div class="btn" v-if="this.number == 3" @click="submit3">
      <span>我来受理</span>
    </div>
  </div>
</template>

<script>
export default {
  name: 'Content',
  components: {},
  props: {},
  data() {
    return {
      forms: {
        groupName: '',
        groupId: '',
        content: '',
        files: [],
      },
      flag: false,
      show: false,
      number: '',

      myList: [],
      groupName: '',
      groupId: '',
      id: '',
    }
  },
  onLoad(o) {
    console.log(o)
    this.groupName = o.groupName
    this.groupId = o.groupId
    this.number = o.number
    this.id = o.id

    this.forms.groupId = this.groupId
    this.forms.groupName = this.groupName
    this.typeList()
  },
  methods: {
    //  拒绝 /app/appclapeventinfo/finishByManager
    //  同意 /app/appclapeventinfo/finishByGirdMember

    // 拒绝
    submit2() {
      if (this.flag) return

      this.$refs.uForm.validate((valid) => {
        if (valid) {
          if (this.number == 2 || this.number == 3) {
            if (!this.forms.groupName) {
              return this.$u.toast('请选择事件分类')
            }

            if (!this.forms.content) {
              return this.$u.toast(this.number == 2 ? '请输入拒绝受理意见' : '请输入你的办结意见')
            }
          }

          const imgs = []
          if (this.forms.files) {
            this.forms.files.map((e) => {
              imgs.push({ url: e.url, id: e.id })
            })
          }

          this.flag = true
          this.$http
            .post('/app/appclapeventinfo/refuse', {
              groupName: this.forms.groupName,
              groupId: this.forms.groupId,
              content: this.forms.content,
              files: imgs || [],
              id: this.id,
            })
            .then((res) => {
              if (res.code == 0) {
                this.$u.toast('受理成功')
                this.forms = {}
                this.flag = false
                uni.$emit('nextList')
                setTimeout(() => {
                  uni.navigateBack()
                }, 600)
              }
            })
        } else {
          this.$u.toast('失败')
        }
      })
    },

    // 同意
    submit3() {
      if (this.flag) return

      this.$refs.uForm.validate((valid) => {
        if (valid) {
          if (this.number == 2 || this.number == 3) {
            if (!this.forms.groupName) {
              return this.$u.toast('请选择事件分类')
            }

            if (!this.forms.content) {
              return this.$u.toast(this.number == 2 ? '请输入拒绝受理意见' : '请输入你的办结意见')
            }
          }

          const imgs = []
          if (this.forms.files) {
            this.forms.files.map((e) => {
              imgs.push({ url: e.url, id: e.id })
            })
          }

          this.flag = true
          this.$http
            .post('/app/appclapeventinfo/finishByGirdMember', {
              groupName: this.forms.groupName,
              groupId: this.forms.groupId,
              content: this.forms.content,
              files: imgs || [],
              id: this.id,
            })
            .then((res) => {
              if (res.code == 0) {
                this.$u.toast('受理成功')
                this.flag = false
                this.forms = {}
                uni.$emit('nextList')
                setTimeout(() => {
                  uni.navigateBack()
                }, 600)
              }
            })
        } else {
          this.$u.toast('失败')
        }
      })
    },

    typeList() {
      this.$http
        .post(`/app/appclapeventgroup/list`, null, {
          params: {
            size: 9999,
          },
        })
        .then((res) => {
          if (res.code == 0) {
            this.myList = res.data.records
            this.$forceUpdate()
          }
        })
    },

    selectStatus(e) {
      console.log(e)
      if (this.show) {
        this.forms.groupName = e[0].label
        this.forms.groupId = e[0].value
      } else {
      }
    },

    handerSelect() {},

    toSelectUser() {
      uni.navigateTo({ url: './SelectUser' })
    },
  },
}
</script>

<style scoped lang="scss">
.Transfer {
  height: 100%;
  .contents {
    ::v-deep .u-form {
      .u-form-item {
        padding: 0 45px !important;
        .u-form-item__body {
          .u-form-item--right__content__slot {
            padding-bottom: 0;
            .u-input {
              text-align: right !important;
            }
          }
        }
      }

      .u-form-item:first-child {
        .u-form-item__body {
          border-bottom: 1px solid #ddd;
        }
      }

      .line {
        height: 24px;
        background: #f3f6f9;
      }

      .contents {
        padding-bottom: 20px !important;
        .u-form-item__body {
          .u-form-item--right__content__slot {
            .u-input {
              text-align: left !important;
            }
          }
        }
      }

      .avatars {
        padding-bottom: 20px !important;
        .u-form-item__body {
          .default {
            width: 160px;
            height: 160px;
          }
        }
      }
    }
  }

  .btn {
    position: fixed;
    bottom: 0;
    width: 100%;
    box-sizing: border-box;
    background: #3975c6;
    padding: 34px 0;
    text-align: center;
    font-size: 32px;
    font-weight: 500;
    color: #ffffff;
  }
}
</style>
