@@ -7,6 +7,7 @@ using System.Linq; | |||
using System; | |||
using Newtonsoft.Json.Linq; | |||
using Newtonsoft.Json; | |||
using Learun.Application.WorkFlow; | |||
namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||
{ | |||
@@ -22,6 +23,7 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||
private ArrangeLessonTermAttemperIBLL arrangeLessonTermAttemperIBLL = new ArrangeLessonTermAttemperBLL(); | |||
private ArrangeLessonTermAttemperChildIBLL arrangeLessonTermAttemperChildIBLL = new ArrangeLessonTermAttemperChildBLL(); | |||
private ArrangeLessonTermIBLL arrangeLessonTermIBLL = new ArrangeLessonTermBLL(); | |||
private NWFProcessIBLL nWFProcessIBLL = new NWFProcessBLL(); | |||
#region 视图功能 | |||
/// <summary> | |||
@@ -233,6 +235,32 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||
arrangeLessonTermAttemperIBLL.ModifyStatus(keyValue, status, processId); | |||
return Success("提交成功!"); | |||
} | |||
public ActionResult ModifyStatuss(string keyValue, int status, string processId) | |||
{ | |||
var gids = arrangeLessonTermAttemperIBLL.ModifyStatuss(keyValue, status, processId); | |||
if (gids.Any()) | |||
{ | |||
var userInfo = LoginUserInfo.Get(); | |||
var schemeCode = "ArrangeLessonTermAttemper"; | |||
var level = 1; | |||
foreach (var gid in gids) | |||
{ | |||
try | |||
{ | |||
nWFProcessIBLL.CreateFlow(schemeCode, gid, "", level, "", userInfo); | |||
//return Success("流程创建成功"); | |||
} | |||
catch (System.Exception ex) | |||
{ | |||
nWFProcessIBLL.SaveDraft(gid, schemeCode, userInfo); | |||
//return Fail(ex.Message); | |||
} | |||
} | |||
} | |||
return Success("提交成功!"); | |||
} | |||
#endregion | |||
} | |||
} |
@@ -133,7 +133,7 @@ var bootstrap = function ($, learun) { | |||
learun.layerConfirm('是否确认提交该项!', function (res) { | |||
if (res) { | |||
processId = learun.newGuid(); | |||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/ArrangeLessonTermAttemper/ModifyStatus', { keyValue: keyValue, status: 1, processId: processId }, function (res) { | |||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/ArrangeLessonTermAttemper/ModifyStatuss', { keyValue: keyValue, status: 1, processId: processId }, function (res) { | |||
//selectedRow.ProcessId = processId; | |||
refreshGirdData(res, {}); | |||
}); | |||
@@ -5,6 +5,7 @@ | |||
* 描 述:教师信息管理 | |||
*/ | |||
var refreshGirdData; | |||
var qJson; | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
@@ -14,6 +15,7 @@ var bootstrap = function ($, learun) { | |||
}, | |||
bind: function () { | |||
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) { | |||
qJson = queryJson; | |||
page.search(queryJson); | |||
}, 350, 550); | |||
//$('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' }); | |||
@@ -716,7 +718,7 @@ var bootstrap = function ($, learun) { | |||
} | |||
}; | |||
refreshGirdData = function () { | |||
page.search(); | |||
page.search(qJson); | |||
}; | |||
page.init(); | |||
} |
@@ -126,13 +126,31 @@ var bootstrap = function ($, learun) { | |||
// }); | |||
// } | |||
//}, | |||
//{ | |||
// label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
// return cellvalue == true ? "是" : "否"; | |||
// } | |||
//}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
label: '是否缓考', name: 'IsSlow', width: 100, align: "left", | |||
edit: { | |||
type: 'select', | |||
init: function (data, $edit) {// 在点击单元格的时候触发,可以用来初始化输入控件,行数据和控件对象 | |||
}, | |||
change: function (row, num, item) {// 行数据和行号,下拉框选中数据 | |||
}, | |||
op: {// 下拉框设置参数 和 lrselect一致 | |||
data: [ | |||
{ 'id': true, 'text': '是' }, | |||
{ 'id': false, 'text': '否' }, | |||
] | |||
} | |||
} | |||
}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '平时成绩', name: 'OrdinaryScore', width: 80, align: "left", | |||
edit: { | |||
@@ -186,6 +204,11 @@ var bootstrap = function ($, learun) { | |||
}, | |||
]; | |||
headDataNoEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
} | |||
}, | |||
{ | |||
label: '平时成绩', name: 'OrdinaryScore', width: 80, align: "left" | |||
}, | |||
@@ -132,13 +132,31 @@ var bootstrap = function ($, learun) { | |||
// }); | |||
// } | |||
//}, | |||
//{ | |||
// label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
// return cellvalue == true ? "是" : "否"; | |||
// } | |||
//}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
label: '是否缓考', name: 'IsSlow', width: 100, align: "left", | |||
edit: { | |||
type: 'select', | |||
init: function (data, $edit) {// 在点击单元格的时候触发,可以用来初始化输入控件,行数据和控件对象 | |||
}, | |||
change: function (row, num, item) {// 行数据和行号,下拉框选中数据 | |||
}, | |||
op: {// 下拉框设置参数 和 lrselect一致 | |||
data: [ | |||
{ 'id': true, 'text': '是' }, | |||
{ 'id': false, 'text': '否' }, | |||
] | |||
} | |||
} | |||
}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '平时成绩', name: 'OrdinaryScore', width: 80, align: "left", | |||
edit: { | |||
@@ -204,6 +222,11 @@ var bootstrap = function ($, learun) { | |||
}, | |||
]; | |||
headDataNoEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
} | |||
}, | |||
{ | |||
label: '平时成绩', name: 'OrdinaryScore', width: 80, align: "left" | |||
}, | |||
@@ -34,10 +34,15 @@ | |||
<div class="lr-form-item-title">课程</div> | |||
<div id="LessonNo"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="col-xs-6 lr-form-item"> | |||
<div class="lr-form-item-title">班级</div> | |||
<div id="ClassNo"></div> | |||
</div> | |||
<div class="col-xs-6 lr-form-item"> | |||
<div class="lr-form-item-title">缓考</div> | |||
<div id="IsSlow"></div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -83,6 +83,7 @@ var bootstrap = function ($, learun) { | |||
allowSearch: true, | |||
code: 'LessonInfo', value: 'lessonno', text: 'lessonname' | |||
}); | |||
$('#IsSlow').lrDataItemSelect({ code: 'YesOrNoInt' }); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
@@ -152,6 +153,11 @@ var bootstrap = function ($, learun) { | |||
}); | |||
} | |||
}, | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
} | |||
}, | |||
], | |||
mainId: 'ID', | |||
isPage: true, | |||
@@ -126,15 +126,33 @@ var bootstrap = function ($, learun) { | |||
// }); | |||
// } | |||
//}, | |||
//{ | |||
// label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
// return cellvalue == true ? "是" : "否"; | |||
// } | |||
//}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", | |||
edit: { | |||
type: 'select', | |||
init: function (data, $edit) {// 在点击单元格的时候触发,可以用来初始化输入控件,行数据和控件对象 | |||
}, | |||
change: function (row, num, item) {// 行数据和行号,下拉框选中数据 | |||
}, | |||
op: {// 下拉框设置参数 和 lrselect一致 | |||
data: [ | |||
{ 'id': true, 'text': '是' }, | |||
{ 'id': false, 'text': '否' }, | |||
] | |||
} | |||
} | |||
}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '补考成绩', name: 'TermEndScore', width: 80, align: "left", | |||
label: '补考成绩', name: 'TermEndScore', width: 100, align: "left", | |||
edit: { | |||
type: 'input', | |||
inputType: 'number', | |||
@@ -153,6 +171,11 @@ var bootstrap = function ($, learun) { | |||
}, | |||
]; | |||
headDataNoEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
} | |||
}, | |||
{ | |||
label: '期末成绩', name: 'TermEndScore', width: 80, align: "left" | |||
}, | |||
@@ -131,13 +131,31 @@ var bootstrap = function ($, learun) { | |||
// }); | |||
// } | |||
//}, | |||
//{ | |||
// label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
// return cellvalue == true ? "是" : "否"; | |||
// } | |||
//}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
label: '是否缓考', name: 'IsSlow', width: 100, align: "left", | |||
edit: { | |||
type: 'select', | |||
init: function (data, $edit) {// 在点击单元格的时候触发,可以用来初始化输入控件,行数据和控件对象 | |||
}, | |||
change: function (row, num, item) {// 行数据和行号,下拉框选中数据 | |||
}, | |||
op: {// 下拉框设置参数 和 lrselect一致 | |||
data: [ | |||
{ 'id': true, 'text': '是' }, | |||
{ 'id': false, 'text': '否' }, | |||
] | |||
} | |||
} | |||
}, | |||
]; | |||
headDataEdit = [ | |||
{ | |||
label: '期末成绩', name: 'TermEndScore', width: 80, align: "left", | |||
edit: { | |||
@@ -161,6 +179,11 @@ var bootstrap = function ($, learun) { | |||
}, | |||
]; | |||
headDataNoEdit = [ | |||
{ | |||
label: '是否缓考', name: 'IsSlow', width: 60, align: "left", formatter: function (cellvalue) { | |||
return cellvalue == true ? "是" : "否"; | |||
} | |||
}, | |||
{ | |||
label: '期末成绩', name: 'TermEndScore', width: 80, align: "left" | |||
}, | |||
@@ -170,7 +170,24 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
} | |||
} | |||
} | |||
public List<string> ModifyStatuss(string keyValue, int status, string processId) | |||
{ | |||
try | |||
{ | |||
return arrangeLessonTermAttemperService.ModifyStatuss(keyValue, status, processId); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 修改课程异动表的审核状态 | |||
/// </summary> | |||
@@ -61,6 +61,8 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
/// <param name="processId">流程Id</param> | |||
void ModifyStatus(string keyValue, int status, string processId); | |||
List<string> ModifyStatuss(string keyValue, int status, string processId); | |||
/// <summary> | |||
/// 修改课程异动表的审核状态 | |||
/// </summary> | |||
@@ -6,6 +6,7 @@ using System.Collections.Generic; | |||
using System.Data; | |||
using System.Linq; | |||
using System.Text; | |||
using static Dapper.SqlMapper; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
@@ -300,7 +301,42 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
} | |||
} | |||
} | |||
public List<string> ModifyStatuss(string keyValue, int status, string processId) | |||
{ | |||
try | |||
{ | |||
var gids = new List<string>(); | |||
var now = DateTime.Now; | |||
var kv=keyValue.Split(','); | |||
var entitys = this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermAttemperEntity>(x => kv.Contains(x.Id)); | |||
if (entitys.Any()) | |||
{ | |||
foreach (var entity in entitys) | |||
{ | |||
entity.Status = status; | |||
entity.ProcessId = Guid.NewGuid().ToString(); | |||
entity.SubmitTime = now; | |||
entity.CheckStatus = 1; | |||
gids.Add(entity.ProcessId); | |||
this.BaseRepository("CollegeMIS").Update(entity); | |||
} | |||
} | |||
return gids; | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 修改课程异动表的审核状态 | |||
/// </summary> | |||
@@ -1909,7 +1909,7 @@ where StuNo not in(Select StuNo from stuscore s where s.Academicyearno = sl.Acad | |||
// item.Score = 0; | |||
//} | |||
//db.ExecuteBySql($"update StuScore set OrdinaryScore={item.OrdinaryScore},TermInScore={item.TermInScore},TermEndScore={item.TermEndScore},OtherScore={item.OtherScore},Score={item.Score},IsEditable='1',EditUserId=null,BeginModifyDate=null,ModifyDate='{now}',ModifyUserId='{loginUserInfo.userId}',ModifyUserName='{loginUserInfo.realName}' where ScoreId='{item.ScoreId}' "); | |||
db.ExecuteBySql($"update StuScore set OrdinaryScore={item.OrdinaryScore},TermInScore={item.TermInScore},TermEndScore={item.TermEndScore},OtherScore={item.OtherScore},Score={item.Score},Remark='{item.Remark}' where ScoreId='{item.ScoreId}' "); | |||
db.ExecuteBySql($"update StuScore set OrdinaryScore={item.OrdinaryScore},TermInScore={item.TermInScore},TermEndScore={item.TermEndScore},OtherScore={item.OtherScore},Score={item.Score},Remark='{item.Remark}',IsSlow='{item.IsSlow}' where ScoreId='{item.ScoreId}' "); | |||
} | |||
db.Commit(); | |||
@@ -385,6 +385,8 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
public string LessonSection { get; set; } | |||
public string ClassRoomNo { get; set; } | |||
public string ClassRoomName { get; set; } | |||
public bool IsSlow { get; set; } | |||
} | |||
} | |||
@@ -257,6 +257,10 @@ and (b.EduSystem is null or b.EduSystem != '6') "); | |||
{ | |||
strSql.Append($" and ssnp.CheckMark ='{queryParam["CheckMark"].ToString()}'"); | |||
} | |||
if (!queryParam["IsSlow"].IsEmpty() && queryParam["IsSlow"].ToString()=="1") | |||
{ | |||
strSql.Append($" and a.IsSlow ='{queryParam["IsSlow"].ToString()}'"); | |||
} | |||
//旧 | |||
//strSql.Append(" and (b.AbmormityMoveMark<>'1' or len(b.AbmormityMoveMark)=0 or b.AbmormityMoveMark is null) "); | |||
return this.BaseRepository("CollegeMIS").FindList<NotPassEntity>(strSql.ToString(), pagination); | |||
@@ -932,7 +936,7 @@ order by bb.ScoreId"; | |||
item.TermEndScore = item.TermEndScore.HasValue ? item.TermEndScore.Value : 0; | |||
item.OtherScore = item.OtherScore.HasValue ? item.OtherScore.Value : 0; | |||
item.Score = item.Score.HasValue ? item.Score.Value : 0; | |||
db.ExecuteBySql($"update StuScoreNotPass set OrdinaryScore={item.OrdinaryScore},TermInScore={item.TermInScore},TermEndScore={item.TermEndScore},OtherScore={item.OtherScore},Score={item.Score},Remark='{item.Remark}' where ScoreId='{item.ScoreId}' "); | |||
db.ExecuteBySql($"update StuScoreNotPass set OrdinaryScore={item.OrdinaryScore},TermInScore={item.TermInScore},TermEndScore={item.TermEndScore},OtherScore={item.OtherScore},Score={item.Score},Remark='{item.Remark}',IsSlow='{item.IsSlow}' where ScoreId='{item.ScoreId}' "); | |||
} | |||
db.Commit(); | |||
@@ -1247,7 +1251,8 @@ order by bb.ScoreId"; | |||
} | |||
var Score = Math.Round(TermEndScore, MidpointRounding.AwayFromZero); | |||
var remark = dr["备注"].ToString().Trim(); | |||
db.ExecuteBySql($"update StuScoreNotPass set TermEndScore={TermEndScore},Score={Score},Remark='{remark}' where ScoreId='{item.ScoreId}' "); | |||
var isSlow = dr["是否缓考"].ToString().Trim() == "是"; | |||
db.ExecuteBySql($"update StuScoreNotPass set TermEndScore={TermEndScore},Score={Score},Remark='{remark}',IsSlow='{isSlow}' where ScoreId='{item.ScoreId}' "); | |||
} | |||
else | |||
@@ -2,7 +2,7 @@ | |||
"name" : "智慧校园", | |||
"appid" : "__UNI__7C24C09", | |||
"description" : "智慧校园移动端", | |||
"versionName" : "2.2.0.240428", | |||
"versionName" : "2.2.0.240607", | |||
"versionCode" : 20202, | |||
"transformPx" : false, | |||
/* 5+App特有相关 */ | |||