@@ -5,16 +5,16 @@ import {
55 getBorrowByReaderIdService ,
66 returnBookService
77} from " @/methods/borrow.js" ;
8- import {ref , onMounted } from " vue" ;
8+ import {onMounted , ref } from " vue" ;
99import HeaderView from " @/components/HeaderView.vue" ;
1010import SideView from " @/components/SideView.vue" ;
1111import {ElMessage } from " element-plus" ;
1212import {Delete } from " @element-plus/icons-vue" ;
1313
14-
1514const tableData = ref ([]);
1615
1716onMounted (() => {
17+ // console.log(new Date().toISOString().split('T')[0]);
1818 getBorrowByReaderId ();
1919})
2020
@@ -25,21 +25,27 @@ const returnBook = async (id, isbn) => {
2525 await getBorrowByReaderId ();
2626}
2727
28- // 表格行样式
28+ // 表格行背景颜色样式类
2929const tableRowClassName = ({row}) => {
30- if (row .status === false ) {
30+ const current = new Date ().toISOString ().split (' T' )[0 ]
31+ if (row .status ) {
32+ if (row .returnDate <= row .dueDate ) {
33+ return ' success-row' ;
34+ }
35+ return ' danger-row'
36+ } else {
37+ if (current > row .dueDate ) {
38+ return ' danger-row'
39+ }
3140 return ' warning-row' ;
3241 }
33- return ' success-row' ;
3442}
3543
36- // 获取当前读者的借阅信息
44+ // 获取当前读者的借阅信息,并根据状态筛选
3745const getBorrowByReaderId = async function () {
3846 const result = await getBorrowByReaderIdService ();
3947 tableData .value = result .data ;
40- if (filterStatus .value === ' all' ) {
41- tableData .value = result .data ;
42- } else if (filterStatus .value === ' returned' ) {
48+ if (filterStatus .value === ' returned' ) {
4349 tableData .value = result .data .filter (item => item .status === true );
4450 } else if (filterStatus .value === ' notReturned' ) {
4551 tableData .value = result .data .filter (item => item .status === false );
@@ -48,7 +54,7 @@ const getBorrowByReaderId = async function () {
4854
4955// 刷新状态
5056const flushStatus = async function (status ) {
51- console .log (status);
57+ // console.log(status);
5258 filterStatus .value = status;
5359 await getBorrowByReaderId ();
5460}
@@ -151,10 +157,14 @@ const deleteBorrowBatch = async () => {
151157 min-width : 150px ;
152158}
153159
154- .el-table .warning -row {
160+ .el-table .danger -row {
155161 --el-table-tr-bg-color : rgba (255 , 107 , 107 , 0.3 );
156162}
157163
164+ .el-table .warning-row {
165+ --el-table-tr-bg-color : rgba (255 , 251 , 0 , 0.3 );
166+ }
167+
158168.el-table .success-row {
159169 --el-table-tr-bg-color : rgba (122 , 255 , 107 , 0.3 );
160170}
0 commit comments