diff --git a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentDynamicsServiceImpl.java b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentDynamicsServiceImpl.java index 77a364e3..8690fe53 100644 --- a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentDynamicsServiceImpl.java +++ b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentDynamicsServiceImpl.java @@ -135,8 +135,16 @@ public class XgStudentDynamicsServiceImpl implements IXgStudentDynamicsService { lqw.in(XgDormApplication::getCurrentBuildingId, managedBuildingIds); // 添加其他查询条件 - lqw.like(bo.getStudentName() != null, XgDormApplication::getStudentName, bo.getStudentName()); - lqw.like(bo.getStudentNo() != null, XgDormApplication::getStudentNo, bo.getStudentNo()); + // 姓名或学号检索(OR关系) + if (bo.getStudentName() != null && bo.getStudentNo() != null) { + lqw.and(wrapper -> wrapper + .like(XgDormApplication::getStudentName, bo.getStudentName()) + .or() + .like(XgDormApplication::getStudentNo, bo.getStudentNo())); + } else { + lqw.like(bo.getStudentName() != null, XgDormApplication::getStudentName, bo.getStudentName()); + lqw.like(bo.getStudentNo() != null, XgDormApplication::getStudentNo, bo.getStudentNo()); + } lqw.like(bo.getCollegeName() != null, XgDormApplication::getCollegeName, bo.getCollegeName()); lqw.like(bo.getMajorName() != null, XgDormApplication::getMajorName, bo.getMajorName()); lqw.like(bo.getClassName() != null, XgDormApplication::getClassName, bo.getClassName()); @@ -169,8 +177,16 @@ public class XgStudentDynamicsServiceImpl implements IXgStudentDynamicsService { lqw.in(XgHolidayStay::getBuildingId, managedBuildingIds); // 添加其他查询条件 - lqw.like(bo.getStudentName() != null, XgHolidayStay::getStudentName, bo.getStudentName()); - lqw.like(bo.getStudentNo() != null, XgHolidayStay::getStudentNo, bo.getStudentNo()); + // 姓名或学号检索(OR关系) + if (bo.getStudentName() != null && bo.getStudentNo() != null) { + lqw.and(wrapper -> wrapper + .like(XgHolidayStay::getStudentName, bo.getStudentName()) + .or() + .like(XgHolidayStay::getStudentNo, bo.getStudentNo())); + } else { + lqw.like(bo.getStudentName() != null, XgHolidayStay::getStudentName, bo.getStudentName()); + lqw.like(bo.getStudentNo() != null, XgHolidayStay::getStudentNo, bo.getStudentNo()); + } lqw.like(bo.getCollegeName() != null, XgHolidayStay::getCollegeName, bo.getCollegeName()); lqw.like(bo.getMajorName() != null, XgHolidayStay::getMajorName, bo.getMajorName()); lqw.like(bo.getClassName() != null, XgHolidayStay::getClassName, bo.getClassName()); @@ -203,8 +219,16 @@ public class XgStudentDynamicsServiceImpl implements IXgStudentDynamicsService { lqw.in(XgStudentLeave::getStudentId, managedStudentIds); // 添加其他查询条件 - lqw.like(bo.getStudentName() != null, XgStudentLeave::getStudentName, bo.getStudentName()); - lqw.like(bo.getStudentNo() != null, XgStudentLeave::getStudentNo, bo.getStudentNo()); + // 姓名或学号检索(OR关系) + if (bo.getStudentName() != null && bo.getStudentNo() != null) { + lqw.and(wrapper -> wrapper + .like(XgStudentLeave::getStudentName, bo.getStudentName()) + .or() + .like(XgStudentLeave::getStudentNo, bo.getStudentNo())); + } else { + lqw.like(bo.getStudentName() != null, XgStudentLeave::getStudentName, bo.getStudentName()); + lqw.like(bo.getStudentNo() != null, XgStudentLeave::getStudentNo, bo.getStudentNo()); + } lqw.like(bo.getCollegeName() != null, XgStudentLeave::getCollegeName, bo.getCollegeName()); lqw.like(bo.getMajorName() != null, XgStudentLeave::getMajorName, bo.getMajorName()); lqw.like(bo.getClassName() != null, XgStudentLeave::getClassName, bo.getClassName()); diff --git a/mobile/src/App.vue b/mobile/src/App.vue index f7bcf2db..e793dbc5 100644 --- a/mobile/src/App.vue +++ b/mobile/src/App.vue @@ -150,6 +150,15 @@ page { border-color: #007dfb !important; } +/* Tabs组件主题色覆盖 - 全局统一底部方块颜色 */ +.u-tabs__wrapper__nav__line { + background-color: #0051d9 !important; +} + +.u-tabs .u-tabs__wrapper__nav__line { + background: #0051d9 !important; +} + /* ========== 全局温暖商务风格样式 ========== */ /* 全局页面背景 */ diff --git a/mobile/src/components/Process/approvalRecord.vue b/mobile/src/components/Process/approvalRecord.vue index 9f5074c4..fffb2380 100644 --- a/mobile/src/components/Process/approvalRecord.vue +++ b/mobile/src/components/Process/approvalRecord.vue @@ -73,18 +73,36 @@ 办理人: - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ item.studentName || '-' }} + {{ item.studentNo || '-' }} + + + + + + + + 学院: + {{ item.collegeName || '-' }} + + + 专业: + {{ item.majorName || '-' }} + + + 班级: + {{ item.className || '-' }} + + + 当前宿舍: + + {{ item.currentBuildingName }}{{ item.currentRoomNo + }}{{ item.currentBedNo }} + + + + 目标宿舍: + + {{ item.targetBuildingName }}{{ item.targetRoomNo + }}{{ item.targetBedNo }} + + + + 审批状态: + + + + 申请时间: + {{ formatTime(item.applyTime) }} + + + + + + + + 审批记录 + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/src/pages/xg/studentDynamics/components/HolidayStayTab.vue b/mobile/src/pages/xg/studentDynamics/components/HolidayStayTab.vue new file mode 100644 index 00000000..0c14da1c --- /dev/null +++ b/mobile/src/pages/xg/studentDynamics/components/HolidayStayTab.vue @@ -0,0 +1,392 @@ + + + + + diff --git a/mobile/src/pages/xg/studentDynamics/components/StudentLeaveTab.vue b/mobile/src/pages/xg/studentDynamics/components/StudentLeaveTab.vue new file mode 100644 index 00000000..99edfd39 --- /dev/null +++ b/mobile/src/pages/xg/studentDynamics/components/StudentLeaveTab.vue @@ -0,0 +1,435 @@ + + + + + diff --git a/mobile/src/pages/xg/studentDynamics/index.vue b/mobile/src/pages/xg/studentDynamics/index.vue new file mode 100644 index 00000000..4a16d080 --- /dev/null +++ b/mobile/src/pages/xg/studentDynamics/index.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/mobile/src/pages/xg/xsjcxx/xsws/stuMsgDetailDialog.vue b/mobile/src/pages/xg/xsjcxx/xsws/stuMsgDetailDialog.vue index b8b1c33e..c181ea34 100644 --- a/mobile/src/pages/xg/xsjcxx/xsws/stuMsgDetailDialog.vue +++ b/mobile/src/pages/xg/xsjcxx/xsws/stuMsgDetailDialog.vue @@ -17,7 +17,7 @@ :list="tabList" :current="safeCurrentTab" @click="handleTabClick" - active-color="#3c9cff" + active-color="#0051d9" inactive-color="#606266" :font-size="32" :bar-width="60"