he wei
2024-04-15 c94f1afa786f297be86b01b49a641b2c0ad98b6e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<template>
  <div class="">
    <!-- 用户名 -->
    <!-- 是否有下载权限 -->
    <el-form ref="form" :model="form" label-width="80px">
      <el-form-item label="用户名">
        <el-input :disabled="isEdit" v-model="form.name"></el-input>
      </el-form-item>
      <el-form-item label="权限">
        <el-checkbox v-model="form.permission" label="控制权限"></el-checkbox>
      </el-form-item>
      <el-form-item>
        <el-button v-if="isEdit" type="primary" @click="update">修改</el-button>
        <el-button v-else type="primary" @click="onSubmit">新增</el-button>
        <el-button @click="close">取消</el-button>
      </el-form-item>
    </el-form>
  </div>
</template>
 
<script>
import { addUser, updateUser } from "./api";
export default {
  name: "",
  props: {
    info: {
      type: Object,
    },
  },
  data() {
    return {
      form: {
        name: "",
        uid: "",
        permission: false,
      },
    };
  },
  computed: {
    isEdit() {
      return !!this.info;
    },
  },
  components: {},
  methods: {
    close() {
      this.$emit("cancel");
    },
    update() {
      let name = this.form.name.trim();
      if (!name) {
        this.$message.error("请输入用户名");
        return false;
      }
      let loading = this.$layer.loading();
      updateUser(this.form.permission * 1, this.form.uid)
        .then((res) => {
          let { code, data } = res.data;
          if (code && data) {
            this.$emit("success");
            this.$message.success("操作成功");
          } else {
            this.$message.error("操作失败");
          }
          this.$layer.close(loading);
        })
        .catch((err) => {
          console.log(err);
          this.$layer.close(loading);
        });
    },
    onSubmit() {
      let name = this.form.name.trim();
      if (!name) {
        this.$message.error("请输入用户名");
        return false;
      }
      let loading = this.$layer.loading();
      addUser({ uname: name, udownloadRole: this.form.permission * 1 })
        .then((res) => {
          let { code, data } = res.data;
          if (code && data) {
            this.$emit("success");
            this.$message.success("操作成功");
          } else {
            this.$message.error("操作失败");
          }
          this.$layer.close(loading);
        })
        .catch((err) => {
          console.log(err);
          this.$layer.close(loading);
        });
    },
  },
 
  mounted() {
    // console.log(this.info, 'info')
    if (this.info) {
      this.form.name = this.info.uname;
      this.form.uid = this.info.uid;
      this.form.permission = this.info.udownloadRole == 1;
    }
  },
};
</script>
 
<style scoped>
</style>