- 项目审批管理
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增一级节点
+
+
+ 展开/折叠
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createTime) }}
+
+
+
+
+ 修改
+ 新增子节点
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+const deptList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const title = ref('');
+const deptOptions = ref([]);
+const isExpandAll = ref(true);
+const refreshTable = ref(true);
-
+const data = reactive({
+ form: {},
+ queryParams: {
+ deptName: undefined,
+ status: undefined,
+ },
+ rules: {
+ deptName: [{ required: true, message: '节点名称不能为空', trigger: 'blur' }],
+ orderNum: [{ required: true, message: '显示排序不能为空', trigger: 'blur' }],
+ email: [
+ {
+ type: 'email',
+ message: '请输入正确的邮箱地址',
+ trigger: ['blur', 'change'],
+ },
+ ],
+ phone: [
+ {
+ pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
+ message: '请输入正确的手机号码',
+ trigger: 'blur',
+ },
+ ],
+ },
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询部门列表 */
+function getList() {
+ loading.value = true;
+ listDept(queryParams.value).then(response => {
+ deptList.value = proxy.handleTree(response.data, 'deptId');
+ loading.value = false;
+ });
+}
+/** 取消按钮 */
+function cancel() {
+ open.value = false;
+ reset();
+}
+/** 表单重置 */
+function reset() {
+ form.value = {
+ deptId: undefined,
+ parentId: undefined,
+ deptName: undefined,
+ orderNum: 0,
+ leader: undefined,
+ phone: undefined,
+ email: undefined,
+ status: '0',
+ };
+ proxy.resetForm('deptRef');
+}
+/** 搜索按钮操作 */
+function handleQuery() {
+ getList();
+}
+/** 重置按钮操作 */
+function resetQuery() {
+ proxy.resetForm('queryRef');
+ handleQuery();
+}
+/** 新增按钮操作 */
+function handleAdd(row) {
+ reset();
+ listDept().then(response => {
+ deptOptions.value = proxy.handleTree(response.data, 'deptId');
+ });
+ if (row != undefined) {
+ form.value.parentId = row.deptId;
+ }
+ open.value = true;
+ title.value = '添加部门';
+}
+/** 展开/折叠操作 */
+function toggleExpandAll() {
+ refreshTable.value = false;
+ isExpandAll.value = !isExpandAll.value;
+ nextTick(() => {
+ refreshTable.value = true;
+ });
+}
+/** 修改按钮操作 */
+function handleUpdate(row) {
+ reset();
+ listDeptExcludeChild(row.deptId).then(response => {
+ deptOptions.value = proxy.handleTree(response.data, 'deptId');
+ });
+ getDept(row.deptId).then(response => {
+ form.value = response.data;
+ open.value = true;
+ title.value = '修改部门';
+ });
+}
+/** 提交按钮 */
+function submitForm() {
+ proxy.$refs['deptRef'].validate(valid => {
+ if (valid) {
+ if (form.value.deptId != undefined) {
+ updateDept(form.value).then(response => {
+ proxy.$modal.msgSuccess('修改成功');
+ open.value = false;
+ getList();
+ });
+ } else {
+ addDept(form.value).then(response => {
+ proxy.$modal.msgSuccess('新增成功');
+ open.value = false;
+ getList();
+ });
+ }
+ }
+ });
+}
+/** 删除按钮操作 */
+function handleDelete(row) {
+ proxy.$modal
+ .confirm('是否确认删除名称为"' + row.deptName + '"的数据项?')
+ .then(function () {
+ return delDept(row.deptId);
+ })
+ .then(() => {
+ getList();
+ proxy.$modal.msgSuccess('删除成功');
+ })
+ .catch(() => {});
+}
+
+getList();
+