licp
2024-04-07 a7054ba2bb5c59902fa3ef8b37064a94e1524cc6
完成退出登录功能
已修改2个文件
92 ■■■■■ 文件已修改
src/assets/api/controller.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/view/index.vue 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/api/controller.js
@@ -41,6 +41,7 @@
    addCustom: "/user/addCustom", //新增客户信息
    getUserNow: "/user/getUserNow", //获取当前登录的客户信息
    getUserInfo: "/user/getUserInfo", //获取当前登录的用户信息
  upUserPassword: "/user/upUserPassword", //修改用户密码
}
const dataReporting = {
src/view/index.vue
@@ -53,6 +53,12 @@
    .user span {
        font-size: 14px;
    }
  .el-dropdown{
    display: flex;
    align-items: center;
    color: #000;
    cursor: pointer;
  }
    .left {
        height: calc(100vh - 48px - 40px);
@@ -263,6 +269,22 @@
        cursor: auto !important;
        margin: 8px 12px;
    }
  .search_thing {
    display: flex;
    align-items: center;
    height: 50px;
  }
  .search_label {
    width: 90px;
    font-size: 14px;
    text-align: right;
  }
  .search_input {
    width: calc(100% - 120px);
  }
</style>
<style></style>
<template>
@@ -273,8 +295,13 @@
            </div>
            <div class="label">LIMS实验室管理系统</div>
            <div class="user">
                <el-avatar :size="26">{{ userName.substring(0, 1) }}</el-avatar>
                <span>{{ userName }}</span>
        <el-dropdown trigger="click" @command="handleCommand">
          <el-avatar :size="26">{{ userName.substring(0, 1) }}</el-avatar>
                  <span>{{ userName }}</span>
          <el-dropdown-menu slot="dropdown">
            <el-dropdown-item>修改密码</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>
                <img src="../../static/img/退出.png" @click="out" title="退出账号" />
            </div>
        </div>
@@ -336,6 +363,32 @@
                </el-card>
            </el-col>
        </div>
    <el-dialog
      title="修改密码"
      :visible.sync="editVisible"
      width="400px"
      :before-close="handleClose">
      <el-row>
        <el-col class="search_thing" :span="24">
          <div class="search_label"><span class="required-span">* </span>旧密码:</div>
          <div class="search_input">
            <el-input v-model="query.oldPassword" size="small" clearable show-password></el-input>
          </div>
        </el-col>
      </el-row>
      <el-row>
        <el-col class="search_thing" :span="24">
          <div class="search_label"><span class="required-span">* </span>新密码:</div>
          <div class="search_input">
            <el-input v-model="query.newPassWord" size="small" clearable show-password></el-input>
          </div>
        </el-col>
      </el-row>
      <span slot="footer" class="dialog-footer">
        <el-button @click="handleClose">取 消</el-button>
        <el-button type="primary" @click="handleEdit">确 定</el-button>
      </span>
    </el-dialog>
    </div>
</template>
@@ -366,7 +419,9 @@
                tabs: [],
                upIndex: 0,
                activeIndex: 0,
                power: []
                power: [],
        editVisible:false,
        query:{}
            };
        },
        created() {
@@ -524,7 +579,35 @@
                if (count > 4) return 8
                if (count > 1) return 12
                if (count == 1) return 24
            }
            },
      // 修改密码-打开弹窗
      handleCommand(e){
        this.editVisible = true;
      },
      handleEdit(){
        if (!this.query.oldPassword) {
          this.$message.error('请填写旧密码')
          return
        }
        if (!this.query.newPassWord) {
          this.$message.error('请填写旧密码')
          return
        }
        this.$axios.post(this.$api.user.upUserPassword, {...this.query}).then(res => {
            if (res.code == 201) {
              this.$message.error('修改失败')
              return
            }
            this.$message.success('修改成功')
            this.editVisible = false
            this.query = {}
            this.out();
          })
      },
      handleClose(){
        this.editVisible = false
        this.query = {}
      }
        }
    };
</script>