diff --git a/src/api/base/jlApi.ts b/src/api/base/jlApi.ts new file mode 100644 index 0000000..2a68131 --- /dev/null +++ b/src/api/base/jlApi.ts @@ -0,0 +1,101 @@ +// 接龙相关API接口 +import { get, post } from "@/utils/request"; + +/** + * 根据年级ID和班级ID查询学生及家长信息 + */ +export const mobilejlstudentListApi = async (params: any) => { + return await get("/mobile/jl/studentList", params); +}; + +/** + * 根据年级ID、关联年级名称ID和学生ID查询家长接龙信息 + */ +export const mobilejllistApi = async (params: any) => { + const res = await get("/mobile/jl/list", params); + return res.result; +}; + +/** + * 根据jlId查询接龙列表数据 + */ +export const getByJlIdApi = async (params: any) => { + const res = await get("/mobile/jl/getByJlId", params); + return res.result; +}; + +/** + * 接龙统计API + */ +export const getJlStatisticsApi = async (params: any) => { + const res = await get("/mobile/jl/statistics", params); + return res.result; +}; + +/** + * 根据ID获取接龙详情 + */ +export const jlFindByIdApi = async (params: { id: string }) => { + return await get("/api/jl/findById", params); +}; + +/** + * 保存接龙(新增/编辑) + */ +export const jlSaveApi = async (params: any) => { + return await post("/api/jl/save", params); +}; + +/** + * 根据接龙ID查询接龙执行情况(学生列表) + */ +export const jlzxFindByJlParamsApi = async (params: { + jlId: string; + njId?: string; + njmcId?: string; + bjId?: string; +}) => { + return await get("/api/jlzx/findByJlParams", params); +}; + +/** + * 保存接龙消息推送 + */ +export const xxtsSaveByJlzxParamsApi = async (params: { jlId: string }) => { + return await post("/api/xxts/saveByJlzxParams", params); +}; + +/** + * 获取班级列表API + */ +export const getClassListApi = async () => { + const res = await get("/api/bj/findAll"); + return res.result; +}; + +/** + * 获取班级详情统计API + */ +export const getClassDetailApi = async (params: { jlId: string; njId: string }) => { + const res = await get("/mobile/jl/classDetail", params); + return res.result; +}; + +/** + * 获取接龙人员名单API + */ +export const getPersonnelListApi = async (params: { jlId: string; type: string; bjId?: string; njId?: string }) => { + const res = await get("/mobile/jl/personnelList", params); + return res.result; +}; + +/** + * 直接推送消息API(跳过验证和状态更新) + */ +export const pushMessageApi = async (params: { + jlId: string; + njId?: string; + bjId?: string; +}) => { + return await post("/api/jlzx/pushMessage", params); +}; \ No newline at end of file diff --git a/src/api/base/server.ts b/src/api/base/server.ts index ef59792..5b3d726 100644 --- a/src/api/base/server.ts +++ b/src/api/base/server.ts @@ -128,20 +128,6 @@ export const ksccKmFindByKsccIdApi = async (params: any) => { return await get("/api/kscc/findKsccKmmcById", params); }; -//根据年级ID和班级ID查询学生及家长信息 -export const mobilejlstudentListApi = async (params: any) => { - return await get("/mobile/jl/studentList", params); -}; -//根据年级ID、关联年级名称ID和学生ID查询家长接龙信息 -export const mobilejllistApi = async (params: any) => { - const res = await get("/mobile/jl/list", params); - return res.result; -}; -//根据jlId查询接龙列表数据 -export const getByJlIdApi = async (params: any) => { - const res = await get("/mobile/jl/getByJlId", params); - return res.result; -}; // 提交点名信息 export const jsdXkdmListApi = async (params: any) => { @@ -236,31 +222,6 @@ export const getJsPjGzlApi = async () => { return await get("/api/comConfig/getJsPjGzl"); }; -// 接龙相关API -// 根据ID获取接龙详情 -export const jlFindByIdApi = async (params: { id: string }) => { - return await get("/api/jl/findById", params); -}; - -// 保存接龙(新增/编辑) -export const jlSaveApi = async (params: any) => { - return await post("/api/jl/save", params); -}; - -// 根据接龙ID查询接龙执行情况(学生列表) -export const jlzxFindByJlParamsApi = async (params: { - jlId: string; - njId?: string; - njmcId?: string; - bjId?: string; -}) => { - return await get("/api/jlzx/findByJlParams", params); -}; - -// 保存接龙消息推送 -export const xxtsSaveByJlzxParamsApi = async (params: { jlId: string }) => { - return await post("/api/xxts/saveByJlzxParams", params); -}; /** * 获取当前学期和周次 diff --git a/src/pages.json b/src/pages.json index 8a831eb..abf0bfc 100644 --- a/src/pages.json +++ b/src/pages.json @@ -493,6 +493,34 @@ "enablePullDownRefresh": false } }, + { + "path": "pages/view/analysis/jl/statistics", + "style": { + "navigationBarTitleText": "接龙情况", + "enablePullDownRefresh": false + } + }, + { + "path": "pages/view/analysis/jl/classDetail", + "style": { + "navigationBarTitleText": "班级详情", + "enablePullDownRefresh": false + } + }, + { + "path": "pages/view/analysis/jl/personnelList", + "style": { + "navigationBarTitleText": "人员名单", + "enablePullDownRefresh": false + } + }, + { + "path": "pages/view/analysis/jl/index", + "style": { + "navigationBarTitleText": "接龙统计", + "enablePullDownRefresh": false + } + }, { "path": "pages/view/routine/RengJiaoRengZhi/index", "style": { @@ -790,3 +818,795 @@ ] } } + + { + + "path": "pages/view/hr/teacherProfile/ExperienceInfo", + + "style": { + + "navigationBarTitleText": "学习及工作经历", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/hr/teacherProfile/FamilyInfo", + + "style": { + + "navigationBarTitleText": "家庭成员情况", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/hr/teacherProfile/EmergencyContact", + + "style": { + + "navigationBarTitleText": "紧急联系人", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/JiFenPingJia/PersonalHonor", + + "style": { + + "navigationBarTitleText": "个人荣誉", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/JiFenPingJia/PublicClassAwards", + + "style": { + + "navigationBarTitleText": "公开课获奖", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/hr/teacherProfile/RecordMaterials", + + "style": { + + "navigationBarTitleText": "备案资料", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/hr/salarySlip/detail", + + "style": { + + "navigationBarTitleText": "工资条详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/homeSchool/parentAddressBook/index", + + "style": { + + "navigationBarTitleText": "家长通讯录", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/homeSchool/parentAddressBook/detail", + + "style": { + + "navigationBarTitleText": "学生详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/notice/index", + + "style": { + + "navigationBarTitleText": "发布接龙", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/notice/detail", + + "style": { + + "navigationBarTitleText": "接龙详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/notice/publish", + + "style": { + + "navigationBarTitleText": "接龙推送", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/notice/push-list", + + "style": { + + "navigationBarTitleText": "推送清单", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/notice/selectStudents", + + "style": { + + "navigationBarTitleText": "选择学生", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/RengJiaoRengZhi/index", + + "style": { + + "navigationBarTitleText": "任教任职", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/GongZuoLiang/index", + + "style": { + + "navigationBarTitleText": "工作量", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/xkList", + + "style": { + + "navigationBarTitleText": "选课列表", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/xkkcDetail", + + "style": { + + "navigationBarTitleText": "选课课程详情" + + } + + }, + + { + + "path": "pages/view/routine/xk/dmIndex", + + "style": { + + "navigationBarTitleText": "点名选课列表" + + } + + }, + + { + + "path": "pages/view/routine/xk/dm", + + "style": { + + "navigationBarTitleText": "学生点名", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/dmList", + + "style": { + + "navigationBarTitleText": "点名列表", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/dmXsList", + + "style": { + + "navigationBarTitleText": "点名学生列表", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/tf/detail", + + "style": { + + "navigationBarTitleText": "选课退费详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/xk/tf/sp", + + "style": { + + "navigationBarTitleText": "选课退费审批", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/kefuxuncha/xcRecord", + + "style": { + + "navigationBarTitleText": "选课巡查记录" + + } + + }, + + { + + "path": "pages/view/routine/kefuxuncha/kyRecord", + + "style": { + + "navigationBarTitleText": "课业巡查记录" + + } + + }, + + { + + "path": "pages/base/xs/qj/sp", + + "style": { + + "navigationBarTitleText": "学生请假审批", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/base/xs/qj/detail", + + "style": { + + "navigationBarTitleText": "学生请假详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/analysis/xs/studentArchive", + + "style": { + + "navigationBarTitleText": "学生档案", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/analysis/xk/xkCourse", + + "style": { + + "navigationBarTitleText": "课程明单", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/analysis/xk/xkList", + + "style": { + + "navigationBarTitleText": "选课清单", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/analysis/xk/dmStatistics", + + "style": { + + "navigationBarTitleText": "点名统计", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/analysis/xk/dmXkList", + + "style": { + + "navigationBarTitleText": "点名选课列表", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/routine/qd/index", + + "style": { + + "navigationBarTitleText": "签到发布" + + } + + }, + + { + + "path": "pages/view/routine/qd/publish", + + "style": { + + "navigationBarTitleText": "新增签到" + + } + + }, + + { + + "path": "pages/view/routine/qd/push-list", + + "style": { + + "navigationBarTitleText": "推送清单" + + } + + }, + + { + + "path": "pages/view/routine/qd/detail", + + "style": { + + "navigationBarTitleText": "签到详情" + + } + + }, + + { + + "path": "pages/view/routine/qd/selectTeachers", + + "style": { + + "navigationBarTitleText": "选择教师" + + } + + }, + + { + + "path": "pages/view/routine/qd/qr-code", + + "style": { + + "navigationBarTitleText": "签到二维码", + + "navigationStyle": "custom" + + } + + }, + + { + + "path": "pages/view/routine/qd/confirm", + + "style": { + + "navigationBarTitleText": "确认签到", + + "navigationStyle": "custom" + + } + + }, + + { + + "path": "pages/view/routine/JiaoXueZiYuan/add-resource", + + "style": { + + "navigationBarTitleText": "上传资源", + + "enablePullDownRefresh": false, + + "navigationBarBackgroundColor": "#ffffff", + + "navigationBarTextStyle": "black", + + "backgroundColor": "#f4f5f7" + + } + + }, + + { + + "path": "pages/view/routine/jc/bzList", + + "style": { + + "navigationBarTitleText": "就餐标准列表" + + } + + }, + + { + + "path": "pages/view/routine/jc/index", + + "style": { + + "navigationBarTitleText": "就餐点名" + + } + + }, + + { + + "path": "pages/view/routine/jc/detail", + + "style": { + + "navigationBarTitleText": "就餐点名详情" + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/assessment/assessment", + + "style": { + + "navigationBarTitleText": "考核评价", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/casualShot/casualShot", + + "style": { + + "navigationBarTitleText": "随手拍", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/distribute/distribute", + + "style": { + + "navigationBarTitleText": "分配", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/index/index", + + "style": { + + "navigationBarTitleText": "量化考核首页", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/index/details", + + "style": { + + "navigationBarTitleText": "量化考核详情", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/quantitativeSummary/quantitativeSummary", + + "style": { + + "navigationBarTitleText": "量化汇总", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/index/noticeAnnouncement", + + "style": { + + "navigationBarTitleText": "通知公告", + + "enablePullDownRefresh": false + + } + + }, + + { + + "path": "pages/view/quantitativeAssessment/index/playPage", + + "style": { + + "navigationBarTitleText": "播放页面", + + "enablePullDownRefresh": false + + } + + } + + ], + + "globalStyle": { + + "navigationBarTextStyle": "black", + + "navigationBarTitleText": "uni-app", + + "navigationBarBackgroundColor": "#fff", + + "backgroundColor": "#F8F8F8", + + "orientation": "portrait", + + "navigationStyle": "custom", + + "app-plus": { + + "background": "#efeff4", + + "titleView": false + + } + + }, + + "tabBar": { + + "selectedColor": "#447ade", + + "color": "#999999", + + "borderStyle": "black", + + "backgroundColor": "#ffffff", + + "list": [ + + { + + "text": "消息", + + "pagePath": "pages/base/message/index", + + "iconPath": "static/tabBar/x1.png", + + "selectedIconPath": "static/tabBar/1.png" + + }, + + { + + "text": "自助服务", + + "pagePath": "pages/base/service/index", + + "iconPath": "static/tabBar/x2.png", + + "selectedIconPath": "static/tabBar/2.png" + + }, + + { + + "text": "我的", + + "pagePath": "pages/base/mine/index", + + "iconPath": "static/tabBar/x3.png", + + "selectedIconPath": "static/tabBar/3.png" + + } + + ] + + } + +} + + diff --git a/src/pages/base/service/index.vue b/src/pages/base/service/index.vue index 5b7c155..7dd7070 100644 --- a/src/pages/base/service/index.vue +++ b/src/pages/base/service/index.vue @@ -320,6 +320,14 @@ const sections = reactive([ permissionKey: "routine-bjjl", // 发布接龙权限编码 path: "/pages/view/notice/index", }, + { + id: "r13", + icon: "jltj", + text: "接龙统计", + show: true, + permissionKey: "routine-jltj", // 接龙统计权限编码 + path: "/pages/view/analysis/jl/index", + }, { id: "hs4", icon: "xsda", diff --git a/src/pages/view/analysis/jl/classDetail.vue b/src/pages/view/analysis/jl/classDetail.vue new file mode 100644 index 0000000..d4c7a1c --- /dev/null +++ b/src/pages/view/analysis/jl/classDetail.vue @@ -0,0 +1,290 @@ + + + + + + diff --git a/src/pages/view/analysis/jl/index.vue b/src/pages/view/analysis/jl/index.vue new file mode 100644 index 0000000..e17e741 --- /dev/null +++ b/src/pages/view/analysis/jl/index.vue @@ -0,0 +1,341 @@ + + + + + + diff --git a/src/pages/view/analysis/jl/personnelList.vue b/src/pages/view/analysis/jl/personnelList.vue new file mode 100644 index 0000000..b92495f --- /dev/null +++ b/src/pages/view/analysis/jl/personnelList.vue @@ -0,0 +1,437 @@ + + + + + + diff --git a/src/pages/view/analysis/jl/statistics.vue b/src/pages/view/analysis/jl/statistics.vue new file mode 100644 index 0000000..e831797 --- /dev/null +++ b/src/pages/view/analysis/jl/statistics.vue @@ -0,0 +1,410 @@ + + + + + + diff --git a/src/pages/view/hr/jsQj/components/jsQjEdit.vue b/src/pages/view/hr/jsQj/components/jsQjEdit.vue index b8a8ea1..8e2a53a 100644 --- a/src/pages/view/hr/jsQj/components/jsQjEdit.vue +++ b/src/pages/view/hr/jsQj/components/jsQjEdit.vue @@ -129,7 +129,7 @@ const [register, { setValue, getValue }] = useForm({ field: "fileUrl", label: "上传附件", component: "BasicUpload", - required: true, + required: false, itemProps: { labelPosition: "top", }, diff --git a/src/pages/view/notice/detail.vue b/src/pages/view/notice/detail.vue index 774fdf1..1fa5e05 100644 --- a/src/pages/view/notice/detail.vue +++ b/src/pages/view/notice/detail.vue @@ -182,7 +182,8 @@ @@ -696,6 +736,48 @@ onMounted(async () => { } } +.inspection-time-info { + margin-top: 15px; + padding: 10px 15px; + background-color: #f0f8ff; + border-radius: 4px; + border: 1px solid #d6e4ff; + + .time-item { + display: flex; + align-items: center; + + .time-label { + font-size: 14px; + color: #666; + margin-left: 5px; + margin-right: 5px; + } + + .time-value { + font-size: 14px; + color: #4080ff; + font-weight: 500; + } + } +} + +.inspection-status { + display: flex; + align-items: center; + margin-top: 15px; + padding: 10px 15px; + background-color: #fffbe6; + border: 1px solid #ffe58f; + border-radius: 4px; + color: #faad14; + font-size: 14px; + + .status-text { + margin-left: 5px; + } +} + .teacher-selection-info { margin-top: 15px; padding: 10px 15px; diff --git a/src/pages/view/rw/detail.vue b/src/pages/view/rw/detail.vue new file mode 100644 index 0000000..43f1baa --- /dev/null +++ b/src/pages/view/rw/detail.vue @@ -0,0 +1,273 @@ + + + + + + diff --git a/src/pages/view/rw/index.vue b/src/pages/view/rw/index.vue new file mode 100644 index 0000000..43f1baa --- /dev/null +++ b/src/pages/view/rw/index.vue @@ -0,0 +1,273 @@ + + + + + + diff --git a/src/static/base/home/jltj.png b/src/static/base/home/jltj.png new file mode 100644 index 0000000..e9b14dd Binary files /dev/null and b/src/static/base/home/jltj.png differ