diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoGraduateController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoGraduateController.cs index 3b16b6b29..b5cc372df 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoGraduateController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoGraduateController.cs @@ -1,7 +1,11 @@ -using Learun.Application.TwoDevelopment.EducationalAdministration; +using Learun.Application.Base.SystemModule; +using Learun.Application.TwoDevelopment.EducationalAdministration; using Learun.Util; +using System; using System.Data; +using System.Linq; using System.Web.Mvc; +using static Learun.Application.TwoDevelopment.EducationalAdministration.StuInfoGraduateEntity; namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers { @@ -15,6 +19,8 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers public class StuInfoGraduateController : MvcControllerBase { private StuInfoGraduateIBLL stuInfoGraduateIBLL = new StuInfoGraduateBLL(); + private AnnexesFileIBLL annexesFileIbll = new AnnexesFileBLL(); + private StuScoreIBLL stuScoreIBLL = new StuScoreBLL(); #region 视图功能 @@ -25,7 +31,7 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers [HttpGet] public ActionResult Index() { - return View(); + return View(); } /// /// 表单页 @@ -34,7 +40,45 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers [HttpGet] public ActionResult Form() { - return View(); + return View(); + } + + /// + /// 打印 + /// + /// + [HttpGet] + public ActionResult Printxjk(string keyValue) + { + var stuInfoGraduateEntity = stuInfoGraduateIBLL.GetEntity(keyValue); + ViewBag.PrintDate = DateTime.Now.ToDate(); + if (stuInfoGraduateEntity == null) + { + return View(new StuInfoGraduateEntity()); + } + //头像 + stuInfoGraduateEntity.Photo = annexesFileIbll.GetEntityByFolderId(stuInfoGraduateEntity.Photo)?.F_FilePath; + if (!string.IsNullOrEmpty(stuInfoGraduateEntity.Photo)) + { + stuInfoGraduateEntity.Photo = stuInfoGraduateEntity.Photo.Substring(stuInfoGraduateEntity.Photo.IndexOf("Resource") - 1); + } + //学习成绩 + stuInfoGraduateEntity.StuScoreClassOneList = stuScoreIBLL.GetAllScoreListByStuNo(stuInfoGraduateEntity.StuNo) + .Where(x => x.AcademicYearNo != null && x.Semester != null && x.Score != null) + .GroupBy(x => new { x.AcademicYearNo, x.Semester }) + .Select(x => new StuScoreClassOne() + { + AcademicYearNo = x.Key.AcademicYearNo, + Semester = x.Key.Semester, + StuScoreList = x.Select(y => new StuScoreEntity() + { + LessonNo = y.LessonNo, + LessonName = y.LessonName, + Score = y.Score + }).OrderBy(xx => xx.LessonNo).ToList() + }).OrderBy(xx => xx.AcademicYearNo).ThenBy(xx => xx.Semester).ToList(); + + return View(stuInfoGraduateEntity); } #endregion @@ -46,7 +90,7 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers /// [HttpGet] [AjaxOnly] - public ActionResult GetList( string queryJson ) + public ActionResult GetList(string queryJson) { var data = stuInfoGraduateIBLL.GetList(queryJson); return Success(data); @@ -107,7 +151,7 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers [HttpPost] [ValidateAntiForgeryToken] [AjaxOnly] - public ActionResult SaveForm(string keyValue,StuInfoGraduateEntity entity) + public ActionResult SaveForm(string keyValue, StuInfoGraduateEntity entity) { stuInfoGraduateIBLL.SaveEntity(keyValue, entity); return Success("保存成功!"); diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.cshtml index 9549fd794..8c6449bc9 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.cshtml +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.cshtml @@ -52,6 +52,7 @@ diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.js index d44f4ee04..2fc5192d7 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/Index.js @@ -51,7 +51,7 @@ var bootstrap = function ($, learun) { $('#ClassNo').lrselectRefresh({ allowSearch: true, url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=allbjqj', - param: { strWhere: "1=1 AND order by classno desc" } + param: { strWhere: "1=1 order by classno desc" } }); } } else { @@ -65,7 +65,7 @@ var bootstrap = function ($, learun) { $('#ClassNo').lrselectRefresh({ allowSearch: true, url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=allbjqj', - param: { strWhere: "1=1 AND order by classno desc" } + param: { strWhere: "1=1 order by classno desc" } }); } } @@ -90,7 +90,7 @@ var bootstrap = function ($, learun) { $('#ClassNo').lrselectRefresh({ allowSearch: true, url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=allbjqj', - param: { strWhere: "1=1 AND order by classno desc" } + param: { strWhere: "1=1 order by classno desc" } }); } } else { @@ -106,7 +106,7 @@ var bootstrap = function ($, learun) { $('#ClassNo').lrselectRefresh({ allowSearch: true, url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=allbjqj', - param: { strWhere: "1=1 AND order by classno desc" } + param: { strWhere: "1=1 order by classno desc" } }); } } @@ -116,7 +116,7 @@ var bootstrap = function ($, learun) { $('#ClassNo').lrselect({ allowSearch: true, url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=allbjqj', - param: { strWhere: "1=1 AND order by classno desc" }, + param: { strWhere: "1=1 order by classno desc" }, value: "classno", text: "classname" }); @@ -129,6 +129,24 @@ var bootstrap = function ($, learun) { }); + //打印学籍卡 + $('#lr_printxjk').on('click', function () { + var keyValue = $('#gridtable').jfGridValue('StuId'); + if (learun.checkrow(keyValue)) { + if (keyValue.indexOf(',') != -1) { + learun.alert.warning("只能选择一条记录进行查看!"); + return; + } + learun.layerForm({ + id: 'print', + title: '学籍卡打印', + url: top.$.rootUrl + '/EducationalAdministration/StuInfoGraduate/Printxjk?keyValue=' + keyValue, + width: 1100, + height: 800, + btn: null + }); + } + }); }, // 初始化列表 initGird: function () { @@ -577,7 +595,7 @@ var bootstrap = function ($, learun) { mainId: 'StuId', isPage: true, isMultiselect: false, - + sidx: "ClassNo desc,MajorNo desc,MajorNo desc,Grade desc,StuNo desc" }); page.search(); }, diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/printxjk.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/printxjk.cshtml new file mode 100644 index 000000000..5cd92178e --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoGraduate/printxjk.cshtml @@ -0,0 +1,337 @@ +@using Learun.Util +@using Microsoft.Practices.ObjectBuilder2 +@model Learun.Application.TwoDevelopment.EducationalAdministration.StuInfoGraduateEntity + + + + + + 打印 + + + + + + + + + + + + + + + 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 f587441b3..426e53adb 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 @@ -8104,6 +8104,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoGraduate/StuInfoGraduateEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoGraduate/StuInfoGraduateEntity.cs index b9d87cd96..30731adb2 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoGraduate/StuInfoGraduateEntity.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoGraduate/StuInfoGraduateEntity.cs @@ -1,5 +1,6 @@ using Learun.Util; using System; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; namespace Learun.Application.TwoDevelopment.EducationalAdministration @@ -11,7 +12,7 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration /// 日 期:2020-05-21 16:16 /// 描 述:毕业学生信息 /// - public class StuInfoGraduateEntity + public class StuInfoGraduateEntity { #region 实体成员 @@ -933,6 +934,16 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration this.StuId = keyValue; } #endregion + + [NotMapped] + public List StuScoreClassOneList { get; set; } + + public class StuScoreClassOne + { + public string AcademicYearNo { get; set; } + public string Semester { get; set; } + public List StuScoreList { get; set; } + } } }