完成大作业部分及其打磨

This commit is contained in:
li-chx
2025-05-11 17:22:21 +08:00
parent 3ab2c26776
commit 0622b15509
23 changed files with 651 additions and 160 deletions
@@ -45,7 +45,6 @@
for (const [key, value] of Object.entries(cityDataTyped['00']!)) {
if (value === name) {
provinceIndex.value = key;
console.log('finish');
return;
}
}
+42 -17
View File
@@ -2,7 +2,7 @@
import SuperTable from '~/components/SuperTable.vue';
import type { TableProps, TableRowData } from 'tdesign-vue-next';
import PeopleForm from '~/pages/base/index/peopleManage/components/PeopleForm.vue';
import { TButton } from '#components';
const store = usePeopleStore();
const { peopleList, pagination, situation } = storeToRefs(usePeopleStore());
@@ -46,12 +46,23 @@
{
colKey: 'operator',
title: '操作',
cell: (_, { row }) => (
<div class="w-40 flex flex-row justify-evenly">
<t-button onClick={() => editUser(row)}>编辑</t-button>
<t-button onClick={() => deleteUser(row)}>删除</t-button>
</div>
),
cell: (_, { row }) =>
h('div', { class: 'w-40 flex flex-row justify-evenly' }, [
h(
TButton,
{
onClick: () => editUser(row),
},
{ default: () => '编辑' },
),
h(
TButton,
{
onClick: () => showDeleteUserDialog(row),
},
{ default: () => '删除' },
),
]),
},
]);
@@ -63,29 +74,34 @@
await store.getTotal();
});
function editUser(_row: TableRowData) {
function editUser(row: TableRowData) {
if (form.value) form.value.resetForm();
store.currentForm = {
...peopleList.value.find((e) => e.id === _row.id)!,
...peopleList.value.find((e) => e.id === row.id)!,
} as PeopleInfo;
console.log(store.currentForm.province);
form.value?.setProvinceIndexByName(store.currentForm.province);
console.log(store.currentForm);
store.showEditPeople = true;
}
function deleteUser(_row: TableRowData) {
store.deletePeople(_row.id);
console.log(_row);
const showDeleteDialog = ref(false);
let deleteRowId = 0;
function showDeleteUserDialog(row: TableRowData) {
deleteRowId = row.id;
showDeleteDialog.value = true;
}
function pageChange(x: { current: number; pageSize: number }) {
function deleteUser() {
showDeleteDialog.value = false;
store.deletePeople(deleteRowId);
}
async function pageChange(x: { current: number; pageSize: number }) {
if (pagination.value) {
pagination.value.current = x.current;
pagination.value.pageSize = x.pageSize;
store.getPeopleList();
await store.getPeopleList();
}
console.log(store.pagination);
}
async function doSearch() {
@@ -147,6 +163,15 @@
<people-form ref="form" />
</template>
</t-dialog>
<t-dialog
v-model:visible="showDeleteDialog"
header="你确定吗?"
width="40%"
:confirm-on-enter="true"
:on-confirm="deleteUser"
>
此操作将永久删除该人员确定吗
</t-dialog>
</div>
</template>