• wangxl's avatar
    22 · fc7c733b
    wangxl authored
    fc7c733b
projectCreate.vue 2.39 KB

<template>
  <div class="app-content" style="height: 76vh;overflow: auto;">
    <a-spin :spinning="loading" style="width: 100%;height: 100%;">
      <div>
        <a-steps size="small" @change="stepsChange" :initial="0">
          <a-step :status="item" v-for="(item,index) in completeStatus" :key="index+'completeStatus'" :disabled="false" />
        </a-steps>
      </div>
      <div class="page-content">
        <project-edit v-model="value" @close="closeWindow" @load="onLoad" ref="projCreate" v-if="projType"></project-edit>
        <project-edit-key v-model="value" @close="closeWindow" @load="onLoad" ref="projCreate" v-else></project-edit-key>
      </div>
      <div class="page-footer">
        <a-button @click="save">保存</a-button>
        <a-button style="margin-left: 10px" type="primary" @click="submit">完成填写</a-button>
      </div>
    </a-spin>
  </div>
</template>

<script>
import { getType } from '@/views/utils/auth'
import projectEdit from "@/views/report/project/components/edit/projectEdit"
import projectEditKey from "@/views/report/project/components/keyProject/projectEdit"
export default {
  name: "projectCreate",
  components: {
    projectEdit, projectEditKey,
  },
  data () {
    return {
      loading: false,
      projType: getType() == "1",
      current: 0,
      completeStatus: ["process", "finish", "process", "process", "", "", "", "", "", ""],
      stepStyle: {
        marginBottom: '60px',
        boxShadow: '0px -1px 0 0 #e8e8e8 inset',
      },
    }
  },
  props: {
    value: {
      type: String,
      default: () => {
        return null
      }
    }
  },
  created () {
  },
  methods: {
    stepsChange (e) {
      var clone = [].concat(this.completeStatus)
      clone[e] = "process"
      this.completeStatus = clone
      console.log(this.completeStatus)
    },
    save () {
      this.$refs.projCreate.save()
    },
    submit () {
      this.$refs.projCreate.submit()
    },
    closeWindow (value) {
      this.$emit('close', value)
    },
    onLoad (value) {
      this.loading = value
    },
  },
}
</script>
<style scoped lang="less">
::v-deep .ant-spin-container {
  width: 100%;
  height: 100%;
}
::-webkit-scrollbar {
  width: 8px;
  height: 6px;
}
.page-content {
  width: 100%;
  height: calc(100% - 40px);
  overflow: auto;
}
.page-footer {
  width: 100%;
  height: 40px;
  line-height: 40px;
  background: rgb(248, 248, 248);
  text-align: center;
}
</style>