龚焕茏
2024-05-07 82379f6ff9ddc28abb2a0e46bc97090ec049b6e9
新增人员状态、状态描述展示、设置操作
3个文件已修改
49 ■■■■ 已修改文件
src/api/user.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/student/edit.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/student/list.vue 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/user.js
@@ -18,5 +18,6 @@
  deleteTag: id => post('/api/admin/tag/delete/' + id),
  selectByUserName: query => post('/api/admin/user/selectByUserName', query),
  addMeetin:query => post('/api/admin/video/add', query),
  delMeetin:query => post('/api/admin/video/clear', query)
  delMeetin:query => post('/api/admin/video/clear', query),
  setStatus:query => post('/api/admin/user/setStatus', query)
}
src/views/user/student/edit.vue
@@ -122,11 +122,10 @@
    submitForm () {
      console.log("this.form", this.form)
      let _this = this
      this.form.deptIds = this.form.deptIds.join(',')
      this.$refs.form.validate((valid) => {
        if (valid) {
          this.formLoading = true
          console.log("this.form", this.form)
          this.form.deptIds = this.form.deptIds.join(',')
          userApi.createUser(this.form).then(data => {
            if (data.code === 1) {
              _this.$message.success(data.message)
src/views/user/student/list.vue
@@ -30,11 +30,17 @@
      <el-table-column prop="userName" label="用户名"/>
      <el-table-column prop="realName" label="真实姓名" />
      <el-table-column prop="deptNames" label="部门" />
      <el-table-column label="标签" prop="tagNames">
      <el-table-column label="标签" prop="tagNames" width="80px">
        <template slot-scope="{row}">
          <el-tag style="margin-right: 5px;" v-for="(item,index) in row.tagNames" :key="index">{{ item }}</el-tag>
          <el-tag style="margin: 5px;" v-for="(item,index) in row.tagNames" :key="index">{{ item }}</el-tag>
        </template>
      </el-table-column>
      <el-table-column label="人员状态" prop="condition">
        <template slot-scope="{row}">
          <el-tag type="warning" v-if="row.condition">{{ row.condition }}</el-tag>
        </template>
      </el-table-column>
      <el-table-column prop="conditionDetail" label="具体情况" show-overflow-tooltip="true"/>
      <el-table-column prop="sex" label="性别" width="60px;" :formatter="sexFormatter"/>
      <el-table-column prop="phone" label="手机号"/>
      <el-table-column prop="createTime" label="创建时间" width="160px"/>
@@ -56,7 +62,7 @@
          <router-link :to="{path:'/log/user/list', query:{userId:row.id}}" class="link-left">
            <el-button size="mini" >日志</el-button>
          </router-link>
          <el-button  size="mini" @click="status(row.id)" class="link-left">状态</el-button>
          <el-button  size="mini" @click="status(row)" class="link-left">状态</el-button>
          <el-button  size="mini" type="danger" @click="deleteUser(row)" class="link-left">删除</el-button>
        </template>
      </el-table-column>
@@ -64,10 +70,14 @@
    <pagination v-show="total>0" :total="total" :page.sync="queryParam.pageIndex" :limit.sync="queryParam.pageSize"
                @pagination="search"/>
    <el-dialog  :visible.sync="statusVisible"  append-to-body :close-on-click-modal="false" style="width: 100%;height: 100%"   :show-close="false" center>
      111
    <!-- 状态弹窗 -->
    <el-dialog :visible.sync="statusVisible" append-to-body :close-on-click-modal="false" :show-close="false" center width="300px">
      <el-radio-group v-model="user.condition">
        <el-radio label="病假">病假</el-radio>
        <el-radio label="出差">出差</el-radio>
        <el-radio label="其他">其他</el-radio>
      </el-radio-group>
      <el-input type="textarea" maxlength="100" show-word-limit autosize v-model="user.conditionDetail" placeholder="请输入详细情况" style="margin-top: 30px;"></el-input>
      <span slot="footer" class="dialog-footer">
        <el-button type="primary" @click="statusConfirm">确 定</el-button>
        <el-button @click="statusVisible = false">取 消</el-button>
@@ -85,7 +95,7 @@
  components: { Pagination },
  data () {
    return {
      form: {},
      user:{},
      statusVisible: false,
      upLoadUrl:'/api/admin/user/import',
      fileList:[],
@@ -104,11 +114,24 @@
    this.search()
  },
  methods: {
    status(id) {
    status(user) {
      this.statusVisible = true;
      this.user = { ...user };
    },
    statusConfirm() {
      this.form;
      if (this.user.condition === null) {
        this.$message.error("请选择状态")
        return
      }
      userApi.setStatus(this.user).then(res => {
        if (res.code === 1) {
          this.$message.success("操作成功")
          this.statusVisible = false;
          this.search()
        } else {
          this.$message.error("操作失败")
        }
      })
    },
    handlePreview(e){
      console.log(e)