| | |
| | | size="small" |
| | | /> |
| | | </div> |
| | | <!-- <div class="serch_box"> |
| | | <div class="serch_box"> |
| | | <div class="serchb"> |
| | | <el-select |
| | | v-model="queryForm.selectType" |
| | |
| | | </el-select> |
| | | </div> |
| | | <input |
| | | v-model="queryForm.selectName" |
| | | v-model="queryForm.selectInput" |
| | | placeholder="请è¾å
¥å
³é®è¯æç´¢" |
| | | style="border-left: 0.06rem solid #e2e2e2" |
| | | /> |
| | | </div> --> |
| | | </div> |
| | | <el-button |
| | | @click="handleQuery" |
| | | type="primary" |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | " |
| | | ><el-icon style="margin-right: 0.2rem"><Plus /></el-icon |
| | | ><el-icon style="margin-right: 0.2rem"> <Plus /> </el-icon |
| | | >æ°å»º</el-button |
| | | > |
| | | <!-- ç¨æ·è§è²æ°å»º --> |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | " |
| | | ><el-icon style="margin-right: 0.2rem"><Plus /></el-icon |
| | | ><el-icon style="margin-right: 0.2rem"> <Plus /> </el-icon |
| | | >æ°å»º</el-button |
| | | > |
| | | <el-button |
| | |
| | | <div style="margin-top: 1rem; height: 100%"> |
| | | <!-- ç¨æ·å表 --> |
| | | <el-table |
| | | empty-text="ææ æ°æ®" |
| | | height="450" |
| | | v-if="isactive == 1" |
| | | :data="tableData" |
| | |
| | | <template #default="scope"> |
| | | <el-image |
| | | style="width: 70px; height: 70px" |
| | | :src="scope.row.headImageUrl" |
| | | :src="'http://115.159.85.185:9098' + scope.row.headImageUrl" |
| | | show-progress |
| | | :initial-index="4" |
| | | fit="cover" |
| | |
| | | <el-table-column label="æ¯å¦å¯ç¨" align="center" min-width="2%"> |
| | | <template #default="scope"> |
| | | <el-switch |
| | | :disabled=" |
| | | scope.row.userName == 'admin' || scope.row.user_Id == '1' |
| | | " |
| | | v-model="scope.row.enable" |
| | | :active-value="1" |
| | | :inactive-value="0" |
| | |
| | | /> |
| | | <el-table-column label="æä½" align="center" min-width="3%"> |
| | | <template #default="scope"> |
| | | <el-button size="small" type="text" @click="Edit(scope.row)" |
| | | <el-button |
| | | size="small" |
| | | type="text" |
| | | @click="Edit(scope.row)" |
| | | :disabled=" |
| | | scope.row.userName == 'admin' || scope.row.user_Id == '1' |
| | | " |
| | | >ç¼è¾</el-button |
| | | > |
| | | <el-button |
| | | size="small" |
| | | type="text" |
| | | :disabled=" |
| | | scope.row.userName == 'admin' || scope.row.user_Id == '1' |
| | | " |
| | | @click="Editpassword(scope.row)" |
| | | >ä¿®æ¹å¯ç </el-button |
| | | > |
| | |
| | | |
| | | <!-- ç¨æ·è§è² --> |
| | | <el-table |
| | | empty-text="ææ æ°æ®" |
| | | height="450" |
| | | v-if="isactive == 2" |
| | | :data="grideData" |
| | |
| | | <el-table-column prop="name" label="è§è²æé" align="center"> |
| | | <template #default="scope"> |
| | | <span |
| | | @click=" |
| | | router.replace({ |
| | | path: `/permission`, |
| | | state: { info: JSON.stringify(scope.row) }, |
| | | }) |
| | | v-if=" |
| | | scope.row.roleName != 'è¶
级管çå' || scope.row.roleId != '1' |
| | | " |
| | | @click="toDetail(scope.row)" |
| | | style="color: #4386ff; cursor: pointer" |
| | | >管ç</span |
| | | > |
| | |
| | | <el-table-column label="æ¯å¦å¯ç¨" align="center"> |
| | | <template #default="scope"> |
| | | <el-switch |
| | | :disabled=" |
| | | scope.row.roleName == 'è¶
级管çå' || scope.row.roleId == '1' |
| | | " |
| | | v-model="scope.row.enable" |
| | | :active-value="1" |
| | | :inactive-value="0" |
| | |
| | | <el-table-column label="æä½" align="center"> |
| | | <template #default="scope"> |
| | | <span |
| | | v-if=" |
| | | scope.row.roleName != 'è¶
级管çå' || scope.row.roleId != '1' |
| | | " |
| | | style="color: blue; font-size: 0.88rem; cursor: pointer" |
| | | @click="EditRole(scope.row)" |
| | | >ç¼è¾</span |
| | |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | /> |
| | | <el-pagination |
| | | v-if="isactive == 2" |
| | | size="small" |
| | | background |
| | | layout="prev, pager, next" |
| | | :current-page="pageQuery.page" |
| | | :page-size="pageQuery.rows" |
| | | :total="pageTotal" |
| | | @size-change="RoleSizeChange" |
| | | @current-change="RoleCurrentChange" |
| | | /> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | :before-close="handleClose" |
| | | :show-close="false" |
| | | :align-center="true" |
| | | @close="resetForm(formUserRef)" |
| | | > |
| | | <template #title> |
| | | <div |
| | |
| | | :model="formUser" |
| | | label-width="auto" |
| | | label-position="top" |
| | | ref="formRef" |
| | | :rules="rules" |
| | | ref="formUserRef" |
| | | :hide-required-asterisk="true" |
| | | > |
| | | <el-row :gutter="20"> |
| | | <el-col :span="8"> |
| | |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="role_Id"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | | <span |
| | | style="font-size: 0.88rem; color: black; font-weight: bold" |
| | | >ç¨æ·è§è²</span |
| | | > |
| | | >ç¨æ·è§è² |
| | | </span> |
| | | </div> |
| | | </template> |
| | | <el-select |
| | |
| | | size="small" |
| | | > |
| | | <el-option |
| | | :disabled="item.value == 20" |
| | | v-for="item in groupOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="roleName"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | | <span |
| | | style="font-size: 0.88rem; color: black; font-weight: bold" |
| | | >ç¨æ·ç±»å |
| | | </span> |
| | | </div> |
| | | </template> |
| | | <el-select |
| | | v-model="formUser.roleName" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in roleNameList" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item prop="enable"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | <span |
| | | style="font-size: 0.88rem; color: black; font-weight: bold" |
| | | >人è¸å¾ç</span |
| | | ><span |
| | | > |
| | | <!-- <span |
| | | style=" |
| | | color: rgba(255, 0, 0, 1); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.5rem; |
| | | " |
| | | >æ³¨ï¼æå¤å¯ä¸ä¼ ä¸å¼ ï¼å¾çéè¦æ£è§ç人åè¯ä»¶ç
§</span |
| | | > |
| | | > --> |
| | | </div> |
| | | </template> |
| | | <el-upload |
| | | ref="uploadRef" |
| | | name="files" |
| | | class="avatar-uploader" |
| | | action="#" |
| | | action="http://115.159.85.185:9098/api/User/SaveFiles" |
| | | list-type="picture-card" |
| | | :auto-upload="false" |
| | | limit="1" |
| | | :auto-upload="true" |
| | | @before-upload="beforeAvatarUpload" |
| | | :on-change="handleAvatarSuccess" |
| | | :on-success="handleAvatarSuccess" |
| | | :file-list="fileList != [] ? fileList : []" |
| | | > |
| | | <el-icon><Plus /></el-icon> |
| | | <el-icon> |
| | | <Plus /> |
| | | </el-icon> |
| | | <template #file="{ file }"> |
| | | <div> |
| | | <img |
| | |
| | | class="el-upload-list__item-delete" |
| | | @click="handleDownload(file)" |
| | | > |
| | | <el-icon size="15"><Download /></el-icon> |
| | | <el-icon size="15"> |
| | | <Download /> |
| | | </el-icon> |
| | | </span> |
| | | <span |
| | | v-if="!disabled" |
| | | class="el-upload-list__item-delete" |
| | | @click="handleRemove(file)" |
| | | > |
| | | <el-icon size="15"><Delete /></el-icon> |
| | | <el-icon size="15"> |
| | | <Delete /> |
| | | </el-icon> |
| | | </span> |
| | | </span> |
| | | </div> |
| | |
| | | <el-button |
| | | size="small" |
| | | type="primary" |
| | | @click="saveObj" |
| | | @click="saveObj(formUserRef)" |
| | | style="height: 2rem; font-size: 0.88rem" |
| | | > |
| | | ä¿å |
| | |
| | | </div> |
| | | </template> |
| | | <el-form |
| | | :model="formpassword" |
| | | :model="formUser" |
| | | label-width="auto" |
| | | label-position="top" |
| | | ref="formpasswordRef" |
| | |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-form-item prop="password"> |
| | | <el-form-item prop="newPwd"> |
| | | <el-input |
| | | style="margin-top: 1rem" |
| | | size="large" |
| | | v-model="formpassword.password" |
| | | v-model="formUser.newPwd" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | |
| | | :before-close="handleClose" |
| | | :show-close="false" |
| | | :align-center="true" |
| | | @close="resetForm1(formRoleRef)" |
| | | > |
| | | <template #title> |
| | | <div |
| | |
| | | </div> |
| | | </template> |
| | | <script setup> |
| | | import { ref, reactive, onMounted } from "vue"; |
| | | import { ref, reactive, onMounted, toRef } from "vue"; |
| | | import { ElMessage, ElMessageBox } from "element-plus"; |
| | | import { |
| | | GetUserList, |
| | |
| | | DelApi, |
| | | ExportApi, |
| | | ExportApi1, |
| | | UpdatePassword, |
| | | UpdatePwd, |
| | | AddUserApi, |
| | | EditUserApi, |
| | | } from "@/api/user"; |
| | | import { useRouter } from "vue-router"; |
| | | import { formatTime } from "@/utils/index.js"; |
| | |
| | | UpdateRoleApi, |
| | | DeleteRoleApi, |
| | | } from "@/api/role"; |
| | | const queryForm = reactive({ |
| | | let obj = { |
| | | selectName: "", |
| | | selectTime: [], // æ¶é´èå´ |
| | | selectType: "", |
| | | selectInput: "", |
| | | }); |
| | | }; |
| | | const queryForm = toRef({ ...obj }); |
| | | const router = useRouter(); |
| | | |
| | | const tableData = ref([]); |
| | | const grideData = ref([{ id: 1 }]); |
| | | const formRef = ref(); |
| | | const grideData = ref([]); |
| | | //æ°å»ºç¨æ·ref |
| | | const formUserRef = ref(); |
| | | const options = ref([]); |
| | | const props = { multiple: true }; |
| | | const isoptins = ref([ |
| | |
| | | ]); |
| | | //åç» |
| | | const groupOptions = ref([ |
| | | { value: 1, label: "è¶
级管çå" }, |
| | | { value: 2, label: "è´¨æ£ç»" }, |
| | | { value: 3, label: "çµæ°ç»" }, |
| | | { value: 4, label: "æºæ¢°ç»" }, |
| | | { value: 5, label: "å°æ²ç»" }, |
| | | { value: 20, label: "è¶
级管çå" }, |
| | | { value: 21, label: "è´¨æ£ç»" }, |
| | | { value: 22, label: "çµæ°ç»" }, |
| | | { value: 23, label: "æºæ¢°ç»" }, |
| | | { value: 24, label: "å°æ²ç»" }, |
| | | ]); |
| | | const table = ref(false); |
| | | const formUser = ref({ |
| | | user_Id: undefined, |
| | | userName: "", |
| | | role_Id: 2, |
| | | role_Id: 21, |
| | | roleName: "", |
| | | phoneNo: "", |
| | | remark: "", |
| | |
| | | dept_Id: 0, |
| | | enable: 1, |
| | | headImageUrl: "", |
| | | createDate: formatTime(new Date()), //å建æ¶é´ |
| | | creater: JSON.parse(localStorage.getItem("user")).userName, //å建人 |
| | | newPwd: "", |
| | | }); |
| | | const userform = reactive({ |
| | | userName: "", |
| | | description: "", |
| | | const rules = reactive({ |
| | | userName: { |
| | | required: true, |
| | | message: "请è¾å
¥ç¨æ·å", |
| | | trigger: "blur", |
| | | }, |
| | | role_Id: { |
| | | required: true, |
| | | message: "è¯·éæ©è§è²", |
| | | trigger: "change", |
| | | }, |
| | | newPwd: [ |
| | | { |
| | | required: true, |
| | | message: "请è¾å
¥å¯ç ", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | realName: { |
| | | required: true, |
| | | message: "请è¾å
¥å§å", |
| | | trigger: "blur", |
| | | }, |
| | | phoneNo: { |
| | | required: true, |
| | | message: "请è¾å
¥ææºå·", |
| | | trigger: "blur", |
| | | }, |
| | | userTrueName: { |
| | | required: true, |
| | | message: "请è¾å
¥çå®å§å", |
| | | trigger: "blur", |
| | | }, |
| | | }); |
| | | |
| | | const formpasswordRef = ref(); |
| | | const isactive = ref(1); |
| | | const claimdialogVisible = ref(false); |
| | | const dialogVisible = ref(false); |
| | | const imgdialogVisible = ref(false); |
| | | const dialogImageUrl = ref(""); |
| | |
| | | const dialogVisible1 = ref(false); |
| | | //ç¨æ·è§è²æ°å»º |
| | | const dialogVisible2 = ref(false); |
| | | const TorquedialogVisible = ref(false); |
| | | //å页请æ±åæ° |
| | | const pageQuery = ref({ |
| | | page: 1, //å½åé¡µé¢ |
| | | rows: 10, //æ¯é¡µæ¾ç¤ºæ¡æ° |
| | | order: "desc", //æåºæ¹å¼ |
| | | sort: "createDate", //æåºå段 |
| | | wheres: "", //æ¡ä»¶æ¥è¯¢ |
| | | }); |
| | | |
| | | const changeactive = (index) => { |
| | | isactive.value = index; |
| | | if (isactive.value == 1) { |
| | | selectoptions.value = userOptions; |
| | | initData(); |
| | | } else { |
| | | selectoptions.value = roleOptions; |
| | | getRole(); |
| | | } |
| | | }; |
| | | |
| | | //ç鿡件 |
| | | const userOptions = [ |
| | | { |
| | | value: "userName", |
| | |
| | | label: "èç³»æ¹å¼", |
| | | }, |
| | | ]; |
| | | |
| | | const fileList = ref([]); |
| | | const roleNameList = ref([ |
| | | { value: "çµæ°è´¨æ£", label: "çµæ°è´¨æ£" }, |
| | | { value: "æºæ¢°è´¨æ£", label: "æºæ¢°è´¨æ£" }, |
| | | { value: "å°æ²è´¨æ£", label: "å°æ²è´¨æ£" }, |
| | | { value: "çµæ°åç©", label: "çµæ°åç©" }, |
| | | { value: "çµæ°è¾
å©", label: "çµæ°è¾
å©" }, |
| | | { value: "æºæ¢°åç©", label: "æºæ¢°åç©" }, |
| | | { value: "æºæ¢°è¾
å©", label: "æºæ¢°è¾
å©" }, |
| | | { value: "å°æ²åç©", label: "å°æ²åç©" }, |
| | | { value: "å°æ²è¾
å©", label: "å°æ²è¾
å©" }, |
| | | ]); |
| | | const roleOptions = [ |
| | | { |
| | | value: "roleName", |
| | |
| | | ]; |
| | | const selectoptions = ref([]); |
| | | selectoptions.value = userOptions; |
| | | //ç¨æ·ä¿®æ¹å¯ç |
| | | const formpassword = ref({ |
| | | password: "", |
| | | oldPwd: "", |
| | | newPwd: "", |
| | | }); |
| | | const passwordrules = reactive({ |
| | | password: { |
| | | required: true, |
| | | message: "请è¾å
¥å¯ç ", |
| | | trigger: "blur", |
| | | }, |
| | | newPwd: [ |
| | | { |
| | | required: true, |
| | | message: "请è¾å
¥å¯ç ", |
| | | trigger: "blur", |
| | | }, |
| | | { |
| | | min: 6, |
| | | max: 12, |
| | | message: "å¯ç é¿åº¦å¨ 6 å° 12 个å符", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }); |
| | | |
| | | const uploadRef = ref(); |
| | | // //ç¨æ·ä¿®æ¹å¯ç |
| | | // const handleUpdatePassword = (row) => { |
| | | // dialogVisible1.value = true; |
| | | // formUser.value = Object.assign({}, row); |
| | | // }; |
| | | // const UpdatePassword = () => { |
| | | // formpasswordRef.value.validate((valid) => { |
| | | // if (valid) { |
| | | // UpdatePassword({ |
| | | // user_Id: formUser.value.user_Id, |
| | | // oldPwd: formpassword.value.oldPwd, |
| | | // newPwd: formpassword.value.newPwd, |
| | | // }).then((res) => { |
| | | // if (res.code == 200) { |
| | | // ElMessage({ |
| | | // message: "ä¿®æ¹æå", |
| | | // type: "success", |
| | | // }); |
| | | // dialogVisible1.value = false; |
| | | // initData(); |
| | | // } else { |
| | | // ElMessage({ |
| | | // message: res.msg, |
| | | // type: "error", |
| | | // }); |
| | | // } |
| | | // }); |
| | | // } |
| | | // }); |
| | | // }; |
| | | |
| | | const pageTotal = ref(0); |
| | | //ç»å½è®°å½ |
| | | const initData = () => { |
| | | // æ¥è¯¢æ¡ä»¶ |
| | | const startTime = formatTime(queryForm.selectTime[0]); |
| | | const endTime = formatTime(queryForm.selectTime[1]); |
| | | const startTime = formatTime(queryForm.value.selectTime[0]); |
| | | const endTime = formatTime(queryForm.value.selectTime[1]); |
| | | const filter = [ |
| | | { |
| | | name: "", |
| | | value: queryForm.selectType, |
| | | displayType: "int", |
| | | name: queryForm.value.selectType, |
| | | value: queryForm.value.selectInput, |
| | | displayType: "like", |
| | | }, |
| | | { name: "createDate", value: startTime, displayType: "ThanOrEqual" }, |
| | | { name: "createDate", value: endTime, displayType: "LessOrEqual" }, |
| | |
| | | pageTotal.value = res.total; |
| | | }); |
| | | }; |
| | | //å页请æ±åæ° |
| | | const pageQuery = ref({ |
| | | page: 1, //å½åé¡µé¢ |
| | | rows: 10, //æ¯é¡µæ¾ç¤ºæ¡æ° |
| | | order: "desc", //æåºæ¹å¼ |
| | | sort: "", //æåºå段 |
| | | wheres: "", //æ¡ä»¶æ¥è¯¢ |
| | | }); |
| | | |
| | | //æ°æ®æ£ç´¢äºä»¶ |
| | | const handleQuery = () => { |
| | | pageQuery.value.page = 1; |
| | | initData(); |
| | | if (isactive.value == 1) { |
| | | initData(); |
| | | } else { |
| | | getRole(); |
| | | } |
| | | }; |
| | | |
| | | //éç½®æ¥è¯¢æ¡ä»¶ |
| | | const resetQuery = () => { |
| | | queryForm.selectName = ""; |
| | | queryForm.selectInput = ""; |
| | | queryForm.selectTime = []; |
| | | queryForm.selectType = ""; |
| | | queryForm.value = Object.assign({}, obj); |
| | | pageQuery.value.page = 1; |
| | | initData(); |
| | | if (isactive.value == 1) { |
| | | initData(); |
| | | } else { |
| | | getRole(); |
| | | } |
| | | }; |
| | | //å页页é¢å¤§å°æ¹å |
| | | const handleSizeChange = (val) => { |
| | | pageQuery.value.rows = val; |
| | | initData(); |
| | | if (isactive.value == 1) { |
| | | initData(); |
| | | } else { |
| | | getRole(); |
| | | } |
| | | }; |
| | | |
| | | //å页页颿¹å |
| | | const handleCurrentChange = (val) => { |
| | | pageQuery.value.page = val; |
| | | initData(); |
| | | if (isactive.value == 1) { |
| | | initData(); |
| | | } else { |
| | | getRole(); |
| | | } |
| | | }; |
| | | //å页页é¢å¤§å°æ¹å |
| | | const RoleSizeChange = (val) => { |
| | | pageQuery.value.rows = val; |
| | | getRole(); |
| | | const handleAvatarSuccess = (val) => { |
| | | formUser.value.headImageUrl = "/image/" + val.data; |
| | | }; |
| | | //é置表å |
| | | const resetForm = (formEl) => { |
| | | if (!formEl) return; |
| | | formEl.resetFields(); |
| | | formUser.value = { |
| | | user_Id: undefined, |
| | | userName: "", |
| | | role_Id: 21, |
| | | roleName: "", |
| | | phoneNo: "", |
| | | remark: "", |
| | | userPwd: "123456", |
| | | userTrueName: "", |
| | | dept_Id: 0, |
| | | enable: 1, |
| | | headImageUrl: "", |
| | | newPwd: "", |
| | | }; |
| | | fileList.value = []; |
| | | }; |
| | | const resetForm1 = (formEl) => { |
| | | if (!formEl) return; |
| | | formEl.resetFields(); |
| | | formRole.value = { |
| | | roleName: "", |
| | | description: "", |
| | | }; |
| | | }; |
| | | |
| | | //å页页颿¹å |
| | | const RoleCurrentChange = (val) => { |
| | | pageQuery.value.page = val; |
| | | getRole(); |
| | | }; |
| | | const handlePictureCardPreview = (uploadFile) => { |
| | | dialogImageUrl.value = uploadFile.url; |
| | | imgdialogVisible.value = true; |
| | | }; |
| | | const handleAvatarSuccess = (val) => { |
| | | console.log(val); |
| | | const handleRemove = (val) => { |
| | | fileList.value = []; |
| | | //ç§»é¤å·²ä¸ä¼ çå¾ç |
| | | formUser.value.headImageUrl = ""; |
| | | }; |
| | | const beforeAvatarUpload = (val) => { |
| | | console.log(val); |
| | | }; |
| | | // const submitUpload = () => { |
| | | // let promise = new Promise((resolve, reject) => { |
| | | // setTimeout(async () => { |
| | | // await uploadRef.value.submit(); |
| | | // resolve("ä¸ä¼ æå"); |
| | | // }); |
| | | // }); |
| | | // return promise; |
| | | // }; |
| | | |
| | | //æ°å»ºç¨æ·è´¦å· |
| | | const saveObj = () => { |
| | | formRef.value.validate((valid) => { |
| | | const saveObj = async (formEl) => { |
| | | // submitUpload(); |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | if (formUser.value.user_Id != undefined) { |
| | | UpdateUser(formUser.value).then((res) => { |
| | |
| | | initData(); |
| | | }); |
| | | } |
| | | } else { |
| | | console.log("error submit!", fields); |
| | | } |
| | | }); |
| | | }; |
| | |
| | | }; |
| | | //ç¼è¾ç¨æ·è´¦å· |
| | | const Edit = (val) => { |
| | | console.log(val); |
| | | let obj = Object.assign({}, val); |
| | | formUser.value = { |
| | | ...obj, |
| | | }; |
| | | if (obj.headImageUrl != "") { |
| | | fileList.value = [ |
| | | { |
| | | name: "1", |
| | | url: "http://115.159.85.185:9098" + obj.headImageUrl, |
| | | }, |
| | | ]; |
| | | } |
| | | |
| | | dialogVisible.value = true; |
| | | formUser.value = obj; |
| | | }; |
| | | const newobj = ref({}); |
| | | //ä¿®æ¹å¯ç |
| | | const Editpassword = (val) => { |
| | | let obj = Object.assign({}, val); |
| | | formUser.value = obj; |
| | | formpassword.value = val; |
| | | newobj.value = val; |
| | | newobj.value = Object.assign({}, val); |
| | | console.log(newobj.value); |
| | | |
| | | dialogVisible1.value = true; |
| | | }; |
| | | //ä¿åä¿®æ¹å¯ç |
| | | const savePassword = async (formEl) => { |
| | | let obj = Object.assign({}, newobj); |
| | | obj.password = formpassword.value.password; |
| | | // obj.password = formpassword.value.password; |
| | | console.log(formUser.value); |
| | | |
| | | let formdata = { |
| | | id: formUser.value.user_Id, |
| | | oldPwd: formUser.value.userPwd, |
| | | newPwd: formUser.value.newPwd, |
| | | }; |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | UpdateUser(obj).then((res) => { |
| | | UpdatePwd(formdata).then((res) => { |
| | | ElMessage({ message: "ä¿®æ¹å¯ç æå", type: "success" }); |
| | | dialogVisible1.value = false; |
| | | initData(); |
| | |
| | | const formRole = ref({ |
| | | roleName: "", |
| | | description: "", |
| | | createDate: formatTime(new Date()), //å建æ¶é´ |
| | | creater: JSON.parse(localStorage.getItem("user")).userName, //å建人 |
| | | }); |
| | | |
| | | //æ°å»ºè§è² |
| | | const AddRole = () => { |
| | | Roletype.value = "æ°å»º"; |
| | |
| | | formRole.value = obj; |
| | | dialogVisible2.value = true; |
| | | }; |
| | | //è·åè§è² |
| | | const getRole = () => { |
| | | GetPageDataApi({ |
| | | page: 1, |
| | | rows: 10, |
| | | total: 100, |
| | | tableName: "", |
| | | sort: "", |
| | | order: "", |
| | | wheres: "", |
| | | export: true, |
| | | value: "", |
| | | filter: [ |
| | | { |
| | | name: "string", |
| | | value: "string", |
| | | displayType: "string", |
| | | }, |
| | | ], |
| | | }).then((res) => { |
| | | const startTime = formatTime(queryForm.value.selectTime[0]); |
| | | const endTime = formatTime(queryForm.value.selectTime[1]); |
| | | const filter = [ |
| | | { |
| | | name: queryForm.value.selectType, |
| | | value: queryForm.value.selectInput, |
| | | displayType: "like", |
| | | }, |
| | | { name: "createDate", value: startTime, displayType: "ThanOrEqual" }, |
| | | { name: "createDate", value: endTime, displayType: "LessOrEqual" }, |
| | | ]; |
| | | GetPageDataApi({ ...pageQuery.value, filter }).then((res) => { |
| | | grideData.value = res.rows; |
| | | pageTotal.value = res.total; |
| | | }); |
| | | }; |
| | | //æå°æ°æ® |
| | | const printExcel = () => { |
| | | // æ¥è¯¢æ¡ä»¶ |
| | | const startTime = formatTime(queryForm.selectTime[0]); |
| | | const endTime = formatTime(queryForm.selectTime[1]); |
| | | const startTime = formatTime(queryForm.value.selectTime[0]); |
| | | const endTime = formatTime(queryForm.value.selectTime[1]); |
| | | const filter = [ |
| | | { |
| | | name: queryForm.selectType, |
| | | value: queryForm.selectInput, |
| | | displayType: "String", |
| | | name: queryForm.value.selectType, |
| | | value: queryForm.value.selectInput, |
| | | displayType: "like", |
| | | }, |
| | | { |
| | | name: "pustatus", |
| | | value: queryForm.selectName, |
| | | value: queryForm.value.selectName, |
| | | displayType: "String", |
| | | }, |
| | | { name: "createDate", value: startTime, displayType: "ThanOrEqual" }, |
| | |
| | | }); |
| | | } |
| | | }; |
| | | //åæ¢é¡µé¢ |
| | | const changeactive = (index) => { |
| | | isactive.value = index; |
| | | if (isactive.value == 1) { |
| | | selectoptions.value = userOptions; |
| | | initData(); |
| | | } else { |
| | | selectoptions.value = roleOptions; |
| | | getRole(); |
| | | } |
| | | }; |
| | | |
| | | //æ¹éå é¤ |
| | | const ids = ref([]); |
| | |
| | | ids.value = val.map((item) => item.roleId); |
| | | }; |
| | | const deleteAll = () => { |
| | | if (ids.value.includes(1)) { |
| | | ElMessage({ message: "è¶
级管çåä¸è½å é¤", type: "error" }); |
| | | return; |
| | | } |
| | | if (ids.value.length == 0) { |
| | | ElMessage({ message: "è¯·éæ©è¦å é¤çæ°æ®", type: "error" }); |
| | | return; |
| | |
| | | }); |
| | | } |
| | | }; |
| | | //管ç |
| | | //è·¯ç±è·³è½¬ |
| | | const toDetail = (row) => { |
| | | router.push({ name: "permission", state: { info: JSON.stringify(row) } }); |
| | | }; |
| | | |
| | | onMounted(() => { |
| | | initData(); |
| | |
| | | .Usermanagement { |
| | | display: flex; |
| | | background-color: #fff; |
| | | |
| | | .content { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | |
| | | .checkbox { |
| | | width: 11rem; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-top: 1rem; |
| | | margin-left: 1.31rem; |
| | | |
| | | .item { |
| | | width: 5rem; |
| | | height: 1.88rem; |
| | |
| | | line-height: 1.88rem; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .isactive { |
| | | background-color: rgba(16, 16, 16, 1); |
| | | color: rgba(255, 255, 255, 1); |
| | | } |
| | | } |
| | | |
| | | .serch { |
| | | display: flex; |
| | | margin-top: 1.31rem; |
| | | align-items: center; |
| | | |
| | | .time_box { |
| | | display: flex; |
| | | align-items: center; |
| | | text-align: center; |
| | | margin-left: 0.98rem; |
| | | |
| | | .time { |
| | | box-sizing: border-box; |
| | | width: 6.88rem; |
| | |
| | | justify-content: center; |
| | | } |
| | | } |
| | | |
| | | .serch_box { |
| | | display: flex; |
| | | align-items: center; |
| | | text-align: center; |
| | | margin-left: 0.98rem; |
| | | border-radius: 0.38rem; |
| | | |
| | | .serchb { |
| | | box-sizing: border-box; |
| | | width: 6.88rem; |
| | |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | |
| | | input { |
| | | box-sizing: border-box; |
| | | outline: none; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .btns { |
| | | display: flex; |
| | | justify-content: space-between; |
| | |
| | | box-sizing: border-box; |
| | | } |
| | | } |
| | | |
| | | .my-header { |
| | | height: 3.84rem; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | border-bottom: 0.06rem solid rgba(233, 233, 233, 1); |
| | | } |
| | | |
| | | .avatar-uploader .avatar { |
| | | width: 7rem; |
| | | height: 7rem; |
| | | display: block; |
| | | } |
| | | |
| | | :deep(.avatar-uploader .el-upload) { |
| | | width: 7rem; |
| | | height: 7rem; |
| | |
| | | overflow: hidden; |
| | | transition: var(--el-transition-duration-fast); |
| | | } |
| | | |
| | | :deep(.el-upload-list__item) { |
| | | width: 7rem; |
| | | height: 7rem; |
| | | } |
| | | |
| | | .avatar-uploader .el-upload:hover { |
| | | border-color: var(--el-color-primary); |
| | | } |
| | |
| | | .confirmButtonClass { |
| | | margin-right: 10px; |
| | | } |
| | | |
| | | .el-message-box .el-message-box__btns { |
| | | flex-direction: row-reverse !important; |
| | | justify-content: normal !important; |