瀏覽代碼

解决冲突

金隅分支
zhangli 3 年之前
父節點
當前提交
ffdfb6ee48
共有 14 個檔案被更改,包括 1323 行新增6 行删除
  1. +313
    -5
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuEnrollController.cs
  2. +40
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/Shared/_Layout.cshtml
  3. +42
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/Peichart.cshtml
  4. +73
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/Peichart.js
  5. +76
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/StatisticIndex.cshtml
  6. +397
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/StatisticIndex.js
  7. +3
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/_ViewStart.cshtml
  8. +61
    -1
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_Desktop/Views/MessageRind/Index.cshtml
  9. +2
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_Desktop/Views/MessageRind/Index.js
  10. +18
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Content/Site.css
  11. +5
    -0
      Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
  12. +29
    -0
      Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollBLL.cs
  13. +8
    -0
      Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollIBLL.cs
  14. +256
    -0
      Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs

+ 313
- 5
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Controllers/StuEnrollController.cs 查看文件

@@ -5,8 +5,11 @@ using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web.Mvc;
using Hangfire.Annotations;
using Learun.Application.Base.SystemModule;
using Newtonsoft.Json;
using System.Data;
using Learun.Application.WorkFlow;

namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
{
@@ -61,6 +64,116 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
{
return View();
}
[HttpGet]
/// <summary>
/// 是否饼状图
/// </summary>
/// <returns></returns>
public ActionResult Peichart()
{
//是否报道
string sql = $"SELECT COUNT(CASE WHEN IsReport=1 THEN 1 END) AS num1, COUNT(CASE WHEN IsReport = 0 THEN 1 END) AS num2 FROM StuEnroll";
var data = stuEnrollIBLL.Execute(sql);
List<object> list2 = new List<object>();
list2.Add(new
{
name = "报道人数",
value = data.Rows[0]["num1"].ToString()

});
list2.Add(new
{
name = "未报道人数",
value = data.Rows[0]["num2"].ToString()

});
var jsonData = new
{
rows = list2
};
//是否住宿
string sql1 = $"SELECT COUNT(CASE WHEN IsCheckIn=1 THEN 1 END) AS num1, COUNT(CASE WHEN IsCheckIn = 0 THEN 1 END) AS num2 FROM StuEnroll";
var data1 = stuEnrollIBLL.Execute(sql);
List<object> list3 = new List<object>();
list3.Add(new
{
name = "住宿人数",
value = data.Rows[0]["num1"].ToString()

});
list3.Add(new
{
name = "未住宿人数",
value = data.Rows[0]["num2"].ToString()

});
var jsonData1 = new
{
rows = list3
};
///是否资助
string sql2 = $"SELECT COUNT(CASE WHEN IsSubsidize1=1 THEN 1 END) AS num1, COUNT(CASE WHEN IsSubsidize1 = 0 THEN 1 END) AS num2 FROM StuEnroll";
var data2 = stuEnrollIBLL.Execute(sql);
List<object> list4 = new List<object>();
list4.Add(new
{
name = "资助人数",
value = data.Rows[0]["num1"].ToString()

});
list4.Add(new
{
name = "未资助人数",
value = data.Rows[0]["num2"].ToString()

});
var jsonData2 = new
{
rows = list4
};
//是否军训
string sql3 = $"SELECT COUNT(CASE WHEN IsMilitary=1 THEN 1 END) AS num1, COUNT(CASE WHEN IsMilitary = 0 THEN 1 END) AS num2 FROM StuEnroll";
var data3 = stuEnrollIBLL.Execute(sql);
List<object> list5 = new List<object>();
list5.Add(new
{
name = "军训人数",
value = data.Rows[0]["num1"].ToString()

});
list5.Add(new
{
name = "未军训人数",
value = data.Rows[0]["num2"].ToString()

});
var jsonData3 = new
{
rows = list5
};
//是否缴费
string sql4 = $"SELECT COUNT(CASE WHEN IsPay=1 THEN 1 END) AS num1, COUNT(CASE WHEN IsPay = 0 THEN 1 END) AS num2 FROM StuEnroll";
var data4 = stuEnrollIBLL.Execute(sql);
List<object> list6 = new List<object>();
list6.Add(new
{
name = "缴费人数",
value = data.Rows[0]["num1"].ToString()

});
list6.Add(new
{
name = "未缴费人数",
value = data.Rows[0]["num2"].ToString()

});
var jsonData4 = new
{
rows = list6
};
return JsonResult(jsonData);
}



/// <summary>
@@ -209,6 +322,14 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
{
return View();
}
/// <summary>
/// 招生统计
/// </summary>
/// <returns></returns>
public ActionResult StatisticIndex()
{
return View();
}

#endregion

@@ -314,13 +435,13 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
if (string.IsNullOrEmpty(student.PhotoUrl))
{
student.PhotoUrl = Guid.NewGuid().ToString();
stuEnrollIBLL.SaveEntity(student.StuId,student);
stuEnrollIBLL.SaveEntity(student.StuId, student);
}

var annexEntity = annexesFileIBLL.GetEntityByFolderId(student.PhotoUrl);
if (annexEntity == null)
{
annexEntity=new AnnexesFileEntity();
annexEntity = new AnnexesFileEntity();
annexEntity.Create();
annexEntity.F_Id = Guid.NewGuid().ToString();
}
@@ -344,11 +465,11 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
public ActionResult GetYearListByClass()
{
var classList = classInfoIBLL.GetAllClass().ToList();
var result = classList.GroupBy(a => a.Grade).Select(m=>m.Key).ToList();
List<object> list=new List<object>();
var result = classList.GroupBy(a => a.Grade).Select(m => m.Key).ToList();
List<object> list = new List<object>();
foreach (var item in result)
{
list.Add(new{year=item});
list.Add(new { year = item });
}

return Success(list);
@@ -847,6 +968,193 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers



/// <summary>
/// 招生统计数据
/// </summary>
/// <param name="queryJson"></param>
/// <returns></returns>
public ActionResult GetStatisticData(string queryJson)
{
var data = stuEnrollIBLL.GetList(queryJson);
//是否报到
var datagroupIsReport = data.OrderByDescending(x => x.IsReport).GroupBy(x => x.IsReport).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "报到" : "未报到") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsReport = new List<string>();
var seriesDataIsReport = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsReport)
{
legendDataIsReport.Add(item.status);
seriesDataIsReport.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//是否住宿
var datagroupIsCheckIn = data.OrderByDescending(x => x.IsCheckIn).GroupBy(x => x.IsCheckIn).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "住宿" : "走读") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsCheckIn = new List<string>();
var seriesDataIsCheckIn = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsCheckIn)
{
legendDataIsCheckIn.Add(item.status);
seriesDataIsCheckIn.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//是否资助
var datagroupIsSubsidize1 = data.OrderByDescending(x => x.IsSubsidize1).GroupBy(x => x.IsSubsidize1).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "资助" : "不资助") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsSubsidize1 = new List<string>();
var seriesDataIsSubsidize1 = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsSubsidize1)
{
legendDataIsSubsidize1.Add(item.status);
seriesDataIsSubsidize1.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//是否军训
var datagroupIsMilitary = data.OrderByDescending(x => x.IsMilitary).GroupBy(x => x.IsMilitary).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "军训" : "不军训") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsMilitary = new List<string>();
var seriesDataIsMilitary = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsMilitary)
{
legendDataIsMilitary.Add(item.status);
seriesDataIsMilitary.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//缴费状态
var datagroupIsPay = data.OrderByDescending(x => x.IsPay).GroupBy(x => x.IsPay).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "缴费" : "未缴费") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsPay = new List<string>();
var seriesDataIsPay = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsPay)
{
legendDataIsPay.Add(item.status);
seriesDataIsPay.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//拍照
var datagroupIsMug = data.OrderByDescending(x => x.IsMug).GroupBy(x => x.IsMug).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "已拍照" : "未拍照") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsMug = new List<string>();
var seriesDataIsMug = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsMug)
{
legendDataIsMug.Add(item.status);
seriesDataIsMug.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//领取军训服
var datagroupIsTakeCloths = data.OrderByDescending(x => x.IsTakeCloths).GroupBy(x => x.IsTakeCloths).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "已领取" : "未领取") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsTakeCloths = new List<string>();
var seriesDataIsTakeCloths = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsTakeCloths)
{
legendDataIsTakeCloths.Add(item.status);
seriesDataIsTakeCloths.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//量取校服尺寸
var datagroupIsQuantity = data.OrderByDescending(x => x.IsQuantity).GroupBy(x => x.IsQuantity).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "已量" : "未量") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsQuantity = new List<string>();
var seriesDataIsQuantity = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsQuantity)
{
legendDataIsQuantity.Add(item.status);
seriesDataIsQuantity.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
//领取床上用品
var datagroupIsGetBeddingArticle = data.OrderByDescending(x => x.IsGetBeddingArticle).GroupBy(x => x.IsGetBeddingArticle).Select(x => new
{
status = x.Key.HasValue ? (x.Key.Value == true ? "已领取" : "未领取") : "未处理",
count = x.Select(y => y.StuId).Count()
});
var legendDataIsGetBeddingArticle = new List<string>();
var seriesDataIsGetBeddingArticle = new List<WfSchemeReportModelOfPie>();
foreach (var item in datagroupIsGetBeddingArticle)
{
legendDataIsGetBeddingArticle.Add(item.status);
seriesDataIsGetBeddingArticle.Add(new WfSchemeReportModelOfPie()
{
value = item.count,
name = item.status
});
}
var jsonData = new
{
legendDataIsReport = legendDataIsReport,
seriesDataIsReport = seriesDataIsReport,
legendDataIsCheckIn = legendDataIsCheckIn,
seriesDataIsCheckIn = seriesDataIsCheckIn,
legendDataIsSubsidize1 = legendDataIsSubsidize1,
seriesDataIsSubsidize1 = seriesDataIsSubsidize1,
legendDataIsMilitary = legendDataIsMilitary,
seriesDataIsMilitary = seriesDataIsMilitary,
legendDataIsPay = legendDataIsPay,
seriesDataIsPay = seriesDataIsPay,
legendDataIsMug = legendDataIsMug,
seriesDataIsMug = seriesDataIsMug,
legendDataIsTakeCloths = legendDataIsTakeCloths,
seriesDataIsTakeCloths = seriesDataIsTakeCloths,
legendDataIsQuantity = legendDataIsQuantity,
seriesDataIsQuantity = seriesDataIsQuantity,
legendDataIsGetBeddingArticle = legendDataIsGetBeddingArticle,
seriesDataIsGetBeddingArticle = seriesDataIsGetBeddingArticle
};

return Success(jsonData);
}


#endregion



+ 40
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/Shared/_Layout.cshtml 查看文件

@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
<link href="~/Content/Site.css" rel="stylesheet" type="text/css" />
<link href="~/Content/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="~/Scripts/modernizr-2.6.2.js"></script>
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
@Html.ActionLink("Application name", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
</ul>
</div>
</div>
</div>

<div class="container body-content">
@RenderBody()
<hr />
<footer>
<p>&copy; @DateTime.Now.Year - My ASP.NET Application</p>
</footer>
</div>

<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>
</body>
</html>

+ 42
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/Peichart.cshtml 查看文件

@@ -0,0 +1,42 @@

@{
ViewBag.Title = "资产新增报表";
Layout = "~/Views/Shared/_Index.cshtml";
}

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Peichart</title>
</head>
<body>
<div class="lr-layout ui-report">
<div class="lr-layout-center">
<div class="lr-layout-wrap lr-layout-wrap-notitle">
@*<div class="lr-layout-tool">
<div class="lr-layout-tool-left">
</div>
<div class="lr-layout-tool-right">
<div class="btn-group btn-group-sm" learun-authorize="yes">
<a id="lr-replace" class="btn btn-default"><i class="fa fa-refresh"></i>&nbsp;<span class="lrlt">刷新</span></a>
</div>
</div>
</div>*@
<div class="lr-layout-grid" style="overflow:auto;">
<div class="grid-title">
<div style="overflow: hidden; padding-bottom: 20px; text-align: center; margin-left: auto; margin-right: auto;">
<div id="main" style="float: left; margin-right: 20px; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
</div>
</div>
<div class="lr-layout-body" id="gridtable"></div>
</div>
</div>
</div>
</div>
<script src="~/Content/echarts/echarts.js"></script>
</body>
</html>
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuEnroll/Peichart.js")

+ 73
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/Peichart.js 查看文件

@@ -0,0 +1,73 @@
var bootstrap = function ($, learun) {
"use strict";
var year = "";
var page = {
init: function () {
page.bind();
page.initGrid();
page.initChart();
},
bind: function () {
//当前年
var now = learun.formatDate(new Date(), 'yyyy');
$('#year').val(now);
year = now;
// 刷新
$('#lr-replace').on('click', function () {
location.reload();
});
//查询
$('#btn_Search').on('click', function () {
year = $('#year').val();
page.search();
});
},
initGrid: function () {
//$(".lr-layout-grid").height($(window).height() - 110);
//$('#gridtable').lrAuthorizeJfGridLei({
// url: top.$.rootUrl + '/AssetManagementSystem/AssReport/AssAddReportList',
// headData: [
// { name: "name", label: "年份", width: 100, align: "center" },
// { name: "value", label: "金额", width: 150, align: "center" }
// ]
//});
//page.search();
},
initChart: function () {
var myChart1 = echarts.init(document.getElementById('main'));
//var myChart2 = echarts.init(document.getElementById('main1'));
var queryJson = { year: year };
learun.httpAsyncPost(top.$.rootUrl + "/EducationalAdministration/StuEnroll/Peichart", { queryJson: JSON.stringify(queryJson) }, function (res) {
if (res.code == 200) {
var option = {
xAxis: {
type: 'category',
data: res.data.name
},
yAxis: {
type: 'value'
},
series: [{
data: res.data.value,
type: 'bar'
}]
};

myChart1.setOption(option);

}
});

},
search: function (param) {
param = param || {};
param.year = year;
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
page.initChart();
}
};
page.init();
}



+ 76
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/StatisticIndex.cshtml 查看文件

@@ -0,0 +1,76 @@

@{
ViewBag.Title = "招生统计";
Layout = "~/Views/Shared/_ReportTemplate.cshtml";
}
<style>
body{
overflow-y:auto;
}
</style>
@Html.AppendJsFile("/Views/LR_Content/script/lr-form.js")
<div class="lr-layout ui-report">
<div class="lr-layout-center">
<div class="lr-layout-wrap lr-layout-wrap-notitle">
<div class="lr-layout-tool">
<div class="lr-layout-tool-left">
<div class="lr-layout-tool-item">
<div id="multiple_condition_query">
<div class="lr-query-formcontent">
<div class="col-xs-12 lr-form-item">
<div class="lr-form-item-title">系</div>
<div id="DeptNo"></div>
</div>
<div class="col-xs-12 lr-form-item">
<div class="lr-form-item-title">专业</div>
<div id="MajorNo"></div>
</div>
<div class="col-xs-12 lr-form-item">
<div class="lr-form-item-title">班级</div>
<div id="ClassNo"></div>
</div>
<div class="col-xs-12 lr-form-item">
<div class="lr-form-item-title">学年</div>
<div id="Grade"></div>
</div>

</div>
</div>
</div>
</div>
<div class="lr-layout-tool-right">
<div class="btn-group btn-group-sm" learun-authorize="yes">
<a id="lr-replace" class="btn btn-default"><i class="fa fa-refresh"></i>&nbsp;<span class="lrlt">刷新</span></a>
</div>
</div>
</div>
<div class="lr-layout-grid" style="overflow:auto;">
<div class="grid-title">
<div style="overflow: auto; padding-bottom: 20px; text-align: center; margin-left: auto; margin-right: auto;">
<div id="mainIsReport" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsCheckIn" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsSubsidize1" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsMilitary" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsPay" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsMug" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsTakeCloths" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsQuantity" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
<div id="mainIsGetBeddingArticle" style="float: left; margin:0 20px 20px 0; width: 650px; height: 350px;border: 1px solid #ccc;">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="~/Content/echarts/echarts.js"></script>
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuEnroll/StatisticIndex.js")

+ 397
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/StuEnroll/StatisticIndex.js 查看文件

@@ -0,0 +1,397 @@

var bootstrap = function ($, learun) {
"use strict";
var page = {
init: function () {
page.bind();
page.initChart();
},
bind: function () {
// 刷新
$('#lr-replace').on('click', function () {
location.reload();
});
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
page.search(queryJson);
}, 250, 400);
$('#DeptNo').lrselect({
allowSearch: true,
value: "deptno",
text: "deptname",
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=CdDeptInfo',
select: function (item) {
if (item) {
$('#MajorNo').lrselectRefresh({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=CdMajorInfo',
param: { strWhere: "DeptNo='" + item.deptno + "' AND CheckMark=1" }
});
} else {
$('#MajorNo').lrselectRefresh({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=CdMajorInfo',
param: { strWhere: "1=1 AND CheckMark=1" }
});
}

}
});
$('#MajorNo').lrselect({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=CdMajorInfo',
value: "majorno",
text: "majorname",
param: { strWhere: "1=1 AND CheckMark=1" },
select: function (item) {
if (item) {
$('#ClassNo').lrselectRefresh({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=bjsj',
param: { strWhere: "majorno='" + item.majorno + "' AND CheckMark=1" }
});
} else {
$('#ClassNo').lrselectRefresh({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=bjsj',
param: { strWhere: "1=1 AND CheckMark=1" }
});
}
}
});
$('#ClassNo').lrselect({
allowSearch: true,
url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable?code=bjsj',
param: { strWhere: "1=1 AND CheckMark=1" },
value: "classno",
text: "classname"
});
$('#Grade').lrselect({
url: top.$.rootUrl + '/EducationalAdministration/StuEnroll/GetYearListByClass',
value: "year",
text: "year",
})

},
initChart: function (param) {
var myChartIsReport = echarts.init(document.getElementById('mainIsReport'));
var myChartIsCheckIn = echarts.init(document.getElementById('mainIsCheckIn'));
var myChartIsSubsidize1 = echarts.init(document.getElementById('mainIsSubsidize1'));
var myChartIsMilitary = echarts.init(document.getElementById('mainIsMilitary'));
var myChartIsPay = echarts.init(document.getElementById('mainIsPay'));
var myChartIsMug = echarts.init(document.getElementById('mainIsMug'));
var myChartIsTakeCloths = echarts.init(document.getElementById('mainIsTakeCloths'));
var myChartIsQuantity = echarts.init(document.getElementById('mainIsQuantity'));
var myChartIsGetBeddingArticle = echarts.init(document.getElementById('mainIsGetBeddingArticle'));
var queryJson = param || {};
learun.httpAsyncPost(top.$.rootUrl + "/EducationalAdministration/StuEnroll/GetStatisticData", { queryJson: JSON.stringify(queryJson) }, function (res) {
if (res.code == 200) {
var optionIsReport = {
title: {
text: '新生报到分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsReport
},
series: [
{
name: '是否报到',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsReport,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsReport.setOption(optionIsReport);

var optionIsCheckIn = {
title: {
text: '新生住宿分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsCheckIn
},
series: [
{
name: '是否住宿',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsCheckIn,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsCheckIn.setOption(optionIsCheckIn);

var optionIsSubsidize1 = {
title: {
text: '新生资助分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsSubsidize1
},
series: [
{
name: '是否资助',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsSubsidize1,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsSubsidize1.setOption(optionIsSubsidize1);

var optionIsMilitary = {
title: {
text: '新生军训分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsMilitary
},
series: [
{
name: '是否军训',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsMilitary,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsMilitary.setOption(optionIsMilitary);

var optionIsPay = {
title: {
text: '新生缴费分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsPay
},
series: [
{
name: '是否缴费',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsPay,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsPay.setOption(optionIsPay);

var optionIsMug = {
title: {
text: '新生拍照分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsMug
},
series: [
{
name: '是否拍照',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsMug,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsMug.setOption(optionIsMug);

var optionIsTakeCloths = {
title: {
text: '新生领取军训服分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsTakeCloths
},
series: [
{
name: '是否领取军训服',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsTakeCloths,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsTakeCloths.setOption(optionIsTakeCloths);

var optionIsQuantity = {
title: {
text: '新生量取校服尺寸分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsQuantity
},
series: [
{
name: '是否量取校服尺寸',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsQuantity,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsQuantity.setOption(optionIsQuantity);

var optionIsGetBeddingArticle = {
title: {
text: '新生领取床上用品分析图',
x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c}人 ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: res.data.legendDataIsGetBeddingArticle
},
series: [
{
name: '是否领取床上用品',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: res.data.seriesDataIsGetBeddingArticle,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
myChartIsGetBeddingArticle.setOption(optionIsGetBeddingArticle);

}
});
},
search: function (param) {
param = param || {};
page.initChart(param);
}

};
page.init();
}



+ 3
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/EducationalAdministration/Views/_ViewStart.cshtml 查看文件

@@ -0,0 +1,3 @@
@{
Layout = "~/Areas/EducationalAdministration/Views/Shared/_Layout.cshtml";
}

+ 61
- 1
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_Desktop/Views/MessageRind/Index.cshtml 查看文件

@@ -20,11 +20,71 @@
<a id="lr_edit" class="btn btn-default"><i class="fa fa-pencil-square-o"></i>&nbsp;编辑</a>
<a id="lr_delete" class="btn btn-default"><i class="fa fa-trash-o"></i>&nbsp;删除</a>*@
<a id="lr_print" class="btn btn-default"><i class="fa fa-print"></i>&nbsp;打印</a>
</div>
<div class="layui-btn-container">
</div>
</div>
</div>
<div class="lr-layout-body" id="gridtable"></div>
</div>
</div>
<div id="winpop">
<div class="title">您有新的未读消息<span class="close" onclick="tips_pop()">x</span></div>
<div id="notifications">
</div>

</div>
</div>
@Html.AppendJsFile("/Areas/LR_Desktop/Views/MessageRind/Index.js")
@Html.AppendJsFile("/Areas/LR_Desktop/Views/MessageRind/Index.js");
<script>
function tips_pop() {
var MsgPop = document.getElementById("winpop");
var popH = parseInt(MsgPop.style.height);
if (popH == 0) {
MsgPop.style.Height = "block";
show = setInterval("changeH('up')", 2);
} else {
hide = setInterval("changeH('down')", 2);
}
}

function changeH(str) {
var magPop = document.getElementById("winpop");
var popH = parseInt(MsgPop.style.Height);
if (str == "up") {
if (popH <= 100) {
msgPop.style.height = (popH + 4).toString() + "px";
} else {
clearInterval(show);
}
}
if (str == "down") {
if (popH >= 4) {
MsgPop.style.Height = (popH - 4).toString() + "px";
} else {
clearInterval(hide);
MsgPop.style.display = "none";
}
}
window.onload = function() {
document.getElementById('winpop').style.height = '0px';
setTimeout("tips_pop()", 800);
}

}
function Winpop() {
var state = '0';
$.get(${ ctx } / sys / msGetUserMedia / getMsgList ? state + "&t=" + new Date().getTime(),function(data) {
$("#notifications").html(data);
}),
}

winpop();
setInterval(function() {
$("#winpop").load(Winpop(), "");
},
1000);
</script>

+ 2
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_Desktop/Views/MessageRind/Index.js 查看文件

@@ -94,6 +94,8 @@ var bootstrap = function ($, learun) {
});

},
// 初始化列表
initGird: function () {
$('#gridtable').lrAuthorizeJfGrid({


+ 18
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Content/Site.css 查看文件

@@ -0,0 +1,18 @@
body {
padding-top: 50px;
padding-bottom: 20px;
}

/* Set padding to keep content from hitting the edges */
.body-content {
padding-left: 15px;
padding-right: 15px;
}

/* Set width on the form input elements since they're 100% wide by default */
input,
select,
textarea {
max-width: 280px;
}


+ 5
- 0
Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj 查看文件

@@ -970,6 +970,8 @@
<Content Include="Areas\EducationalAdministration\Views\StuConsumption\IndexForStudent.js" />
<Content Include="Areas\EducationalAdministration\Views\StuConsumption\IndexForTeacher.js" />
<Content Include="Areas\EducationalAdministration\Views\StuEnroll\AmountForm.js" />
<Content Include="Areas\EducationalAdministration\Views\StuEnroll\Peichart.js" />
<Content Include="Areas\EducationalAdministration\Views\StuEnroll\StatisticIndex.js" />
<Content Include="Areas\EducationalAdministration\Views\StuGrant\Form.js" />
<Content Include="Areas\EducationalAdministration\Views\StuGrant\Index.js" />
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasicChange\Form.js" />
@@ -3220,6 +3222,7 @@
<Content Include="Content\signet\jquery.zsign.css" />
<Content Include="Content\signet\jquery.zsign.js" />
<Content Include="Content\signet\signet.gif" />
<Content Include="Content\Site.css" />
<Content Include="Content\sso\css\bootstrap.css" />
<Content Include="Content\sso\css\common.css" />
<Content Include="Content\sso\css\index.css" />
@@ -7141,6 +7144,8 @@
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\ContractFilingMonitor.cshtml" />
<Content Include="Areas\Permission\Views\Perm_FunctionVisit\IndexForCount.cshtml" />
<Content Include="Areas\EducationalAdministration\Views\SchoolCalendar\ScheduleIndex.cshtml" />
<Content Include="Areas\EducationalAdministration\Views\StuEnroll\Peichart.cshtml" />
<Content Include="Areas\EducationalAdministration\Views\StuEnroll\StatisticIndex.cshtml" />
<Content Include="Areas\LR_Desktop\Views\MessageRind\UnreadIndex.cshtml" />
<None Include="Properties\PublishProfiles\FolderProfile.pubxml" />
<Content Include="Views\Login\Default-beifen.cshtml" />


+ 29
- 0
Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollBLL.cs 查看文件

@@ -42,6 +42,35 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
}
}
}

/// <summary>
/// 获取页面显示列表数据
/// <summary>
/// <param name="queryJson">查询参数</param>
/// <returns></returns>
public IEnumerable<StuEnrollEntity> GetList(string queryJson)
{
try
{
return stuEnrollService.GetList(queryJson);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowBusinessException(ex);
}
}
}

public DataTable Execute(string sql)
{
return stuEnrollService.Execute(sql);
}
public IEnumerable<StuEnrollEntity> AllStudent()
{
try


+ 8
- 0
Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollIBLL.cs 查看文件

@@ -22,6 +22,14 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
/// <param name="queryJson">查询参数</param>
/// <returns></returns>
IEnumerable<StuEnrollEntity> GetPageList(Pagination pagination, string queryJson);

/// <summary>
/// 获取页面显示列表数据
/// <summary>
/// <param name="queryJson">查询参数</param>
/// <returns></returns>
IEnumerable<StuEnrollEntity> GetList(string queryJson);
DataTable Execute(string sql);
IEnumerable<StuEnrollEntity> AllStudent();
IEnumerable<Acc_DormitoryBuildEntity> GetDormitorys(Pagination pagination, string queryJson);



+ 256
- 0
Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs 查看文件

@@ -342,7 +342,263 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
}
}

/// <summary>
/// 获取页面显示列表数据
/// <summary>
/// <param name="queryJson">查询参数</param>
/// <returns></returns>
public IEnumerable<StuEnrollEntity> GetList( string queryJson)
{
try
{
var strSql = new StringBuilder();
strSql.Append("SELECT t.* ");
strSql.Append(" FROM StuEnroll t ");
strSql.Append(" WHERE 1=1 ");
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
if (!queryParam["IDCard"].IsEmpty())
{
dp.Add("IDCard", "%" + queryParam["IDCard"].ToString() + "%", DbType.String);
strSql.Append(" AND t.IDCard Like @IDCard ");
}
if (!queryParam["Year"].IsEmpty())
{
dp.Add("Year", "%" + queryParam["Year"].ToString() + "%", DbType.String);
strSql.Append(" AND t.ClassNo Like @Year ");
}
//sql条件
if (!queryParam["SqlParameter"].IsEmpty())
{
strSql.Append(queryParam["SqlParameter"].ToString());
}

if (!queryParam["RegistrationNo"].IsEmpty())
{
dp.Add("RegistrationNo", "%" + queryParam["RegistrationNo"].ToString() + "%", DbType.String);
strSql.Append(" AND t.RegistrationNo Like @RegistrationNo ");
}
if (!queryParam["Admissions"].IsEmpty())
{
dp.Add("Admissions", queryParam["Admissions"].ToString(), DbType.String);
strSql.Append(" AND t.Admissions = @Admissions ");
}
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["Grade"].IsEmpty())
{
dp.Add("Grade", queryParam["Grade"].ToString(), DbType.String);
strSql.Append(" AND t.Grade = @Grade ");
}
if (!queryParam["ClassNo"].IsEmpty())
{
dp.Add("ClassNo", queryParam["ClassNo"].ToString(), DbType.String);
strSql.Append(" AND t.ClassNo = @ClassNo ");
}
if (!queryParam["IsAllocation"].IsEmpty())
{
var IsAllocation = Convert.ToBoolean(queryParam["IsAllocation"].ToString());
if (IsAllocation)
{
strSql.Append(" AND (t.ClassNo IS NOT NULL AND t.ClassNo<>'')");
}
else
{
strSql.Append(" AND (t.ClassNo IS NULL OR t.ClassNo='')");
}
}
if (!queryParam["IsAllocationDormitory"].IsEmpty())
{
var IsAllocation = Convert.ToBoolean(queryParam["IsAllocationDormitory"].ToString());
if (IsAllocation)
{
strSql.Append(" AND (t.DormitoryNo IS NOT NULL AND t.DormitoryNo<>'')");
}
else
{
strSql.Append(" AND (t.DormitoryNo IS NULL OR t.DormitoryNo='')");
}
}
if (!queryParam["StuName"].IsEmpty())
{
dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
strSql.Append(" AND t.StuName Like @StuName ");
}

if (!queryParam["Status"].IsEmpty())
{
dp.Add("Status", queryParam["Status"].ToString(), DbType.String);
strSql.Append(" AND t.Status = @Status ");
}
if (!queryParam["Gender"].IsEmpty())
{
dp.Add("Gender", Convert.ToBoolean(queryParam["Gender"].ToString()), DbType.Boolean);
strSql.Append(" AND t.Gender = @Gender ");
}

if (!queryParam["PayList"].IsEmpty())
{
strSql.Append(" AND t.Status>=3 AND t.Status<6 ");
}


if (!queryParam["IsCheckIn"].IsEmpty())
{
if (queryParam["IsCheckIn"].ToString() == "null")
{
strSql.Append(" AND t.IsCheckIn is null ");

}
else
{
dp.Add("IsCheckIn", queryParam["IsCheckIn"].ToString(), DbType.String);
strSql.Append(" AND t.IsCheckIn = @IsCheckIn ");
}
}
if (!queryParam["IsSubsidize1"].IsEmpty())
{
if (queryParam["IsSubsidize1"].ToString() == "null")
{
strSql.Append(" AND t.IsSubsidize1 is null ");

}
else
{
dp.Add("IsSubsidize1", queryParam["IsSubsidize1"].ToString(), DbType.String);
strSql.Append(" AND t.IsSubsidize1 = @IsSubsidize1 ");
}
}
if (!queryParam["IsMilitary"].IsEmpty())
{
if (queryParam["IsMilitary"].ToString() == "null")
{
strSql.Append(" AND t.IsMilitary is null ");

}
else
{
dp.Add("IsMilitary", queryParam["IsMilitary"].ToString(), DbType.String);
strSql.Append(" AND t.IsMilitary = @IsMilitary ");
}
}

if (!queryParam["IsPay"].IsEmpty())
{
if (queryParam["IsPay"].ToString() == "null")
{
strSql.Append(" AND t.IsPay is null ");

}
else
{
dp.Add("IsPay", queryParam["IsPay"].ToString(), DbType.String);
strSql.Append(" AND t.IsPay = @IsPay ");
}
}
if (!queryParam["IsMug"].IsEmpty())
{
if (queryParam["IsMug"].ToString() == "null")
{
strSql.Append(" AND t.IsMug is null ");

}
else
{
dp.Add("IsMug", queryParam["IsMug"].ToString(), DbType.String);
strSql.Append(" AND t.IsMug = @IsMug ");
}
}
if (!queryParam["IsTakeCloths"].IsEmpty())
{
if (queryParam["IsTakeCloths"].ToString() == "null")
{
strSql.Append(" AND t.IsTakeCloths is null ");

}
else
{
dp.Add("IsTakeCloths", queryParam["IsTakeCloths"].ToString(), DbType.String);
strSql.Append(" AND t.IsTakeCloths = @IsTakeCloths ");
}
}
if (!queryParam["IsQuantity"].IsEmpty())
{
if (queryParam["IsQuantity"].ToString() == "null")
{
strSql.Append(" AND t.IsQuantity is null ");

}
else
{
dp.Add("IsQuantity", queryParam["IsQuantity"].ToString(), DbType.String);
strSql.Append(" AND t.IsQuantity = @IsQuantity ");
}
}
if (!queryParam["IsGetBeddingArticle"].IsEmpty())
{
if (queryParam["IsGetBeddingArticle"].ToString() == "null")
{
strSql.Append(" AND t.IsGetBeddingArticle is null ");

}
else
{
dp.Add("IsGetBeddingArticle", queryParam["IsGetBeddingArticle"].ToString(), DbType.String);
strSql.Append(" AND t.IsGetBeddingArticle = @IsGetBeddingArticle ");
}
}

//获取班主任所带的班级
var roleid = this.BaseRepository().FindEntity<RoleEntity>(a => a.F_FullName == "班主任")?.F_RoleId;
var userInfo = LoginUserInfo.Get();
var sqlClasses = "";
if (!string.IsNullOrEmpty(roleid))
{
if (userInfo.roleIds.Contains(roleid))
{
var classes = this.BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(a => a.ClassDiredctorNo == userInfo.account).Select(a => a.ClassNo).ToList();
if (classes != null)
{
foreach (var item in classes)
{
sqlClasses += $"'{item}',";
}
sqlClasses = sqlClasses.TrimEnd(',');
}
}
if (!string.IsNullOrEmpty(sqlClasses))
{
strSql.Append($" AND t.ClassNo IN({sqlClasses})");
}
}
return this.BaseRepository("CollegeMIS").FindList<StuEnrollEntity>(strSql.ToString(), dp);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}

public DataTable Execute(string sql)
{
return this.BaseRepository("CollegeMIS").FindTable(sql);
}

public IEnumerable<StuEnrollEntity> AllStudent()
{


Loading…
取消
儲存