| | |
| | | /> |
| | | <span class="user-name">{{ item.username }}</span> |
| | | </div> |
| | | <el-tag size="mini" v-if="item.id == curUserID">当前登录</el-tag> |
| | | <div class="login-tag" v-if="item.id == curUserID"> |
| | | <span>当前登录</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="add-account" v-if="curUserRole != '普通用户'"> |
| | | <!-- <span class="icon iconfont" @click="openAdd"></span> --> |
| | | <i |
| | | class="el-icon-circle-plus" |
| | | style="font-size: 38px" |
| | | style="font-size: 40px" |
| | | @click="openAdd" |
| | | ></i> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="container-right" v-if="activeIndex == 0 || activeIndex == 1"> |
| | | <div |
| | | class="container-right" |
| | | v-if="activeIndex == 0 || activeIndex == 1" |
| | | :class="activeIndex == 0 ? 'container-right-for-account' : ''" |
| | | > |
| | | <div class="account-right" v-if="activeIndex == 0"> |
| | | <div |
| | | class="account-content" |
| | |
| | | <div |
| | | class="touxiang-big" |
| | | @mouseenter="showChangePic = true" |
| | | @mouseleave="onLeave" |
| | | @mouseleave="showChangePic = false" |
| | | > |
| | | <img |
| | | v-if="activeAccountItem.headpic" |
| | |
| | | alt="" |
| | | /> |
| | | <div class="touxiang-mask" v-show="showChangePic"> |
| | | <span |
| | | class="enable" |
| | | v-if="!showJPGArr" |
| | | @click="showJPGArr = true" |
| | | >修改头像</span |
| | | <span class="enable" v-if="!showJPGArr" @click="editHeadPic" |
| | | >编辑头像</span |
| | | > |
| | | <span |
| | | <!-- <span |
| | | class="enable" |
| | | v-if="addForm.headpic" |
| | | @click="confirmChangePic" |
| | |
| | | > |
| | | <span class="enable" v-if="showJPGArr" @click="cacelChoosePic"> |
| | | 取消</span |
| | | > |
| | | > --> |
| | | </div> |
| | | </div> |
| | | <div class="user-desc"> |
| | | <div class="username"> |
| | | <div class="user-name"> |
| | | <span |
| | | class="icon iconfont" |
| | | style="font-size: 18px; margin-right: 3px" |
| | | ></span |
| | | style="font-size: 19px; margin-right: 4px" |
| | | ></span |
| | | > |
| | | <span>{{ activeAccountItem.username }}</span> |
| | | </div> |
| | | <div class="user-role"> |
| | | {{ activeUserRole }} |
| | | </div> |
| | | <div class="nick-name"> |
| | | <span class="nick-text">昵称:</span> |
| | |
| | | ></el-input> |
| | | <span |
| | | v-show="!showInputNickName" |
| | | class="icon iconfont" |
| | | class="icon iconfont edit-icon" |
| | | @click="editNickName" |
| | | ></span |
| | | ></span |
| | | > |
| | | <span |
| | | v-show="showInputNickName" |
| | | class="icon iconfont" |
| | | class="icon iconfont clear-icon" |
| | | @click="showInputNickName = false" |
| | | ></span |
| | | ></span |
| | | > |
| | | <span |
| | | v-show="showInputNickName" |
| | | class="icon iconfont" |
| | | style="font-size: 21px; font-weight: 600; color: green" |
| | | class="icon iconfont confirm-icon" |
| | | @click="hideInputNick" |
| | | ></span |
| | | ></span |
| | | > |
| | | </div> |
| | | <div class="user-role"> |
| | | <el-tag type="info" size="mini">{{ activeUserRole }}</el-tag> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="btns" v-if="showJPGArr"> |
| | | <div class="cancel" @click="cacelChoosePic">取消</div> |
| | | <div class="ok" @click="confirmChangePic">保存</div> |
| | | </div> |
| | | <div class="list-btn" v-if="showJPGArr == false"> |
| | | <div class="item-btn" @click="showChangePassword">修改密码</div> |
| | | <div class="item-btn alt-pw-btn" @click="showChangePassword"> |
| | | 修改密码 |
| | | </div> |
| | | <div |
| | | class="item-btn" |
| | | class="item-btn del-usr-btn" |
| | | v-if="isShowDeleteAccount" |
| | | @click="deleteAccount" |
| | | > |
| | |
| | | </div> |
| | | <div |
| | | v-if="isShowPermitBtn" |
| | | class="item-btn" |
| | | class="item-btn auth-set-btn" |
| | | @click="openPermission" |
| | | > |
| | | 权限设置 |
| | |
| | | </div> |
| | | |
| | | <div class="change-pw" v-if="inAccountDetail && isChangePw"> |
| | | <div class="title">修改密码</div> |
| | | <div class="title"> |
| | | <span class="icon iconfont"></span> |
| | | <span>修改密码</span> |
| | | </div> |
| | | <el-form |
| | | :model="passwordForm" |
| | | :rules="pwRules" |
| | |
| | | prop="curPassword" |
| | | v-if="activeAccountItem.id == curUserID" |
| | | > |
| | | <div class="p-title">当前密码:</div> |
| | | <div class="p-title">当前密码</div> |
| | | |
| | | <el-input |
| | | placeholder="必填" |
| | |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="newPassword"> |
| | | <div class="p-title">新密码:</div> |
| | | <div class="p-title">新密码</div> |
| | | <el-input |
| | | placeholder="必填" |
| | | v-model="passwordForm.newPassword" |
| | |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="confirmPassword"> |
| | | <div class="p-title">确认密码:</div> |
| | | <div class="p-title">确认密码</div> |
| | | <el-input |
| | | placeholder="必填" |
| | | v-model="passwordForm.confirmPassword" |
| | |
| | | <div class="permission" v-if="inAccountDetail && isSetPermission"> |
| | | <div class="title">权限管理</div> |
| | | |
| | | <div class="line-wrap" v-for="item in sysMenus" :key="item.id"> |
| | | <!-- <div class="line-wrap" v-for="item in sysMenus" :key="item.id"> |
| | | <div class="line"> |
| | | <div class="name">{{ item.name }}</div> |
| | | <el-switch |
| | |
| | | </el-switch> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | <!-- --> |
| | | <div class="tree-window"> |
| | | <el-tree |
| | | ref="treeMenus" |
| | | :data="sysMenus" |
| | | :props="props" |
| | | node-key="id" |
| | | :default-checked-keys="checkedArr" |
| | | show-checkbox |
| | | check-on-click-node |
| | | default-expand-all |
| | | ></el-tree> |
| | | </div> |
| | | <div class="btns"> |
| | | <div class="cancel" @click="cancelSet">取消</div> |
| | |
| | | class="add-form" |
| | | > |
| | | <el-form-item prop="userName"> |
| | | <div class="p-title">用户名:</div> |
| | | <div class="p-title">用户名</div> |
| | | <el-input |
| | | placeholder="必填,长度为 2 ~ 10 位字符,不能以数字开头,不允许包含汉字" |
| | | placeholder="2~10 位字符,不能以数字开头,不可包含汉字" |
| | | v-model="addForm.userName" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="roleId" v-if="curUserRole != '普通用户'"> |
| | | <div class="p-title">角色:</div> |
| | | <el-select v-model="addForm.roleId" placeholder="请选择角色"> |
| | | <div class="p-title">角色</div> |
| | | <el-select |
| | | v-model="addForm.roleId" |
| | | placeholder="请选择角色" |
| | | :popper-append-to-body="false" |
| | | > |
| | | <el-option |
| | | v-for="(item, i) in roleList" |
| | | :key="i" |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item prop="nickName"> |
| | | <div class="p-title">昵称:</div> |
| | | <div class="p-title">昵称</div> |
| | | <el-input |
| | | placeholder="选填,长度为 2 ~ 10 位字符" |
| | | placeholder="选填,2~10 位字符" |
| | | v-model="addForm.nickName" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="password"> |
| | | <div class="p-title">密码:</div> |
| | | <div class="p-title">密码</div> |
| | | <el-input |
| | | placeholder="必填,至少为 6 位" |
| | | v-model="addForm.password" |
| | |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="confirmPassword"> |
| | | <div class="p-title">确认密码:</div> |
| | | <div class="p-title">确认密码</div> |
| | | <el-input |
| | | placeholder="必填" |
| | | v-model="addForm.confirmPassword" |
| | |
| | | 没有找到与 {{ searchText }} 相关的结果 |
| | | </div> |
| | | </div> |
| | | <div class="dummy-end" v-if="showRecomand" style="height: 15px"></div> |
| | | <div class="dummy-end" v-if="showRecomand" style="height: 14px"></div> |
| | | </div> |
| | | <div class="nav-items"> |
| | | <div |
| | |
| | | isSetPermission: false, |
| | | timeInterval: 10, |
| | | ntpServer: "", |
| | | syncType: "1", |
| | | // syncType: "1", |
| | | equipmentTime: "", |
| | | equipmentDate: "", |
| | | roleList: [], |
| | |
| | | }, |
| | | activeAccountIndex: 0, |
| | | sysMenus: [], |
| | | checkedArr: [], |
| | | addForm: { |
| | | userName: "", |
| | | nickName: "", |
| | |
| | | headpic: "", |
| | | confirmPassword: "", |
| | | roleId: "", |
| | | }, |
| | | props: { |
| | | label: "name", |
| | | }, |
| | | addRules: { |
| | | userName: [{ validator: v1, trigger: "blur" }], |
| | |
| | | break; |
| | | } |
| | | }, |
| | | editHeadPic() { |
| | | this.showJPGArr = true; |
| | | this.jpgArr.forEach((item, index) => { |
| | | if (this.activeAccountItem.headpic == item.path) { |
| | | this.selectedPic = index; |
| | | } |
| | | }); |
| | | }, |
| | | submitClock() { |
| | | if (this.syncType === "1") { |
| | | if (this.isNtp) { |
| | | if (this.ntpServer === "" || this.ntpServer === "...") { |
| | | this.$notify.error("NTP 服务器地址不能为空"); |
| | | return false; |
| | |
| | | } |
| | | saveClockInfo({ |
| | | timeZone: this.timezone, |
| | | ntp: this.syncType === "1", |
| | | ntp: this.isNtp, |
| | | ntpServer: this.ntpServer, |
| | | interval: this.timeInterval, |
| | | newTime: this.settime, |
| | |
| | | } |
| | | ); |
| | | }, |
| | | flatGetArr(arr, res) { |
| | | flatCheckedArr(arr, res) { |
| | | for (const item of arr) { |
| | | if (item.selected) res.push(item.id); |
| | | if (item.children) this.flatGetArr(item.children, res); |
| | | if (item.children) this.flatCheckedArr(item.children, res); |
| | | } |
| | | }, |
| | | saveAuth() { |
| | | let arr = []; |
| | | this.flatGetArr(this.sysMenus, arr); |
| | | this.flatCheckedArr(this.sysMenus, arr); |
| | | updataUser({ |
| | | id: this.activeAccountItem.id, |
| | | menuIds: arr, |
| | |
| | | } |
| | | return format; |
| | | }, |
| | | |
| | | initClockConf(ntpTest = false) { |
| | | getClockInfo().then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | | this.timezone = rsp.data.time_zone; |
| | | if (!ntpTest) { |
| | | this.syncType = rsp.data.ntp ? "1" : "2"; |
| | | // this.syncType = rsp.data.ntp ? "1" : "2"; |
| | | this.isNtp = rsp.data.ntp; |
| | | this.isManual = !rsp.data.ntp; |
| | | } |
| | |
| | | this.syncDay = max + ""; |
| | | } |
| | | } |
| | | }, |
| | | onLeave() { |
| | | if (this.showJPGArr) { |
| | | return; |
| | | } |
| | | this.showChangePic = false; |
| | | }, |
| | | cancelSetTime() { |
| | | this.parseTime(); |
| | |
| | | } |
| | | ); |
| | | } else { |
| | | console.log("error submit!!"); |
| | | return false; |
| | | } |
| | | }); |
| | |
| | | }, 1000); |
| | | }, |
| | | deleteAccount() { |
| | | this.$confirm("您是否确认删除账户?", "删除账户", { |
| | | const h = this.$createElement; |
| | | this.$msgbox({ |
| | | title: "", |
| | | message: h( |
| | | "div", |
| | | { |
| | | style: |
| | | "display: flex; flex-direction: column; justify-content: center; align-items: center;", |
| | | }, |
| | | [ |
| | | h("span", { class: "icon iconfont warn-icon" }, "\ue71c"), |
| | | h("span", { class: "warn-title" }, "删除账户"), |
| | | h("span", { class: "warn-dec" }, "您是否确认删除账户?"), |
| | | ] |
| | | ), |
| | | showCancelButton: true, |
| | | showClose: true, |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | customClass: "del-account-message-box", |
| | | }) |
| | | .then(() => { |
| | | let obj = { |
| | |
| | | deleteUser(obj).then((res) => { |
| | | if (res.success) { |
| | | this.fetchUserList(); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "删除成功!", |
| | | }); |
| | | this.$message.success("删除成功!"); |
| | | } else { |
| | | this.$message.error("删除失败"); |
| | | } |
| | |
| | | }).then((res) => { |
| | | if (res && res.success) { |
| | | this.sysMenus = res.data; |
| | | let arr = []; |
| | | this.drawChecked(this.sysMenus, arr); |
| | | this.checkedArr = arr; |
| | | } |
| | | }); |
| | | }, |
| | | drawChecked(arr, res) { |
| | | for (const item of arr) { |
| | | if (item.selected && !item.children) res.push(item.id); |
| | | if (item.children) this.drawChecked(item.children, res); |
| | | } |
| | | }, |
| | | openPermission() { |
| | | this.inAccountDetail = true; |
| | |
| | | ":" |
| | | ); |
| | | }, |
| | | changeSwitch(str) { |
| | | if (str == "isNtp") { |
| | | this.isManual = !this[str]; |
| | | } else { |
| | | this.isNtp = !this[str]; |
| | | } |
| | | this.syncType = this.isNtp ? "1" : "2"; |
| | | if (this.isManual) this.parseTime(); |
| | | }, |
| | | // changeSwitch(str) { |
| | | // if (str == "isNtp") { |
| | | // this.isManual = !this[str]; |
| | | // } else { |
| | | // this.isNtp = !this[str]; |
| | | // } |
| | | // this.syncType = this.isNtp ? "1" : "2"; |
| | | // if (this.isManual) this.parseTime(); |
| | | // }, |
| | | }, |
| | | computed: { |
| | | activeUserRole() { |
| | |
| | | }, |
| | | isShowDeleteAccount() { |
| | | if (this.curUserRole == "超级管理员") { |
| | | if (this.activeUserRole == "超级管理员") { |
| | | return false; |
| | | } |
| | | return true; |
| | | return this.activeUserRole != "超级管理员"; |
| | | } else if (this.curUserRole == "管理员") { |
| | | if (this.activeUserRole == "普通用户") { |
| | | return true; |
| | | } |
| | | return false; |
| | | return this.activeUserRole == "普通用户"; |
| | | } |
| | | return false; |
| | | }, |
| | | isShowPermitBtn() { |
| | | if (this.curUserRole == "管理员") { |
| | | if (this.activeUserRole == "普通用户") { |
| | | return true; |
| | | return this.activeUserRole == "普通用户"; |
| | | } else { |
| | | return this.curUserRole != "普通用户"; |
| | | } |
| | | return false; |
| | | } else if (this.curUserRole == "普通用户") { |
| | | return false; |
| | | } |
| | | return true; |
| | | }, |
| | | searchArrForShow() { |
| | | if (this.searchText == "") { |
| | |
| | | } |
| | | .container-center { |
| | | height: 100%; |
| | | width: 280px; |
| | | width: 300px; |
| | | overflow: auto; |
| | | flex-shrink: 0; |
| | | padding: 10px; |
| | | border-right: 5px solid rgba(248, 248, 248, 1); |
| | | border-right: 4px solid #f2f2f7; |
| | | box-sizing: border-box; |
| | | background-color: #fbfaff; |
| | | border-left: 4px solid #f2f2f7; |
| | | .account-left { |
| | | height: 100%; |
| | | .account-list { |
| | |
| | | overflow: auto; |
| | | } |
| | | .add-account { |
| | | color: rgba(61, 104, 225, 1); |
| | | margin-top: 15px; |
| | | color: var(--colorCard); |
| | | margin-top: 30px; |
| | | .el-icon-circle-plus { |
| | | cursor: pointer; |
| | | font-size: 38px; |
| | | } |
| | | } |
| | | .account-card { |
| | | height: 50px; |
| | | background-color: rgba(248, 248, 248, 1); |
| | | margin-bottom: 10px; |
| | | height: 60px; |
| | | background-color: #f2f2f7; |
| | | margin-bottom: 4px; |
| | | display: flex; |
| | | align-items: center; |
| | | padding: 0 20px; |
| | | padding: 0 5px 0 20px; |
| | | |
| | | box-sizing: border-box; |
| | | border-radius: 10px; |
| | | border-radius: 8px; |
| | | cursor: pointer; |
| | | justify-content: space-between; |
| | | |
| | | .touxiang { |
| | | display: flex; |
| | | align-items: center; |
| | | img { |
| | | border: none; |
| | | |
| | | height: 35px; |
| | | width: 35px; |
| | | border-radius: 17.5px; |
| | | height: 44px; |
| | | width: 44px; |
| | | border-radius: 50%; |
| | | } |
| | | } |
| | | .login-tag { |
| | | width: 72px; |
| | | height: 19.21px; |
| | | background: #ffffff; |
| | | border-radius: 20px; |
| | | color: #333333; |
| | | transform: scale(0.833333); |
| | | line-height: 22.21px; |
| | | // border: 1px solid var(--colorCard) ; |
| | | span { |
| | | font-size: 13px; |
| | | } |
| | | } |
| | | .user-name { |
| | | margin-left: 10px; |
| | | margin-left: 20px; |
| | | font-size: 14px; |
| | | font-weight: bold; |
| | | } |
| | | } |
| | | |
| | |
| | | padding: 30px 40px; |
| | | background: #f2f2f7; |
| | | .account-right { |
| | | height: 100%; |
| | | .account-content { |
| | | margin-top: 40px; |
| | | .content-top { |
| | | height: 120px; |
| | | width: 350px; |
| | | margin: 0 auto; |
| | | display: flex; |
| | | flex-direction: column; |
| | | // margin-bottom: 80px; |
| | | align-items: center; |
| | | justify-content: center; |
| | | margin-bottom: 20px; |
| | | .touxiang-big { |
| | | width: 100px; |
| | | height: 100px; |
| | | position: relative; |
| | | border-radius: 50px; |
| | | margin-bottom: 20px; |
| | | img { |
| | | border: none; |
| | | width: 100px; |
| | |
| | | border-radius: 3px; |
| | | border: 1px solid transparent; |
| | | font-size: 14px; |
| | | font-weight: bold; |
| | | } |
| | | .enable:hover { |
| | | color: orangered; |
| | | font-size: 15px; |
| | | transition: all 0.2s; |
| | | } |
| | | .selected { |
| | |
| | | height: 100px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: baseline; |
| | | align-items: center; |
| | | color: #333333; |
| | | min-width: 200px; |
| | | .username { |
| | | margin: 0 15px; |
| | | .user-name { |
| | | margin-bottom: 10px; |
| | | height: 28px; |
| | | line-height: 28px; |
| | | text-align: left; |
| | | font-size: 16px; |
| | | display: flex; |
| | | align-items: center; |
| | | font-weight: bold; |
| | | font-size: 16px; |
| | | } |
| | | .nick-name { |
| | | margin: 5px 15px; |
| | | font-size: 14px; |
| | | display: flex; |
| | | font-weight: bold; |
| | | height: 30px; |
| | | align-items: center; |
| | | .nick-text { |
| | | width: fit-content; |
| | | text-align: left; |
| | | } |
| | | |
| | | .edit-icon { |
| | | font-size: 13px; |
| | | margin-left: 10px; |
| | | } |
| | | .confirm-icon { |
| | | color: #4e94ff; |
| | | font-size: 18px; |
| | | margin-left: 10px; |
| | | } |
| | | .clear-icon { |
| | | margin-left: 10px; |
| | | font-size: 18px; |
| | | } |
| | | .iconfont { |
| | | font-size: 14px; |
| | | margin-left: 5px; |
| | | cursor: pointer; |
| | | font-weight: normal; |
| | | } |
| | | .el-input--mini { |
| | | font-size: 14px; |
| | | width: 83px; |
| | | width: 82px; |
| | | .el-input__inner { |
| | | padding: 0 5px; |
| | | padding: 0 8px; |
| | | height: 20px; |
| | | line-height: 20px; |
| | | /* border: 1px solid; */ |
| | | border: 1px solid #4e94ff; |
| | | border-radius: 20px; |
| | | background: #f2f2f7; |
| | | } |
| | | } |
| | | } |
| | | .user-role { |
| | | margin: 5px 0 0 15px; |
| | | font-size: 14px; |
| | | color: skyblue; |
| | | width: 75px; |
| | | height: 18px; |
| | | border: 1px solid #333333; |
| | | box-sizing: border-box; |
| | | border-radius: 20px; |
| | | font-weight: bold; |
| | | font-size: 12px; |
| | | margin-bottom: 20px; |
| | | } |
| | | } |
| | | } |
| | | .chang-pic-arr { |
| | | margin-top: 40px; |
| | | } |
| | | .list-btn { |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | margin-top: 80px; |
| | | .alt-pw-btn { |
| | | background: rgba(78, 148, 255, 0.1); |
| | | border: 1px solid #4e94ff; |
| | | } |
| | | .del-usr-btn { |
| | | background: #e0e0e0; |
| | | color: #fc4958; |
| | | } |
| | | .auth-set-btn { |
| | | background: #4e94ff; |
| | | color: #ffffff; |
| | | } |
| | | .item-btn { |
| | | width: 500px; |
| | | height: 45px; |
| | | background-color: #f0f0f0; |
| | | width: 212px; |
| | | height: 40px; |
| | | margin-bottom: 15px; |
| | | border-radius: 10px; |
| | | line-height: 45px; |
| | | font-size: 15px; |
| | | line-height: 40px; |
| | | border-radius: 25px; |
| | | font-size: 16px; |
| | | font-weight: bold; |
| | | cursor: pointer; |
| | | } |
| | | .item-btn:hover { |
| | | color: rgba(255, 153, 102, 1); |
| | | } |
| | | } |
| | | } |
| | | |
| | | .change-pw { |
| | | padding: 40px 10px; |
| | | max-width: 600px; |
| | | margin: 0 auto; |
| | | .title { |
| | | height: 30px; |
| | | line-height: 30px; |
| | | margin-bottom: 10px; |
| | | font-weight: bold; |
| | | font-size: 16px; |
| | | line-height: 22px; |
| | | color: #333333; margin-bottom: 40px; |
| | | height: 28px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | .icon{ |
| | | font-size: 28px; |
| | | font-weight: normal;margin-right: 10px; |
| | | } |
| | | |
| | | } |
| | | .el-form-item__content { |
| | | line-height: 48px; |
| | | display: flex; |
| | | align-items: center; |
| | | background: #f2f2f7; |
| | | border-radius: 8px; |
| | | padding: 0 15px 0 20px; |
| | | .el-select-dropdown__item { |
| | | color: #333333; |
| | | height: 32px; |
| | | font-size: 12px; |
| | | line-height: 32px; |
| | | text-align: center; |
| | | } |
| | | .el-popper { |
| | | margin-top: 0; |
| | | background: #fbfaff; |
| | | box-shadow: 0px 2px 6px rgb(0 0 0 / 18%); |
| | | border-radius: 2px; |
| | | .el-select-dropdown__item.hover, |
| | | .el-select-dropdown__item:hover { |
| | | background-color: #f2f2f7; |
| | | color: #4e94ff; |
| | | } |
| | | } |
| | | } |
| | | .el-form-item__error { |
| | | line-height: 0.7; |
| | | left: 20px; |
| | | } |
| | | .el-form-item { |
| | | .el-input__inner { |
| | | background-color: #ffffff; |
| | | border: none; |
| | | border-radius: 20px; |
| | | height: 32px; |
| | | padding: 0 15px; |
| | | font-size: 14px; |
| | | font-weight: bold; |
| | | } |
| | | .el-input__inner::placeholder { |
| | | color: #c0c4cc; |
| | | font-size: 12px; |
| | | font-weight: normal; |
| | | } |
| | | .el-select { |
| | | width: 100%; |
| | | } |
| | | .el-select .el-input .el-select__caret { |
| | | color: #333333; |
| | | font-size: 14px; |
| | | font-weight: 600; |
| | | } |
| | | .change-pw { |
| | | } |
| | | .p-title { |
| | | height: 48px; |
| | | text-align: left; |
| | | font-size: 15px; |
| | | margin-top: 5px; |
| | | line-height: 48px; |
| | | width: 90px; |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | .el-form-item { |
| | | margin-bottom: 0; |
| | | margin-bottom: 15px; |
| | | .el-input__inner { |
| | | background-color: rgba(240, 240, 240, 1); |
| | | border: none; |
| | |
| | | font-size: 15px; |
| | | } |
| | | .el-input__clear { |
| | | color: dimgray; |
| | | font-size: 17px; |
| | | line-height: 45px; |
| | | color: #333333; |
| | | font-size: 16px; |
| | | line-height: 48px; |
| | | } |
| | | .el-input__suffix { |
| | | right: 1px; |
| | |
| | | } |
| | | } |
| | | .permission { |
| | | .line { |
| | | display: flex; |
| | | align-items: center; |
| | | height: 50px; |
| | | padding: 0 25px; |
| | | background-color: rgba(248, 248, 248, 1); |
| | | justify-content: space-between; |
| | | border-radius: 12px; |
| | | margin-bottom: 10px; |
| | | .name { |
| | | font-size: 14px; |
| | | height: 100%; |
| | | |
| | | .title { |
| | | height: 22px; |
| | | line-height: 48px; |
| | | font-size: 16px; |
| | | font-weight: 600; |
| | | color: #333333; |
| | | height: 48px; |
| | | background: #fbfaff; |
| | | border-bottom: 2px solid #f2f2f7; |
| | | } |
| | | .tree-window { |
| | | padding: 10px 15px; |
| | | height: calc(100% - 155px); |
| | | border-bottom: 2px solid #f2f2f7; |
| | | .el-tree { |
| | | background: initial; |
| | | color: #333; |
| | | height: 100%; |
| | | overflow: auto; |
| | | max-width: 600px; |
| | | margin: 0 auto; |
| | | .el-tree-node { |
| | | background: initial; |
| | | .el-tree-node__content { |
| | | height: 30px; |
| | | background: #f2f2f7; |
| | | margin-bottom: 4px; |
| | | border-radius: 4px; |
| | | box-sizing: border-box; |
| | | border: 2px solid transparent; |
| | | .el-tree-node__content > .el-tree-node__expand-icon { |
| | | padding: 6px 18px; |
| | | font-size: 16px; |
| | | } |
| | | .el-checkbox__input.is-checked .el-checkbox__inner, |
| | | .el-checkbox__input.is-indeterminate .el-checkbox__inner { |
| | | background-color: #4e94ff; |
| | | border-color: #4e94ff; |
| | | } |
| | | .el-checkbox__inner { |
| | | border-radius: 1px; |
| | | border: 1px solid #4e94ff; |
| | | } |
| | | .el-tree-node__label { |
| | | font-size: 13px; |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | .el-tree-node__content:hover { |
| | | border: 2px solid #4e94ff; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .btns { |
| | | margin-top: 19px; |
| | | } |
| | | } |
| | | |
| | | .upload-group { |
| | | height: 120px; |
| | | width: 360px; |
| | | width: 340px; |
| | | |
| | | margin: 0 auto; |
| | | overflow: hidden; |
| | | .upload-jpg { |
| | | position: relative; |
| | | height: 48px; |
| | | width: 48px; |
| | | height: 44px; |
| | | width: 44px; |
| | | float: left; |
| | | margin: 0 10px; |
| | | margin-bottom: 10px; |
| | | margin-bottom: 20px; |
| | | background-color: rgba(242, 242, 242, 1); |
| | | border: 2px solid transparent; |
| | | border-radius: 50%; |
| | | cursor: pointer; |
| | | img { |
| | | height: 48px; |
| | | width: 48px; |
| | | height: 44px; |
| | | width: 44px; |
| | | border-radius: 50%; |
| | | } |
| | | .img-mask { |
| | | position: absolute; |
| | | left: 0; |
| | | top: 0; |
| | | height: 48px; |
| | | width: 48px; |
| | | height: 44px; |
| | | width: 44px; |
| | | background-color: rgba(0, 0, 0, 0.3); |
| | | color: white; |
| | | border-radius: 50%; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | .icon { |
| | | font-size: 20px; |
| | | } |
| | | .selected { |
| | | font-size: 22px; |
| | | } |
| | | } |
| | | } |
| | | .upload-jpg-border { |
| | | border: 2px solid cornflowerblue; |
| | | border: 2px solid #4e94ff; |
| | | } |
| | | } |
| | | .add-account-page { |
| | | margin-top: 20px; |
| | | padding: 0 10px; |
| | | .title { |
| | | height: 22px; |
| | | margin-bottom: 20px; |
| | | font-weight: bold; |
| | | font-size: 16px; |
| | | line-height: 22px; |
| | | } |
| | | .fill-group { |
| | | max-width: 450px; |
| | | margin-top: 10px; |
| | | |
| | | margin: 0 auto; |
| | | .el-form-item__content { |
| | | line-height: 44px; |
| | | line-height: 48px; |
| | | display: flex; |
| | | align-items: center; |
| | | background: #f2f2f7; |
| | | border-radius: 8px; |
| | | padding: 0 15px 0 20px; |
| | | .el-select-dropdown__item { |
| | | color: #333333; |
| | | height: 32px; |
| | | font-size: 12px; |
| | | line-height: 32px; |
| | | text-align: center; |
| | | } |
| | | .el-popper { |
| | | margin-top: 0; |
| | | background: #fbfaff; |
| | | box-shadow: 0px 2px 6px rgb(0 0 0 / 18%); |
| | | border-radius: 2px; |
| | | .el-select-dropdown__item.hover, |
| | | .el-select-dropdown__item:hover { |
| | | background-color: #f2f2f7; |
| | | color: #4e94ff; |
| | | } |
| | | } |
| | | } |
| | | .p-title { |
| | | height: 34px; |
| | | height: 48px; |
| | | text-align: left; |
| | | line-height: 50px; |
| | | line-height: 48px; |
| | | width: 90px; |
| | | font-weight: 600; |
| | | } |
| | | .el-form-item__error { |
| | | line-height: 0.8; |
| | | left: 3.3%; |
| | | line-height: 0.7; |
| | | left: 20px; |
| | | } |
| | | .el-form-item { |
| | | .el-input__inner { |
| | | background-color: #ffffff; |
| | | border: none; |
| | | border-radius: 20px; |
| | | height: 32px; |
| | | padding: 0 15px; |
| | | font-size: 14px; |
| | | font-weight: bold; |
| | | } |
| | | .el-input__inner::placeholder { |
| | | color: #c0c4cc; |
| | | font-size: 12px; |
| | | font-weight: normal; |
| | | } |
| | | .el-select { |
| | | width: 100%; |
| | | } |
| | | .el-select .el-input .el-select__caret { |
| | | color: #333333; |
| | | font-size: 14px; |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | .right { |
| | | display: flex; |
| | | align-items: baseline; |
| | | align-items: center; |
| | | .desc-min { |
| | | font-size: 12px; |
| | | font-weight: bold; |
| | |
| | | .el-button--text { |
| | | margin-left: 42px; |
| | | color: #409eff; |
| | | /* background: 0 0; */ |
| | | padding-left: 0; |
| | | padding-right: 0; |
| | | background: rgba(78, 148, 255, 0.1); |
| | | border: 1px solid #4e94ff; |
| | | box-sizing: border-box; |
| | | border-radius: 20px; |
| | | width: 68px; |
| | | color: #333; |
| | | font-weight: bold; |
| | | font-weight: bold;padding: 6px 20px; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | .btns { |
| | | margin: 0 auto; |
| | | margin-top: 30px; |
| | | margin-top: 40px; |
| | | width: fit-content; |
| | | display: flex; |
| | | .cancel { |
| | |
| | | } |
| | | } |
| | | } |
| | | .container-right-for-account { |
| | | background: #fbfaff; |
| | | padding: 0; |
| | | } |
| | | } |
| | | .del-account-message-box { |
| | | } |
| | | </style> |
| | | |