From c905ac15cc51e5899341c41d86c2a092c0c63e37 Mon Sep 17 00:00:00 2001
From: dyy <807692433@qq.com>
Date: Mon, 24 Apr 2023 14:44:57 +0800
Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=A2=9E=E5=8A=A0=E3=80=91=E6=95=99?=
=?UTF-8?q?=E5=B8=88=EF=BC=9A=E9=80=89=E4=BF=AE=E4=BA=8C=E6=AC=A1=E8=A1=A5?=
=?UTF-8?q?=E8=80=83=E6=88=90=E7=BB=A9=E5=BD=95=E5=85=A5=EF=BC=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../InputScoreIndexOfElectiveInTeacher.cshtml | 118 ++++
.../InputScoreIndexOfElectiveInTeacher.js | 547 ++++++++++++++++++
.../Learun.Application.Web.csproj | 2 +
3 files changed, 667 insertions(+)
create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.cshtml
create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.js
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.cshtml
new file mode 100644
index 000000000..fc8b579be
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.cshtml
@@ -0,0 +1,118 @@
+@{ ViewBag.Title = "全院学生选修二次补考成绩录入(新)"; Layout = "~/Views/Shared/_Index.cshtml"; }
+
+
+@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.js")
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.js
new file mode 100644
index 000000000..57371accf
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuScoreNotPassTwo/InputScoreIndexOfElectiveInTeacher.js
@@ -0,0 +1,547 @@
+/* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn)
+ * Copyright (c) 2013-2018 北京泉江科技有限公司
+ * 创建人:超级管理员
+ * 日 期:2019-06-14 11:02
+ * 描 述:全院学生选修二次补考成绩录入(新)
+ */
+var selectedRow;
+var refreshGirdData;
+var refreshGirdData2;
+var judgeSelect; //判断下拉框是否选择
+var modifyDate; //成绩被占用,且是登录用户时,成绩表中的编辑时间;
+var timer; //计时器
+var submitScoreTimer; //五分钟提交成绩计时器
+var headData; //常规列头
+var headDataEdit; //可编辑列头
+var headDataNoEdit; //不可编辑列头
+var headDataFinally; //最终列头
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ headData = [
+ {
+ label: "审核状态", name: "CheckMark", width: 80, align: "center",
+ formatter: function (cellvalue) {
+ return cellvalue == "1" ? "已审核" : "未审核";
+ }
+ },
+ { label: '学号', name: 'StuNo', width: 100, align: "left" },
+ { label: '姓名', name: 'StuName', width: 150, align: "left" },
+ {
+ label: "性别", name: "GenderNo", width: 35, align: "left",
+ formatter: function (cellvalue) {
+ return cellvalue == true ? "男" : "女";
+ }
+ },
+ {
+ label: "学习形式", name: "StudyModality", width: 75, align: "left", formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'StudyModality',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "异动类型", name: "MoveType", width: 55, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'StuChangeType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "校区", name: "F_SchoolId", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'company',
+ key: value,
+ keyId: 'f_companyid',
+ callback: function (_data) {
+ callback(_data['f_fullname']);
+ }
+ });
+ }
+ },
+ {
+ label: "系所", name: "DeptNo", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdDeptInfo',
+ key: value,
+ keyId: 'deptno',
+ callback: function (_data) {
+ callback(_data['deptname']);
+ }
+ });
+ }
+ },
+ {
+ label: "专业", name: "MajorNo", width: 120, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdMajorInfo',
+ key: value,
+ keyId: 'majorno',
+ callback: function (_data) {
+ callback(_data['majorname']);
+ }
+ });
+ }
+ },
+ { label: "年级", name: "Grade", width: 35, align: "left" },
+ { label: '学年', name: 'AcademicYearNo', width: 50, align: "left" },
+ { label: '学期', name: 'Semester', width: 35, align: "left" },
+ { label: '课程名称', name: 'LessonName', width: 150, align: "left" },
+ //{
+ // label: '课程名称', name: 'LessonNo', width: 150, align: "left",
+ // formatterAsync: function (callback, value, row, op, $cell) {
+ // learun.clientdata.getAsync('custmerData', {
+ // url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'LessonInfo',
+ // key: value,
+ // keyId: 'lessonno',
+ // callback: function (_data) {
+ // callback(_data['lessonname']);
+ // }
+ // });
+ // }
+ //},
+ {
+ label: '教室名称', name: 'ClassRoomNo', width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'ClassRoomInfo',
+ key: value,
+ keyId: 'classroomno',
+ callback: function (_data) {
+ callback(_data['classroomname']);
+ }
+ });
+ }
+ },
+ { label: '节次', name: 'LessonSection', width: 60, align: "left" },
+ ];
+ headDataEdit = [
+ {
+ label: '补考成绩', name: 'TermEndScore', width: 80, align: "left",
+ edit: {
+ type: 'input',
+ inputType: 'number',
+ change: function (row, rownum) {
+ row.Score = (parseFloat(row.TermEndScore || '0') * 1) >= 60 ? 60 : (parseFloat(row.TermEndScore || '0') * 1).toFixed(0);
+ $('#gridtable').jfGridSet('updateRow', rownum);
+ },
+ }
+ },
+ { label: '总成绩', name: 'Score', width: 80, align: "left" },
+ {
+ label: '备注', name: 'Remark', width: 100, align: "left",
+ edit: {
+ type: 'input',
+ }
+ },
+ ];
+ headDataNoEdit = [
+ {
+ label: '期末成绩', name: 'TermEndScore', width: 80, align: "left"
+ },
+ { label: '总成绩', name: 'Score', width: 80, align: "left" },
+ {
+ label: '备注', name: 'Remark', width: 100, align: "left"
+ },
+ ];
+ headDataFinally = headData.concat(headDataNoEdit);
+
+ page.initGird();
+ page.bind();
+ page.bindSelect();
+ },
+ bind: function () {
+ //多条件选择
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 220, 500);
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ //查询
+ $('#btn_Search').on('click', function () {
+ refreshGirdData2();
+ });
+ // 开始录入
+ $('#lr_input').on('click', function () {
+ //提示弹框
+ learun.layerConfirm('录入完成后,请务必点击“提交成绩”按钮,避免成绩丢失!', function (res) {
+ if (res) {
+
+ var query = judgeSelect();
+ if (query) {
+ //判断是否已审核;判断是否被其他教师占用
+ $.lrSetForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetEntityByJson?queryJson=' + JSON.stringify(query), function (data) {
+ if (data != null) {
+ if (data.CheckMark == 1) {
+ learun.alert.warning("学生成绩已审核!");
+ return false;
+ }
+ if (data.IsEditable == 0) {
+ if (data.EditUserId == learun.clientdata.get(['userinfo']).account) {
+ modifyDate = data.ModifyDate;
+ } else {
+ learun.alert.warning("当前班级成绩由账号为" + data.EditUserId + "的教师在使用!");
+ return false;
+ }
+ } else {
+ //占用成绩
+ learun.postFormSilence(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/StartInputScore', { queryJson: JSON.stringify(query) }, function (res) { });
+ }
+ //显示可编辑列头
+ headDataFinally = headData.concat(headDataEdit);
+ $("#gridtable")[0].dfop = undefined;
+ page.initGird();
+ page.search(query);
+ //显示“提交成绩”按钮
+ $('#lr_save').show();
+ //隐藏“开始录入”按钮
+ $('#lr_input').hide();
+ //显示“倒计时”
+ $('.timeBox').show();
+ $('#minutes').html($('#minutes').attr('data-minutes'));
+ //开始倒计时
+ page.countDown();
+ //五分钟提交成绩
+ page.submitScore();
+ } else {
+ learun.alert.warning("学生成绩不存在!");
+ return false;
+ }
+ });
+ }
+
+ }
+ });
+ });
+ //提交成绩
+ $('#lr_save').on('click', function () {
+ var query = judgeSelect();
+ if (query) {
+ //成绩被占用,且是登录用户时,根据编辑时间判断是否是本人;
+ $.lrSetForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetEntityByJson?queryJson=' + JSON.stringify(query), function (data) {
+ if (data != null) {
+ if (data.CheckMark == 1) {
+ learun.alert.warning("学生成绩已审核!");
+ return false;
+ }
+ if (data.IsEditable == 0) {
+ if (data.EditUserId == learun.clientdata.get(['userinfo']).account) {
+ if (modifyDate != null && modifyDate != data.ModifyDate) {
+ learun.alert.warning("当前班级成绩被修改,请重新获取!");
+ return false;
+ }
+ } else {
+ learun.alert.warning("当前班级成绩由账号为" + data.EditUserId + "的教师在使用!");
+ return false;
+ }
+ } else if (data.IsEditable == 1) {
+ learun.alert.warning("学生成绩已提交!");
+ return false;
+ }
+ //提交成绩
+ var rowdatas = $('#gridtable').jfGridGet('rowdatas');
+ learun.postFormSilence(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/SaveInputScore', { data: JSON.stringify(rowdatas) }, function (res) {
+ if (res.code == 200) {
+ //提交成绩:取消占用
+ learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/SaveInputScoreStatus', { queryJson: JSON.stringify(query) }, function (res) {
+ if (res.code == 200) {
+ refreshGirdData2();
+ modifyDate = null;
+ //隐藏“提交成绩”按钮
+ $('#lr_save').hide();
+ //显示“开始录入”按钮
+ $('#lr_input').show();
+ //隐藏“倒计时”
+ $('.timeBox').hide();
+ //停止倒计时
+ clearInterval(timer);
+ //停止五分钟提交成绩
+ clearInterval(submitScoreTimer);
+ } else {
+ learun.alert.warning("提交成绩:取消占用失败!");
+ return false;
+ }
+ });
+ } else {
+ learun.alert.warning("提交成绩失败!");
+ return false;
+ }
+ });
+
+ } else {
+ learun.alert.warning("学生成绩不存在!");
+ return false;
+ }
+ });
+ }
+ });
+ // 审核
+ $('#lr_check').on('click', function () {
+ var query = judgeSelect();
+ if (query) {
+ $.lrSetForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetEntityByJson?queryJson=' + JSON.stringify(query), function (data) {
+ if (data != null) {
+ if (data.CheckMark == 1) {
+ learun.alert.warning("学生成绩已审核!");
+ return false;
+ }
+ learun.layerConfirm('是否确认审核当前班级的学生成绩!', function (res) {
+ if (res) {
+ //审核成绩
+ learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/DoCheckScore', { queryJson: JSON.stringify(query), checkMark: 1 }, function (res) {
+ if (res.code == 200) {
+ refreshGirdData2();
+ } else {
+ learun.alert.warning("审核成绩失败!");
+ return false;
+ }
+ });
+ }
+ });
+ } else {
+ learun.alert.warning("学生成绩不存在!");
+ return false;
+ }
+ });
+ }
+ });
+ // 去审核
+ $('#lr_uncheck').on('click', function () {
+ var query = judgeSelect();
+ if (query) {
+ $.lrSetForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetEntityByJson?queryJson=' + JSON.stringify(query), function (data) {
+ if (data != null) {
+ if (data.CheckMark != 1) {
+ learun.alert.warning("学生成绩未审核!");
+ return false;
+ }
+ learun.layerConfirm('是否确认去审核当前班级的学生成绩!', function (res) {
+ if (res) {
+ //去审核成绩
+ learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/DoCheckScore', { queryJson: JSON.stringify(query), checkMark: 0 }, function (res) {
+ if (res.code == 200) {
+ refreshGirdData2();
+ } else {
+ learun.alert.warning("去审核成绩失败!");
+ return false;
+ }
+ });
+ }
+ });
+ } else {
+ learun.alert.warning("学生成绩不存在!");
+ return false;
+ }
+ });
+ }
+ });
+ //续时
+ $('#addMinutesBtn').on('click', function () {
+ var query = judgeSelect();
+ if (query) {
+ clearInterval(timer);
+ var addMinutes = $('#addMinutesBtn').attr('data-minutes');
+ var newMinutes = addMinutes;
+ var minutes = $('#minutes').html();
+ if (minutes > 0) {
+ newMinutes = Number(newMinutes) + Number(minutes);
+ }
+ $('#minutes').html(newMinutes);
+ page.countDown();
+ //修改服务时间
+ learun.postFormSilence(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/AddMinutes', { queryJson: JSON.stringify(query), minutes: newMinutes }, function (res) { });
+ }
+ });
+ },
+ bindSelect: function () {
+ //校区
+ $('#F_SchoolId').lrDataSourceSelect({
+ code: 'company', value: 'f_companyid', text: 'f_fullname', select: function (item) { }
+ });
+ $('#F_SchoolId').lrselectSet(learun.clientdata.get(['userinfo']).companyId);
+ //学年
+ $('#AcademicYearNo').lrselect({
+ placeholder: "学年",
+ allowSearch: false,
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetAcademicYearNoData',
+ value: 'value',
+ text: 'text',
+ select: function (item) {
+ if (!!item) {
+ $("#LessonNo").lrselectRefresh({
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveLessonNoDataWithNo?AcademicYearShort=' + item.value + '&Semester=' + $('#Semester').lrselectGet(),
+ });
+ }
+ }
+ });
+ //学期
+ $('#Semester').lrselect({
+ placeholder: "学期",
+ allowSearch: false,
+ url: top.$.rootUrl + '/EducationalAdministration/StuScore/GetSemesterData',
+ value: 'value',
+ text: 'text',
+ select: function (item) {
+ if (!!item) {
+ $("#LessonNo").lrselectRefresh({
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveLessonNoDataWithNo?AcademicYearShort=' + $('#AcademicYearNo').lrselectGet() + '&Semester=' + item.value,
+ });
+ }
+ }
+ });
+ //课程
+ $('#LessonNo').lrselect({
+ placeholder: "请选择课程",
+ allowSearch: true,
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveLessonNoDataWithNo',
+ value: 'value',
+ text: 'text',
+ select: function (item) {
+ if (!!item) {
+ $("#ClassRoomNo").lrselectRefresh({
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveClassRoomNoData?lessonNo=' + item.value,
+ });
+ }
+ }
+ });
+ //教室
+ $('#ClassRoomNo').lrselect({
+ placeholder: "请选择教室",
+ allowSearch: true,
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveClassRoomNoData',
+ value: 'value',
+ text: 'text',
+ select: function (item) {
+ if (!!item) {
+ $("#LessonSection").lrselectRefresh({
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveLessonSectionData?classRoomNo=' + item.value,
+ });
+ }
+ }
+ });
+ //节次
+ $('#LessonSection').lrselect({
+ placeholder: "请选择节次",
+ allowSearch: true,
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetElectiveLessonSectionData',
+ value: 'value',
+ text: 'text'
+ });
+ //绑定学年、学期
+ $.get('/Home/GetYearAndSemesteResult', function (ref) {
+ if (ref.code == "200") {
+ $('#AcademicYearNo').lrselectSet(ref.data.Item1);
+ $('#Semester').lrselectSet(ref.data.Item3);
+ }
+ }.bind(this), "json");
+ },
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/GetList',
+ headData: headDataFinally,
+ mainId: 'ScoreId',
+ isPage: false,
+ sidx: 'StuNo',
+ sord: 'asc'
+ });
+ //page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ },
+ countDown: function () {
+ var minutes = $('#minutes').html();
+ var minutesTemp = minutes;
+ var seconds = $('#seconds').attr('data-seconds');
+ $('#seconds').html(seconds);
+ var secondsTemp = seconds;
+ timer = setInterval(function () {
+ secondsTemp--;
+ $('#seconds').html(secondsTemp);
+ if (secondsTemp == 0) {
+ secondsTemp = seconds;
+ minutesTemp--;
+ $('#minutes').html(minutesTemp);
+ if (minutesTemp == 0) {
+ //停止倒计时
+ clearInterval(timer);
+ //自动提交成绩
+ $('#lr_save').trigger("click");
+ }
+ }
+ }, 1000);
+ },
+ submitScore: function () {
+ submitScoreTimer = setInterval(function () {
+ var rowdatas = $('#gridtable').jfGridGet('rowdatas');
+ learun.postFormSilence(top.$.rootUrl + '/EducationalAdministration/StuScoreNotPassTwo/SaveInputScore', { data: JSON.stringify(rowdatas) }, function (res) {
+ });
+ }, 300000);
+ },
+ };
+ refreshGirdData = function () {
+ page.search();
+ };
+ refreshGirdData2 = function () {
+ var query = judgeSelect();
+ if (query) {
+ //显示不可编辑列头
+ headDataFinally = headData.concat(headDataNoEdit);
+ $("#gridtable")[0].dfop = undefined;
+ page.initGird();
+
+ page.search(query);
+ }
+ };
+ judgeSelect = function () {
+ if (CanInputFlag != "True") {
+ top.learun.layerConfirm('当前时间不是选修重考成绩录入时间!', function (res) { });
+ return false;
+ }
+
+ var $content = $('body').find('.lr-layout-tool-left');
+ var query = $content.lrGetFormData();
+ if (query.F_SchoolId == null || query.F_SchoolId == "") {
+ learun.alert.warning("请选择校区!");
+ return false;
+ }
+ if (query.AcademicYearNo == null || query.AcademicYearNo == "") {
+ learun.alert.warning("请选择学年!");
+ return false;
+ }
+ if (query.Semester == null || query.Semester == "") {
+ learun.alert.warning("请选择学期!");
+ return false;
+ }
+ if (query.LessonNo == null || query.LessonNo == "") {
+ learun.alert.warning("请选择课程!");
+ return false;
+ }
+ if (query.ClassRoomNo == null || query.ClassRoomNo == "") {
+ learun.alert.warning("请选择教室!");
+ return false;
+ }
+ if (query.LessonSection == null || query.LessonSection == "") {
+ learun.alert.warning("请选择节次!");
+ return false;
+ }
+ return query;
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
index 41cae9df2..4731e85da 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
@@ -1004,6 +1004,7 @@
+
@@ -8146,6 +8147,7 @@
+