From 53fdb5effe4df8b67565dd9229010094dfd3fda6 Mon Sep 17 00:00:00 2001 From: zhangli <1109134334@qq.com> Date: Mon, 7 Mar 2022 14:05:58 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AE=BF=E8=88=8D=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=80=E4=B8=AA=E4=BA=BA=E4=B8=8D=E8=83=BD?= =?UTF-8?q?=E5=88=86=E9=85=8D=E5=88=B0=E5=A4=9A=E4=B8=AA=E5=BA=8A=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/AccommodationController.cs | 7 +++++- .../Views/Accommodation/FormRoom.js | 24 ++++++++++++------- .../Accommodation/AccommodationBLL.cs | 4 ++-- .../Accommodation/AccommodationIBLL.cs | 2 +- .../Accommodation/AccommodationService.cs | 15 +++++++++++- 5 files changed, 38 insertions(+), 14 deletions(-) diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/AccommodationController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/AccommodationController.cs index 5dd7d85e7..24e3ad8cf 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/AccommodationController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/AccommodationController.cs @@ -463,7 +463,12 @@ namespace Learun.Application.Web.Areas.LogisticsManagement.Controllers public ActionResult SaveRoom(string RoomId, List list) { //List list = strEntity.ToObject>(); - accommodationIBLL.SaveRoom(RoomId, list); + string res = accommodationIBLL.SaveRoom(RoomId, list); + if (!string.IsNullOrEmpty(res)) + { + return Fail(res); + } + return Success("保存成功!"); } diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/Accommodation/FormRoom.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/Accommodation/FormRoom.js index edc8a2238..be042398a 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/Accommodation/FormRoom.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/Accommodation/FormRoom.js @@ -18,7 +18,7 @@ var bootstrap = function ($, learun) { page.initData(); }, bind: function () { - + }, initData: function () { if (!!keyValue) { @@ -51,16 +51,16 @@ var bootstrap = function ($, learun) { value: "stuno", text: "stuname", url: top.$.rootUrl + '/LR_SystemModule/DataSource/GetDataTable', - param: { code: "StuInfoBasic", strWhere: strWhere }, + param: { code: "StuInfoBasic", strWhere: strWhere }, // 是否允许搜索 allowSearch: true, select: function (item) { - // console.log(item); + // console.log(item); var stuid = ''; if (item) { stuid = item.stuno; - } + } var id = $(this).attr('id'); //console.log('id', id); //console.log('item',item); @@ -78,9 +78,9 @@ var bootstrap = function ($, learun) { //arr.push({ ID: data[i].ID, StudentID: data[i].StudentID }); } - - - + + + }); } }, @@ -93,8 +93,14 @@ var bootstrap = function ($, learun) { //var postData = { // strEntity: JSON.stringify($('body').lrGetFormData()) //}; - //console.log('arr',arr); - + //console.log('arr', arr); + for (var i = 0; i < arr.length - 1; i++) { + for (var j = i + 1; j < arr.length; j++) { + if (!!arr[i].StudentID && arr[i].StudentID === arr[j].StudentID) { + return learun.alert.warning('学生不可重复!'); + } + } + } var postData = { list: arr }; diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationBLL.cs index d63fd9665..dcba8bb27 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationBLL.cs @@ -681,11 +681,11 @@ namespace Learun.Application.TwoDevelopment.LogisticsManagement } } - public void SaveRoom(string RoomId, List list) + public string SaveRoom(string RoomId, List list) { try { - accommodationService.SaveRoom(RoomId, list); + return accommodationService.SaveRoom(RoomId, list); } catch (Exception ex) { diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationIBLL.cs index 0f72b5a99..09ccf1e2c 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationIBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationIBLL.cs @@ -83,7 +83,7 @@ namespace Learun.Application.TwoDevelopment.LogisticsManagement void SaveEntity(string keyValue, Acc_DormitoryBuildEntity entity); void SaveBedEntity(string keyValue,string ParentID, Acc_DormitoryBuildEntity entity); void SaveDeptClass(string keyValue, Acc_DormitoryBuildEntity entity,int type); - void SaveRoom(string RoomId, List list); + string SaveRoom(string RoomId, List list); /// /// 批量添加单元、楼层、房间、床位 diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationService.cs index b2508a78b..b184d56f2 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationService.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/LogisticsManagement/Accommodation/AccommodationService.cs @@ -1721,13 +1721,25 @@ where ID='{ParentID}' /// /// /// - public void SaveRoom(string RoomId, List list) + public string SaveRoom(string RoomId, List list) { var db = this.BaseRepository("CollegeMIS").BeginTrans(); try { foreach (var entity in list) { + //判断该学生是否已分配 + if (!string.IsNullOrEmpty(entity.StudentID)) + { + var count = db.FindList().Count(x => x.StudentID == entity.StudentID && x.ID != entity.ID); + if (count > 0) + { + var stuname = db.FindEntity(x => x.StuNo == entity.StudentID)?.StuName; + return "学生" + stuname + "已分配床位,不可重复分配!"; + } + } + + //分配床位 string sql = $"update Acc_DormitoryBuild set StudentID='{entity.StudentID}' where ID='{entity.ID}'"; db.ExecuteBySql(sql); } @@ -1737,6 +1749,7 @@ where ID='{ParentID}' db.ExecuteBySql(checkInSql); db.Commit(); + return ""; } catch (Exception ex) { From 637c7beffe8e33250d74e2c2f71552a02c0ada46 Mon Sep 17 00:00:00 2001 From: dyy <807692433@qq.com> Date: Mon, 7 Mar 2022 16:17:43 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E3=80=90=E5=A2=9E=E5=8A=A0=E3=80=91?= =?UTF-8?q?=E4=BA=91=E7=9B=98=E6=96=87=E4=BB=B6=E7=BB=9F=E8=AE=A1=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/ResourceFileController.cs | 45 +++++++++++ .../Views/ResourceFile/FileStatistic.cshtml | 37 +++++++++ .../Views/ResourceFile/FileStatistic.js | 79 +++++++++++++++++++ .../Learun.Application.Web.csproj | 2 + .../File/FileInfo/FileInfoBLL.cs | 4 + .../File/FileInfo/FileInfoIBLL.cs | 1 + .../File/FileInfo/FileInfoService.cs | 21 ++++- 7 files changed, 188 insertions(+), 1 deletion(-) create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.js diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/ResourceFileController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/ResourceFileController.cs index 1fc7ea82c..41d34382f 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/ResourceFileController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/ResourceFileController.cs @@ -83,6 +83,15 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers { return View(); } + /// + /// 云盘文件统计 + /// + /// + [HttpGet] + public ActionResult FileStatistic() + { + return View(); + } #endregion #region 获取数据 @@ -204,6 +213,42 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers var data = fileInfoBLL.GetEntity(keyValue); return JsonResult(data); } + /// + /// 获取云盘文件统计数据 + /// + /// + /// + public ActionResult GetFileStatisitcData(string queryJson) + { + var data = fileInfoBLL.GetListByJson(queryJson); + var dataGroup = data.Where(x => x.F_CreateDate.HasValue).GroupBy(x => x.F_CreateDate.Value.Month).Select(x => new TempClass() + { + month=x.Key, + count = x.Select(y=>y.F_FileId).Count() + }); + + var xAxis = new List(); + var seriesData = new List(); + for (int i = 0; i < 12; i++) + { + xAxis.Add(string.Format("{0}月", i + 1)); + var aa = dataGroup.FirstOrDefault(x => x.month == (i + 1)); + seriesData.Add(aa == null ? 0 : aa.count); + } + + var jsonData = new + { + seriesData = seriesData, + xAxis = xAxis + }; + + return Success(jsonData); + } + public class TempClass { + public int month { get; set; } + public int count { get; set; } + } + #endregion #region 提交数据 diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.cshtml new file mode 100644 index 000000000..05248285b --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.cshtml @@ -0,0 +1,37 @@ + +@{ + ViewBag.Title = "流程使用报表"; + Layout = "~/Views/Shared/_ReportTemplate.cshtml"; +} + +
+
+
+
+
+
+ +
+
+  查询 +
+
+
+
+  刷新 +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +@Html.AppendJsFile("/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.js") diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.js new file mode 100644 index 000000000..8e2380daa --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/ResourceFile/FileStatistic.js @@ -0,0 +1,79 @@ +var bootstrap = function ($, learun) { + "use strict"; + var year = ""; + var page = { + init: function () { + page.bind(); + 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(); + }); + }, + initChart: function () { + var myChart1 = echarts.init(document.getElementById('main')); + var queryJson = { year: year }; + learun.httpAsyncPost(top.$.rootUrl + "/LR_OAModule/ResourceFile/GetFileStatisitcData", { queryJson: JSON.stringify(queryJson) }, function (res) { + if (res.code == 200) { + var option1 = { + title: { + text: year + '年云盘文件统计图', + x: 'center' + }, + legend: { + orient: 'vertical', + left: 'left', + data: ['数量'] + }, + tooltip: { + trigger: 'axis' + }, + grid: { + left: '5%', + right: '3%', + bottom: '3%', + containLabel: true + }, + xAxis: { + type: 'category', + data: res.data.xAxis + }, + yAxis: { + type: 'value', + name: '文件数/个' + + }, + series: [ + { + name: '数量', + type: 'bar', + data: res.data.seriesData + } + ] + }; + myChart1.setOption(option1); + } + }); + + }, + search: function (param) { + param = param || {}; + param.year = year; + page.initChart(); + } + }; + 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 6713a49cf..2b9b31c33 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 @@ -1490,6 +1490,7 @@ + @@ -7628,6 +7629,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoBLL.cs index fa1010940..1f199ff9b 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoBLL.cs @@ -33,6 +33,10 @@ namespace Learun.Application.OA.File.FileInfo { return service.GetList(); } + public IEnumerable GetListByJson(string queryJson) + { + return service.GetListByJson(queryJson); + } /// /// 文档列表 /// diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoIBLL.cs index a717529c8..df2d8f347 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoIBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoIBLL.cs @@ -22,6 +22,7 @@ namespace Learun.Application.OA.File.FileInfo IEnumerable GetList(string userId); IEnumerable GetList(); + IEnumerable GetListByJson(string queryJson); /// /// 文档列表 /// diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoService.cs index 27aad6bf0..f038d9021 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoService.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/File/FileInfo/FileInfoService.cs @@ -1,4 +1,5 @@ using Learun.DataBase.Repository; +using Learun.Util; using System; using System.Collections.Generic; using System.Data.Common; @@ -24,7 +25,25 @@ namespace Learun.Application.OA.File.FileInfo public IEnumerable GetList() { string sql = "select * from LR_OA_FileInfo where F_DeleteMark = 0"; - return this.BaseRepository().FindList(); + return this.BaseRepository().FindList(sql); + } + public IEnumerable GetListByJson(string queryJson) + { + var dp = new object(); + var queryParam = queryJson.ToJObject(); + var strSql = new StringBuilder(); + strSql.Append("select * from LR_OA_FileInfo where F_DeleteMark = 0 "); + if (!queryParam["year"].IsEmpty()) + { + dp = new { year = queryParam["year"].ToInt() }; + strSql.Append(" and DATEPART(yyyy,F_CreateDate) = @year "); + } + else + { + dp = new { year = DateTime.Now.Year }; + strSql.Append(" and DATEPART(yyyy,F_CreateDate) = @year "); + } + return this.BaseRepository().FindList(strSql.ToString(),dp); } ///