|
@@ -9,7 +9,7 @@
|
|
|
</div>
|
|
|
<div class="application-content flex">
|
|
|
<div class="box account-tree">
|
|
|
- <el-tree :data="data" :props="defaultProps" default-expand-all @node-click="handleNodeClick" />
|
|
|
+ <el-tree :data="data" :props="defaultProps" node-key="user_group_id" default-expand-all @node-click="handleNodeClick" />
|
|
|
</div>
|
|
|
<Table class="account-table" BtnGroupWidth="250px" :tableHeader="tableHeader" @btnClick="btnClick" :tableBtnGroup="tableBtnGroup" :tableData="tableData" />
|
|
|
</div>
|
|
@@ -18,19 +18,19 @@
|
|
|
<!--新增/编辑-->
|
|
|
<Dialog :flag="editDialogVisible" :msgTitle="editDialogTitle" @submitForm="submitForm(ruleFormRef)" @resetForm="resetForm(ruleFormRef)" :show-flag="true">
|
|
|
<el-form ref="ruleFormRef" :model="ruleForm" label-width="110px" class="demo-ruleForm">
|
|
|
- <el-form-item label="账号名称" prop="roleName">
|
|
|
- <el-input v-model="ruleForm.roleName" size="default" placeholder="请输入账号名称" />
|
|
|
+ <el-form-item label="账号名称" prop="user_name">
|
|
|
+ <el-input v-model="ruleForm.user_name" size="default" placeholder="请输入账号名称" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="账号密码" prop="rolePwd">
|
|
|
- <el-input v-model="ruleForm.rolePwd" type="password" show-password size="default" placeholder="请输入账号名称" />
|
|
|
+ <el-form-item label="账号密码" prop="user_pwd">
|
|
|
+ <el-input v-model="ruleForm.user_pwd" type="password" show-password size="default" placeholder="请输入账号名称" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="账号描述" prop="roleDesc">
|
|
|
- <el-input v-model="ruleForm.roleDesc" size="default" type="textarea" :rows="3" placeholder="请输入账号描述" />
|
|
|
+ <el-form-item label="账号描述" prop="user_comment">
|
|
|
+ <el-input v-model="ruleForm.user_comment" size="default" type="textarea" :rows="3" placeholder="请输入账号描述" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="是否启用" prop="roleStatus">
|
|
|
- <el-radio-group v-model="ruleForm.roleStatus">
|
|
|
- <el-radio label="1">启用</el-radio>
|
|
|
- <el-radio label="2"> 禁用</el-radio>
|
|
|
+ <el-form-item label="是否启用" prop="user_status">
|
|
|
+ <el-radio-group v-model="ruleForm.user_status">
|
|
|
+ <el-radio :label="1">启用</el-radio>
|
|
|
+ <el-radio :label="2"> 禁用</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
@@ -39,46 +39,19 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
-import { ref, reactive } from "vue";
|
|
|
+import { ref, reactive, onBeforeMount } from "vue";
|
|
|
import { ElMessage, FormInstance, FormRules } from "element-plus";
|
|
|
import Table from "@/components/tableTemp/index.vue";
|
|
|
import Search from "@/components/search/index.vue";
|
|
|
-interface Tree {
|
|
|
- label: string;
|
|
|
- children?: Tree[];
|
|
|
-}
|
|
|
+import { translateDataToTreeAll } from "@/utils/validate";
|
|
|
+import { GeneralDataReception, Query } from "@/api/dataIntegration";
|
|
|
+import * as _ from "lodash";
|
|
|
+import MD5 from "blueimp-md5";
|
|
|
+import table from "../hooks/useTable";
|
|
|
const router = useRouter();
|
|
|
const ruleFormRef = ref<FormInstance>();
|
|
|
-const tableHeader = [
|
|
|
- { label: "账号名称", key: "roleName" },
|
|
|
- { label: "账号数", key: "accountNum" },
|
|
|
- { label: "权限项数", key: "authNum" },
|
|
|
- { label: "是否存在互斥", key: "isHc" },
|
|
|
- { label: "启用状态", key: "status" },
|
|
|
- { label: "描述", key: "desc" },
|
|
|
-];
|
|
|
-const tableData = ref([
|
|
|
- {
|
|
|
- id: 1,
|
|
|
- roleName: "11",
|
|
|
- accountNum: "22",
|
|
|
- authNum: "33",
|
|
|
- isHc: "是",
|
|
|
- status: "启用",
|
|
|
- desc: "555",
|
|
|
- pwd: "",
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- roleName: "11",
|
|
|
- accountNum: "22",
|
|
|
- authNum: "33",
|
|
|
- isHc: "是",
|
|
|
- status: "启用",
|
|
|
- desc: "555",
|
|
|
- pwd: "",
|
|
|
- },
|
|
|
-]);
|
|
|
+const tableHeader = ref<any>([]);
|
|
|
+const tableData = ref<any>([]);
|
|
|
const tableBtnGroup = [
|
|
|
{
|
|
|
name: "编辑",
|
|
@@ -101,57 +74,137 @@ const title = ref("");
|
|
|
const dT = ref("add");
|
|
|
const editDialogVisible = ref(false);
|
|
|
const editDialogTitle = ref("新增账号");
|
|
|
-const ruleForm = reactive({
|
|
|
- roleName: "",
|
|
|
- roleDesc: "",
|
|
|
- roleStatus: "",
|
|
|
- rolePwd: "",
|
|
|
+const ruleForm = ref<any>({
|
|
|
+ user_name: "",
|
|
|
+ user_comment: "",
|
|
|
+ user_status: "",
|
|
|
+ user_pwd: "",
|
|
|
});
|
|
|
-const rowIndex = ref(1);
|
|
|
+const rowIndex = ref<any>({});
|
|
|
+const data = ref<any>([]);
|
|
|
+const msgId = ref(null);
|
|
|
+const msgType = ref("all");
|
|
|
+const PageIndex = ref(1);
|
|
|
+const searchInfo = ref("");
|
|
|
+//获取用户组
|
|
|
+const getGroup = async () => {
|
|
|
+ const { code, returnData } = await Query({
|
|
|
+ id: DATACONTENT_ID.accountGroupTableId,
|
|
|
+ dataContent: [""],
|
|
|
+ });
|
|
|
+ if (code == 0 && returnData.listValues) {
|
|
|
+ const dataObj = {
|
|
|
+ user_group_id: -1,
|
|
|
+ up_user_group_id: -2,
|
|
|
+ user_group_name: "全部用户组",
|
|
|
+ children: translateDataToTreeAll(
|
|
|
+ returnData.listValues,
|
|
|
+ "up_user_group_id",
|
|
|
+ "user_group_id"
|
|
|
+ ),
|
|
|
+ };
|
|
|
+ data.value = [dataObj];
|
|
|
+ } else {
|
|
|
+ const dataObj = {
|
|
|
+ user_group_id: -1,
|
|
|
+ up_user_group_id: -2,
|
|
|
+ user_group_name: "全部用户组",
|
|
|
+ children: [],
|
|
|
+ };
|
|
|
+ data.value = [dataObj];
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+//获取table
|
|
|
+const accountList = async () => {
|
|
|
+ let result: any = null;
|
|
|
+ if (msgType.value == "all") {
|
|
|
+ result = await Query({
|
|
|
+ id: DATACONTENT_ID.accountTableId,
|
|
|
+ needPage: PageIndex.value,
|
|
|
+ dataContent: [searchInfo.value],
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ result = await Query({
|
|
|
+ id: DATACONTENT_ID.accountGroupDetailsId,
|
|
|
+ dataContent: [msgId.value],
|
|
|
+ needPage: PageIndex.value,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ const { code, returnData, message } = result;
|
|
|
+ if (code == 0) {
|
|
|
+ const { columnSet, listValues } = returnData;
|
|
|
+ tableHeader.value = columnSet;
|
|
|
+ tableData.value = listValues;
|
|
|
+ } else {
|
|
|
+ ElMessage.error(message);
|
|
|
+ }
|
|
|
+};
|
|
|
|
|
|
-const handleNodeClick = (data: Tree) => {
|
|
|
- console.log(data);
|
|
|
+// 回到第一页
|
|
|
+const pageInit = () => {
|
|
|
+ PageIndex.value = 1;
|
|
|
+ tableHeader.value = [];
|
|
|
+ tableData.value = [];
|
|
|
+ accountList();
|
|
|
};
|
|
|
|
|
|
-const data: Tree[] = [
|
|
|
- {
|
|
|
- label: "全部账号组",
|
|
|
- children: [
|
|
|
- {
|
|
|
- label: "账号组名称",
|
|
|
- children: [],
|
|
|
- },
|
|
|
- {
|
|
|
- label: "账号组名称",
|
|
|
- children: [],
|
|
|
- },
|
|
|
- ],
|
|
|
- },
|
|
|
-];
|
|
|
+//增删改
|
|
|
+const dataChange = async (event, data) => {
|
|
|
+ const { code, message } = await table.dataChange(
|
|
|
+ SERVICE_ID.accountScId,
|
|
|
+ event,
|
|
|
+ data
|
|
|
+ );
|
|
|
+ if (code == 0) {
|
|
|
+ ElMessage.success(message);
|
|
|
+ pageInit();
|
|
|
+ } else {
|
|
|
+ ElMessage.error(message);
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+onBeforeMount(() => {
|
|
|
+ getGroup();
|
|
|
+ accountList();
|
|
|
+});
|
|
|
+
|
|
|
+const handleNodeClick = (data) => {
|
|
|
+ tableHeader.value = [];
|
|
|
+ tableData.value = [];
|
|
|
+ if (data.user_group_id != -1 && data.up_user_group_id != -2) {
|
|
|
+ PageIndex.value = 1;
|
|
|
+ msgType.value = "cld";
|
|
|
+ msgId.value = data.user_group_id;
|
|
|
+ accountList();
|
|
|
+ } else {
|
|
|
+ msgType.value = "all";
|
|
|
+ clear();
|
|
|
+ }
|
|
|
+};
|
|
|
|
|
|
const defaultProps = {
|
|
|
children: "children",
|
|
|
- label: "label",
|
|
|
+ label: "user_group_name",
|
|
|
};
|
|
|
const search = (val) => {
|
|
|
- ElMessage.success(`搜索成功:${val}`);
|
|
|
+ searchInfo.value = val;
|
|
|
+ pageInit();
|
|
|
};
|
|
|
const clear = () => {
|
|
|
- ElMessage.success(`清除`);
|
|
|
+ searchInfo.value = "";
|
|
|
+ pageInit();
|
|
|
};
|
|
|
const btnClick = (index, row, param) => {
|
|
|
- rowIndex.value = index;
|
|
|
+ rowIndex.value = row;
|
|
|
if (param == "del") {
|
|
|
flag.value = true;
|
|
|
- title.value = row.roleName;
|
|
|
+ title.value = row.user_name;
|
|
|
} else if (param == "edit") {
|
|
|
dT.value = "edit";
|
|
|
editDialogVisible.value = true;
|
|
|
editDialogTitle.value = "编辑账号";
|
|
|
- ruleForm.roleName = row.roleName;
|
|
|
- ruleForm.roleDesc = row.desc;
|
|
|
- ruleForm.roleStatus = row.status;
|
|
|
- ruleForm.rolePwd = row.pwd;
|
|
|
+ ruleForm.value = _.cloneDeep(row);
|
|
|
} else {
|
|
|
router.push("/userManagement/accountAuth");
|
|
|
}
|
|
@@ -160,47 +213,24 @@ const delRest = () => {
|
|
|
flag.value = false;
|
|
|
};
|
|
|
const remove = () => {
|
|
|
- tableData.value.splice(rowIndex.value, 1);
|
|
|
- ElMessage.success("删除成功");
|
|
|
+ dataChange(3, rowIndex.value);
|
|
|
flag.value = false;
|
|
|
};
|
|
|
const addApp = () => {
|
|
|
editDialogVisible.value = true;
|
|
|
editDialogTitle.value = "新增账号";
|
|
|
dT.value = "add";
|
|
|
- ruleForm.roleDesc = "";
|
|
|
- ruleForm.roleName = "";
|
|
|
- ruleForm.roleStatus = "";
|
|
|
+ ruleForm.value = {};
|
|
|
};
|
|
|
const submitForm = async (formEl: FormInstance | undefined) => {
|
|
|
if (!formEl) return;
|
|
|
await formEl.validate((valid, fields) => {
|
|
|
if (valid) {
|
|
|
+ ruleForm.value.user_pwd = MD5(ruleForm.value.user_pwd);
|
|
|
if (dT.value == "add") {
|
|
|
- const len = tableData.value.length;
|
|
|
- tableData.value.push({
|
|
|
- id: len + 1,
|
|
|
- roleName: ruleForm.roleName,
|
|
|
- desc: ruleForm.roleDesc,
|
|
|
- status: ruleForm.roleStatus,
|
|
|
- pwd: ruleForm.rolePwd,
|
|
|
- accountNum: "22",
|
|
|
- authNum: "33",
|
|
|
- isHc: "是",
|
|
|
- });
|
|
|
- ElMessage.success("新增成功");
|
|
|
+ dataChange(1, ruleForm.value);
|
|
|
} else {
|
|
|
- tableData.value[rowIndex.value] = {
|
|
|
- id: tableData.value[rowIndex.value].id,
|
|
|
- roleName: ruleForm.roleName,
|
|
|
- desc: ruleForm.roleDesc,
|
|
|
- status: ruleForm.roleStatus,
|
|
|
- pwd: ruleForm.rolePwd,
|
|
|
- accountNum: "22",
|
|
|
- authNum: "33",
|
|
|
- isHc: "是",
|
|
|
- };
|
|
|
- ElMessage.success("编辑成功");
|
|
|
+ dataChange(2, ruleForm.value);
|
|
|
}
|
|
|
editDialogVisible.value = false;
|
|
|
} else {
|