From 05d5a4db86afcd9d9694947e57088a48ba1abbb7 Mon Sep 17 00:00:00 2001 From: dyy <807692433@qq.com> Date: Fri, 3 Mar 2023 10:28:59 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=A2=9E=E5=8A=A0=E3=80=91=E6=AF=95?= =?UTF-8?q?=E4=B8=9A=E5=AD=A6=E7=94=9F=E7=AE=A1=E7=90=86=EF=BC=9A=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=8D=B3=E5=B0=86=E6=AF=95=E4=B8=9A=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E7=AE=A1=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/StuInfoBasicController.cs | 32 ++ .../StuInfoBasic/SoonGraduateIndex.cshtml | 48 +++ .../Views/StuInfoBasic/SoonGraduateIndex.js | 332 ++++++++++++++++++ .../Learun.Application.Web.csproj | 2 + .../StuInfoBasic/StuInfoBasicBLL.cs | 24 ++ .../StuInfoBasic/StuInfoBasicIBLL.cs | 7 + .../StuInfoBasic/StuInfoBasicService.cs | 84 +++++ 7 files changed, 529 insertions(+) create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.js diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoBasicController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoBasicController.cs index 79cd6eb59..2efa95ad5 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoBasicController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuInfoBasicController.cs @@ -158,6 +158,16 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers { return View(); } + + /// + /// 即将毕业学生管理 + /// + /// + [HttpGet] + public ActionResult SoonGraduateIndex() + { + return View(); + } #endregion @@ -303,6 +313,28 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers var data = stuInfoBasicIBLL.GetTree(); return Success(data); } + + /// + /// 获取页面显示列表数据 + /// + /// 查询参数 + /// + [HttpGet] + [AjaxOnly] + public ActionResult GetPageListOfSoonGraduate(string pagination, string queryJson) + { + Pagination paginationobj = pagination.ToObject(); + var data = stuInfoBasicIBLL.GetPageListOfSoonGraduate(paginationobj, queryJson); + var jsonData = new + { + rows = data, + total = paginationobj.total, + page = paginationobj.page, + records = paginationobj.records + }; + return Success(jsonData); + } + #endregion #region 提交数据 diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.cshtml new file mode 100644 index 000000000..fd13a95f9 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.cshtml @@ -0,0 +1,48 @@ +@{ + ViewBag.Title = "即将毕业学生管理"; + Layout = "~/Views/Shared/_Index.cshtml"; +} +
+
+
+
+
+
+
+
+
+
学号
+ +
+
+
姓名
+ +
+
+
系部
+
+
+
+
专业
+
+
+
+
班级
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.js") + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.js new file mode 100644 index 000000000..df6493715 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuInfoBasic/SoonGraduateIndex.js @@ -0,0 +1,332 @@ +var refreshGirdData; +var StuId; +var bootstrap = function ($, learun) { + "use strict"; + var page = { + init: function () { + page.initGird(); + page.bind(); + }, + bind: function () { + $('#multiple_condition_query').lrMultipleQuery(function (queryJson) { + page.search(queryJson); + }, 220, 400); + $('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' }); + $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' }); + $('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' }); + // 刷新 + $('#lr_refresh').on('click', function () { + location.reload(); + }); + + }, + // 初始化列表 + initGird: function () { + $('#gridtable').jfGrid({ + url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/GetPageListOfSoonGraduate', + headData: [ + { label: "学号", name: "StuNo", width: 100, align: "left" }, + { label: "学籍号", name: "StuCode", width: 100, align: "left" }, + { label: "考生号", name: "ksh", width: 100, align: "left" }, + { label: "通知书号", name: "NoticeNo", width: 100, align: "left" }, + { label: "姓名", name: "StuName", width: 100, align: "left" }, + { + label: "性别", name: "GenderNo", width: 80, align: "left", + formatter: function (cellvalue) { + return cellvalue == true ? "男" : "女"; + } + }, + { label: "出生日期", name: "Birthday", width: 100, align: "left" }, + { label: "身份证号", name: "IdentityCardNo", width: 100, align: "left" }, + { + label: "民族", name: "NationalityNo", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'National', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + label: "政治面貌", name: "PartyFaceNo", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'BCdPartyFace', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + 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: 100, 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: "ClassNo", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('custmerData', { + url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'bjsj', + key: value, + keyId: 'classno', + callback: function (_data) { + callback(_data['classname']); + } + }); + } + }, + { label: "年级", name: "Grade", width: 100, align: "left" }, + { + label: "学制", name: "EduSystem", width: 100, align: "left", formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'EduSystem', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + label: "学习形式", name: "StudyModality", width: 100, 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: "RegisterDate", width: 100, align: "left" }, + { label: "入学年月", name: "EntranceDate", width: 100, align: "left" }, + //{ label: "余额", name: "Balance", width: 100, align: "left" }, + { label: "通讯地址", name: "MailAddress", width: 100, align: "left" }, + { label: "联系电话", name: "mobile", width: 100, align: "left" }, + { label: "户口所在地", name: "FatherUnit", width: 100, align: "left" }, + { label: "档案所在地", name: "MatherUnit", width: 100, align: "left" }, + { label: "户籍所在地", name: "Domicile", width: 100, align: "left" }, + { + label: "户口分类", name: "ResidenceNo", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'ResidenceNo', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + label: "籍贯 (省)", name: "F_ProvinceId", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('custmerData', { + url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_PROVINCE', + key: value, + keyId: 'pcode', + callback: function (_data) { + callback(_data['pname']); + } + }); + } + }, + { + label: "籍贯 (市)", name: "F_CityId", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('custmerData', { + url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_CITY', + key: value, + keyId: 'ccode', + callback: function (_data) { + callback(_data['cname']); + } + }); + } + }, + { + label: "籍贯 (县)", name: "F_CountyId", width: 100, align: "left", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('custmerData', { + url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_AREA', + key: value, + keyId: 'acode', + callback: function (_data) { + callback(_data['aname']); + } + }); + } + }, + //{ label: "E-mail", name: "E-mail", width: 100, align: "center" }, + { + label: "开户银行", name: "DepositBank", width: 100, align: "center", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'DepositBank', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { label: "开户卡账号", name: "BankCard", width: 100, align: "center" }, + { label: "开户银行位置", name: "BankLocation", width: 100, align: "center" }, + { label: "邮政编码", name: "PostalCode", width: 100, align: "center" }, + { + label: "是否单亲", name: "IsSingle", width: 100, align: "left", + formatter: function (value, row) { + if (value == true) { + return '是'; + } + else if (value == false) { + return '否'; + } + } + }, + { label: "父亲姓名", name: "FatherName", width: 100, align: "center" }, + { label: "身份证号", name: "OneIdCardNo", width: 100, align: "center" }, + { label: "父亲电话", name: "FatherPhone", width: 100, align: "center" }, + { label: "户籍地址", name: "OneDomicile", width: 100, align: "center" }, + { label: "现住址", name: "OneAddress", width: 100, align: "center" }, + { label: "母亲姓名", name: "MatherName", width: 100, align: "center" }, + { label: "身份证号", name: "TwoIdCardNo", width: 100, align: "center" }, + { label: "母亲电话", name: "MatherPhone", width: 100, align: "center" }, + { label: "户籍地址", name: "TwoDomicile", width: 100, align: "center" }, + { label: "现住址", name: "TwoAddress", width: 100, align: "center" }, + { label: "监护人姓名", name: "GuardianName", width: 100, align: "center" }, + { label: "身份证号", name: "GuardianIdCardNo", width: 100, align: "center" }, + { label: "监护人电话", name: "GuardianPhone", width: 100, align: "center" }, + { label: "户籍地址", name: "GuardianDomicile", width: 100, align: "center" }, + { label: "现住址", name: "GuardianAddress", width: 100, align: "center" }, + { + label: "家庭出身", name: "FamilyOriginNo", width: 100, align: "center", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'BCdFamilyOrigin', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + label: "港澳台侨", name: "OverseasChineseNo", width: 100, align: "center", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'BCdOverseasChinese', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { + label: "本专科", name: "GraduateNo", width: 100, align: "center", + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getAsync('dataItem', { + key: value, + code: 'CollegeType', + callback: function (_data) { + callback(_data.text); + } + }); + } + }, + { label: "毕业证号", name: "DiplomaNo", width: 100, align: "center" }, + { + label: "毕业日期", name: "GraduateYear", width: 100, align: "center", + formatter: function (cellvalue) { + return learun.formatDate(cellvalue, 'yyyy-MM-dd'); + } + }, + { label: "毕业证书备注", name: "DiplomaRemark", width: 100, align: "center" }, + //{ + // label: "入党时间", name: "BankCard", width: 100, align: "center", + // formatter: function (cellvalue) { + // return learun.formatDate(cellvalue, 'yyyy-MM-dd'); + // } + //}, + //{ + // label: "入团时间", name: "BankCard", width: 100, align: "center", + // formatter: function (cellvalue) { + // return learun.formatDate(cellvalue, 'yyyy-MM-dd'); + // } + //}, + { label: "校内地址", name: "InSchoolAddress", width: 100, align: "center" }, + { label: "校内电话", name: "InSchoolTelephone", width: 100, align: "center" }, + { label: "QQ", name: "QQ", width: 100, align: "center" }, + { label: "特长", name: "GoodAt", width: 100, align: "center" }, + { label: "备注", name: "Remark", width: 200, align: "center" }, + { + label: "异动状态", name: "MoveStatus", width: 80, align: "center", + formatter: function (cellvalue) { + return cellvalue == "1" ? "" : ""; + } + }, + { + label: "异动类型", name: "MoveType", width: 100, 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: "CheckMark", width: 80, align: "center", + formatter: function (cellvalue) { + return cellvalue == "1" ? "已审核" : "未审核"; + } + } + ], + mainId: 'StuId', + isPage: true, + isMultiselect: false, + sord: 'asc', + sidx:'DeptNo,MajorNo,ClassNo,StuNo' + + }); + page.search(); + }, + search: function (param) { + param = param || {}; + $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); + } + }; + refreshGirdData = function () { + page.search(); + }; + 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 4ae362de4..1c4b9ceef 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 @@ -990,6 +990,7 @@ + @@ -8065,6 +8066,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicBLL.cs index 96f164b11..688a322e1 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicBLL.cs @@ -42,6 +42,30 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration } } + /// + /// 获取页面显示列表数据 + /// + /// 查询参数 + /// + public IEnumerable GetPageListOfSoonGraduate(Pagination pagination, string queryJson) + { + try + { + return stuInfoBasicService.GetPageListOfSoonGraduate(pagination, queryJson); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowBusinessException(ex); + } + } + } + /// /// 获取StuInfoBasic表实体数据 /// 主键 diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicIBLL.cs index e37fbeb6e..325f20b0e 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicIBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicIBLL.cs @@ -21,6 +21,13 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration /// 查询参数 /// IEnumerable GetPageList(Pagination pagination, string queryJson); + + /// + /// 获取页面显示列表数据 + /// + /// 查询参数 + /// + IEnumerable GetPageListOfSoonGraduate(Pagination pagination, string queryJson); /// /// 获取StuInfoBasic表实体数据 /// 主键 diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicService.cs index dddecc93a..766bfbc94 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicService.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuInfoBasic/StuInfoBasicService.cs @@ -112,6 +112,90 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration } } + /// + /// 获取页面显示列表数据 + /// + /// 查询参数 + /// + public IEnumerable GetPageListOfSoonGraduate(Pagination pagination, string queryJson) + { + try + { + var strSql = new StringBuilder(); + strSql.Append("SELECT t.* "); + strSql.Append(" FROM StuInfoBasic t "); + strSql.Append(" WHERE 1=1 "); + strSql.Append(" and t.Grade=(case when datepart(month,getdate())>=9 then (substring(convert(nvarchar,datepart(year,getdate())),3,2)-2) else (substring(convert(nvarchar,datepart(year,getdate())),3,2)-3) end) "); + var queryParam = queryJson.ToJObject(); + // 虚拟参数 + var dp = new DynamicParameters(new { }); + if (!queryParam["StuNo"].IsEmpty()) + { + dp.Add("StuNo", queryParam["StuNo"].ToString(), DbType.String); + strSql.Append(" AND t.StuNo = @StuNo "); + } + if (!queryParam["StuName"].IsEmpty()) + { + dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String); + strSql.Append(" AND t.StuName Like @StuName "); + } + if (!queryParam["DeptNo"].IsEmpty()) + { + dp.Add("DeptNo", "" + queryParam["DeptNo"].ToString() + "", DbType.String); + strSql.Append(" AND t.DeptNo=@DeptNo "); + } + if (!queryParam["MajorNo"].IsEmpty()) + { + dp.Add("MajorNo", "" + queryParam["MajorNo"].ToString() + "", DbType.String); + strSql.Append(" AND t.MajorNo=@MajorNo "); + } + if (!queryParam["ClassNo"].IsEmpty()) + { + dp.Add("ClassNo", "" + queryParam["ClassNo"].ToString() + "", DbType.String); + strSql.Append(" AND t.ClassNo=@ClassNo "); + } + if (!queryParam["Grade"].IsEmpty()) + { + dp.Add("Grade", "" + queryParam["Grade"].ToString() + "", DbType.String); + strSql.Append(" AND t.Grade=@Grade "); + } + if (!queryParam["FinishSchoolMark"].IsEmpty()) + { + dp.Add("FinishSchoolMark", "" + queryParam["FinishSchoolMark"].ToString() + "", DbType.String); + if (queryParam["FinishSchoolMark"].ToString() == "0") + { + strSql.Append(" AND (t.FinishSchoolMark is null or t.FinishSchoolMark='0') "); + } + else + { + strSql.Append(" AND t.FinishSchoolMark=@FinishSchoolMark "); + } + } + if (!queryParam["Remark"].IsEmpty()) + { + dp.Add("Remark", "%" + queryParam["Remark"].ToString() + "%", DbType.String); + strSql.Append(" AND t.Remark Like @Remark "); + } + //旧 + //if (!queryParam["AbmormityMoveMark"].IsEmpty()) + //{ + // strSql.Append(" AND t.stuno not in(select stuno from StuInfoBasicChange where StuChangeType in('04','05','06') and checkstatus=1) "); + //} + return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowServiceException(ex); + } + } + } + internal List GetSaveClassStudents(string account) { try