@@ -0,0 +1,117 @@ | |||
using Learun.Util; | |||
using System.Data; | |||
using Learun.Application.TwoDevelopment.EducationalAdministration; | |||
using System.Web.Mvc; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public class TrainEquipmentManageController : MvcControllerBase | |||
{ | |||
private TrainEquipmentManageIBLL trainEquipmentManageIBLL = new TrainEquipmentManageBLL(); | |||
#region 视图功能 | |||
/// <summary> | |||
/// 主页面 | |||
/// <summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult Index() | |||
{ | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 表单页 | |||
/// <summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult Form() | |||
{ | |||
return View(); | |||
} | |||
#endregion | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">分页参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
[HttpGet] | |||
[AjaxOnly] | |||
public ActionResult GetPageList(string pagination, string queryJson) | |||
{ | |||
Pagination paginationobj = pagination.ToObject<Pagination>(); | |||
var data = trainEquipmentManageIBLL.GetPageList(paginationobj, queryJson); | |||
var jsonData = new | |||
{ | |||
rows = data, | |||
total = paginationobj.total, | |||
page = paginationobj.page, | |||
records = paginationobj.records | |||
}; | |||
return Success(jsonData); | |||
} | |||
/// <summary> | |||
/// 获取表单数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
[HttpGet] | |||
[AjaxOnly] | |||
public ActionResult GetFormData(string keyValue) | |||
{ | |||
var TrainEquipmentManageData = trainEquipmentManageIBLL.GetTrainEquipmentManageEntity( keyValue ); | |||
var jsonData = new { | |||
TrainEquipmentManage = TrainEquipmentManageData, | |||
}; | |||
return Success(jsonData); | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
[HttpPost] | |||
[AjaxOnly] | |||
public ActionResult DeleteForm(string keyValue) | |||
{ | |||
trainEquipmentManageIBLL.DeleteEntity(keyValue); | |||
return Success("删除成功!"); | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="strEntity">实体</param> | |||
/// <returns></returns> | |||
[HttpPost] | |||
[ValidateAntiForgeryToken] | |||
[AjaxOnly] | |||
public ActionResult SaveForm(string keyValue, string strEntity) | |||
{ | |||
TrainEquipmentManageEntity entity = strEntity.ToObject<TrainEquipmentManageEntity>(); | |||
trainEquipmentManageIBLL.SaveEntity(keyValue,entity); | |||
if (string.IsNullOrEmpty(keyValue)) | |||
{ | |||
} | |||
return Success("保存成功!"); | |||
} | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,39 @@ | |||
@{ | |||
ViewBag.Title = "实训设备管理"; | |||
Layout = "~/Views/Shared/_Form.cshtml"; | |||
} | |||
<div class="lr-form-wrap" id="form"> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">专业部<font face="宋体">*</font></div> | |||
<div id="DeptNo" isvalid="yes" checkexpession="NotNull" ></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">实训室名称<font face="宋体">*</font></div> | |||
<input id="TrainName" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">设备名称<font face="宋体">*</font></div> | |||
<input id="EquipmentName" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">设备型号</div> | |||
<input id="EquipmentModel" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">新增</div> | |||
<input id="AddNum" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">损耗</div> | |||
<input id="LossNum" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">现存</div> | |||
<input id="ExistNum" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="TrainEquipmentManage" > | |||
<div class="lr-form-item-title">设备金额</div> | |||
<input id="EquipmentMoney" type="text" class="form-control" /> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/TrainEquipmentManage/Form.js") |
@@ -0,0 +1,51 @@ | |||
/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn) | |||
* Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
* 创建人:超级管理员 | |||
* 日 期:2022-08-30 10:49 | |||
* 描 述:实训设备管理 | |||
*/ | |||
var acceptClick; | |||
var keyValue = request('keyValue'); | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
$('.lr-form-wrap').lrscroll(); | |||
page.bind(); | |||
page.initData(); | |||
}, | |||
bind: function () { | |||
$('#DeptNo').lrDataSourceSelect({ code: 'CdMajorInfo',value: 'majorno',text: 'majorname' }); | |||
}, | |||
initData: function () { | |||
if (!!keyValue) { | |||
$.lrSetForm(top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/GetFormData?keyValue=' + keyValue, function (data) { | |||
for (var id in data) { | |||
if (!!data[id].length && data[id].length > 0) { | |||
$('#' + id ).jfGridSet('refreshdata', data[id]); | |||
} | |||
else { | |||
$('[data-table="' + id + '"]').lrSetFormData(data[id]); | |||
} | |||
} | |||
}); | |||
} | |||
} | |||
}; | |||
// 保存数据 | |||
acceptClick = function (callBack) { | |||
if (!$('body').lrValidform()) { | |||
return false; | |||
} | |||
var postData = { | |||
strEntity: JSON.stringify($('body').lrGetFormData()) | |||
}; | |||
$.lrSaveForm(top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/SaveForm?keyValue=' + keyValue, postData, function (res) { | |||
// 保存成功后才回调 | |||
if (!!callBack) { | |||
callBack(); | |||
} | |||
}); | |||
}; | |||
page.init(); | |||
} |
@@ -0,0 +1,44 @@ | |||
@{ | |||
ViewBag.Title = "实训设备管理"; | |||
Layout = "~/Views/Shared/_Index.cshtml"; | |||
} | |||
<div class="lr-layout " > | |||
<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> | |||
<input id="TrainName" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">设备名称</div> | |||
<input id="EquipmentName" type="text" class="form-control" /> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-tool-right"> | |||
<div class=" btn-group btn-group-sm"> | |||
<a id="lr_refresh" class="btn btn-default"><i class="fa fa-refresh"></i></a> | |||
</div> | |||
<div class=" btn-group btn-group-sm" learun-authorize="yes"> | |||
<a id="lr_add" class="btn btn-default"><i class="fa fa-plus"></i> 新增</a> | |||
<a id="lr_edit" class="btn btn-default"><i class="fa fa-pencil-square-o"></i> 编辑</a> | |||
<a id="lr_delete" class="btn btn-default"><i class="fa fa-trash-o"></i> 删除</a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-body" id="gridtable"></div> | |||
</div> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/TrainEquipmentManage/Index.js") |
@@ -0,0 +1,105 @@ | |||
/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn) | |||
* Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
* 创建人:超级管理员 | |||
* 日 期:2022-08-30 10:49 | |||
* 描 述:实训设备管理 | |||
*/ | |||
var refreshGirdData; | |||
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: 'CdMajorInfo',value: 'majorno',text: 'majorname' }); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
}); | |||
// 新增 | |||
$('#lr_add').on('click', function () { | |||
learun.layerForm({ | |||
id: 'form', | |||
title: '新增', | |||
url: top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/Form', | |||
width: 600, | |||
height: 400, | |||
callBack: function (id) { | |||
return top[id].acceptClick(refreshGirdData); | |||
} | |||
}); | |||
}); | |||
// 编辑 | |||
$('#lr_edit').on('click', function () { | |||
var keyValue = $('#gridtable').jfGridValue('Id'); | |||
if (learun.checkrow(keyValue)) { | |||
learun.layerForm({ | |||
id: 'form', | |||
title: '编辑', | |||
url: top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/Form?keyValue=' + keyValue, | |||
width: 600, | |||
height: 400, | |||
callBack: function (id) { | |||
return top[id].acceptClick(refreshGirdData); | |||
} | |||
}); | |||
} | |||
}); | |||
// 删除 | |||
$('#lr_delete').on('click', function () { | |||
var keyValue = $('#gridtable').jfGridValue('Id'); | |||
if (learun.checkrow(keyValue)) { | |||
learun.layerConfirm('是否确认删除该项!', function (res) { | |||
if (res) { | |||
learun.deleteForm(top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/DeleteForm', { keyValue: keyValue}, function () { | |||
refreshGirdData(); | |||
}); | |||
} | |||
}); | |||
} | |||
}); | |||
}, | |||
// 初始化列表 | |||
initGird: function () { | |||
$('#gridtable').lrAuthorizeJfGrid({ | |||
url: top.$.rootUrl + '/EducationalAdministration/TrainEquipmentManage/GetPageList', | |||
headData: [ | |||
{ label: "专业部", name: "DeptNo", 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: "TrainName", width: 100, align: "left"}, | |||
{ label: "设备名称", name: "EquipmentName", width: 100, align: "left"}, | |||
{ label: "设备型号", name: "EquipmentModel", width: 100, align: "left"}, | |||
{ label: "新增", name: "AddNum", width: 100, align: "left"}, | |||
{ label: "损耗", name: "LossNum", width: 100, align: "left"}, | |||
{ label: "现存", name: "ExistNum", width: 100, align: "left"}, | |||
{ label: "设备金额", name: "EquipmentMoney", width: 100, align: "left"}, | |||
], | |||
mainId:'Id', | |||
isPage: true | |||
}); | |||
page.search(); | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
$('#gridtable').jfGridSet('reload',{ queryJson: JSON.stringify(param) }); | |||
} | |||
}; | |||
refreshGirdData = function () { | |||
$('#gridtable').jfGridSet('reload'); | |||
}; | |||
page.init(); | |||
} |
@@ -44,9 +44,9 @@ | |||
<div class="lr-form-item-title">联系电话<font face="宋体">*</font></div> | |||
<input id="LinkPhone" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" readonly="readonly" /> | |||
</div> | |||
@*<div class="col-xs-12 lr-form-item" data-table="MeetingManagement"> | |||
<div class="col-xs-12 lr-form-item" data-table="MeetingManagement"> | |||
<div class="lr-form-item-title">扫码签到</div> | |||
<div id="qrCode"></div> | |||
</div>*@ | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/PersonnelManagement/Views/MeetingManagement/FormView.js") |
@@ -63,7 +63,7 @@ var bootstrap = function ($, learun) { | |||
$('[data-table="' + id + '"]').lrSetFormData(data[id]); | |||
} | |||
//扫码签到 | |||
//makeCode(data[id].Id); | |||
makeCode(data[id].Id); | |||
} | |||
}); | |||
} | |||
@@ -864,6 +864,7 @@ | |||
<Compile Include="Areas\PersonnelManagement\Controllers\EvaluateTeachLearnController.cs" /> | |||
<Compile Include="Areas\PersonnelManagement\Controllers\ClassPatrolController.cs" /> | |||
<Compile Include="Areas\EducationalAdministration\Controllers\StuGraduateStatisticController.cs" /> | |||
<Compile Include="Areas\EducationalAdministration\Controllers\TrainEquipmentManageController.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<Content Include="Areas\AdmissionsPlatform\Views\AP_OnlineUserInfo\DropOutIndex.js" /> | |||
@@ -6860,6 +6861,10 @@ | |||
<Content Include="Areas\PersonnelManagement\Views\ClassPatrol\Form.cshtml" /> | |||
<Content Include="Areas\PersonnelManagement\Views\ClassPatrol\Form.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuGraduateStatistic\Index.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\TrainEquipmentManage\Index.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\TrainEquipmentManage\Index.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\TrainEquipmentManage\Form.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\TrainEquipmentManage\Form.js" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<Folder Include="Areas\EducationalAdministration\Views\OpenLessonPlanOfElectivePre\" /> | |||
@@ -29,7 +29,7 @@ namespace Learun.Application.WebApi | |||
Post["/delete"] = DeleteForm; | |||
Post["/save"] = SaveForm; | |||
Post["/read"] = NewsRead; | |||
} | |||
#region 获取数据 | |||
@@ -71,6 +71,7 @@ namespace Learun.Application.WebApi | |||
{ | |||
string keyValue = this.GetReqData(); | |||
var Sys_ReceiveFileData = sys_ReceiveFileIBLL.GetSys_ReceiveFileEntity(keyValue); | |||
Sys_ReceiveFileData.FilePath = Sys_ReceiveFileData.Url; | |||
if (Sys_ReceiveFileData != null) | |||
{ | |||
var result = annexesFileIBLL.GetEntityByFolderId(Sys_ReceiveFileData.Url)?.F_FilePath; | |||
@@ -0,0 +1,29 @@ | |||
using Learun.Application.TwoDevelopment.EducationalAdministration; | |||
using System.Data.Entity.ModelConfiguration; | |||
namespace Learun.Application.Mapping | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public class TrainEquipmentManageMap : EntityTypeConfiguration<TrainEquipmentManageEntity> | |||
{ | |||
public TrainEquipmentManageMap() | |||
{ | |||
#region 表、主键 | |||
//表 | |||
this.ToTable("TRAINEQUIPMENTMANAGE"); | |||
//主键 | |||
this.HasKey(t => t.Id); | |||
#endregion | |||
#region 配置关系 | |||
#endregion | |||
} | |||
} | |||
} | |||
@@ -621,6 +621,7 @@ | |||
<Compile Include="PersonnelManagement\EvaluateTeachLearnMap.cs" /> | |||
<Compile Include="PersonnelManagement\ClassPatrolMap.cs" /> | |||
<Compile Include="EducationalAdministration\StuGraduateStatisticMap.cs" /> | |||
<Compile Include="EducationalAdministration\TrainEquipmentManageMap.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<ProjectReference Include="..\..\..\Learun.Application.Organization\Learun.Application.Organization.csproj"> | |||
@@ -149,6 +149,11 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
[Column("SLASTDATE")] | |||
public DateTime? SLastDate { get; set; } | |||
/// <summary> | |||
/// 路径 | |||
/// </summary> | |||
[NotMapped] | |||
public string FilePath { get; set; } | |||
#endregion | |||
} | |||
@@ -0,0 +1,125 @@ | |||
using Learun.Util; | |||
using System; | |||
using System.Data; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public class TrainEquipmentManageBLL : TrainEquipmentManageIBLL | |||
{ | |||
private TrainEquipmentManageService trainEquipmentManageService = new TrainEquipmentManageService(); | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">分页参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
public IEnumerable<TrainEquipmentManageEntity> GetPageList(Pagination pagination, string queryJson) | |||
{ | |||
try | |||
{ | |||
return trainEquipmentManageService.GetPageList(pagination, queryJson); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 获取TrainEquipmentManage表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
public TrainEquipmentManageEntity GetTrainEquipmentManageEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
return trainEquipmentManageService.GetTrainEquipmentManageEntity(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
public void DeleteEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
trainEquipmentManageService.DeleteEntity(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
/// <returns></returns> | |||
public void SaveEntity(string keyValue, TrainEquipmentManageEntity entity) | |||
{ | |||
try | |||
{ | |||
trainEquipmentManageService.SaveEntity(keyValue, entity); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,85 @@ | |||
using Learun.Util; | |||
using System; | |||
using System.ComponentModel.DataAnnotations.Schema; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public class TrainEquipmentManageEntity | |||
{ | |||
#region 实体成员 | |||
/// <summary> | |||
/// Id | |||
/// </summary> | |||
[Column("ID")] | |||
public string Id { get; set; } | |||
/// <summary> | |||
/// 专业部 | |||
/// </summary> | |||
[Column("DEPTNO")] | |||
public string DeptNo { get; set; } | |||
/// <summary> | |||
/// 实训室名称 | |||
/// </summary> | |||
[Column("TRAINNAME")] | |||
public string TrainName { get; set; } | |||
/// <summary> | |||
/// 设备名称 | |||
/// </summary> | |||
[Column("EQUIPMENTNAME")] | |||
public string EquipmentName { get; set; } | |||
/// <summary> | |||
/// 设备型号 | |||
/// </summary> | |||
[Column("EQUIPMENTMODEL")] | |||
public string EquipmentModel { get; set; } | |||
/// <summary> | |||
/// 新增 | |||
/// </summary> | |||
[Column("ADDNUM")] | |||
public string AddNum { get; set; } | |||
/// <summary> | |||
/// 损耗 | |||
/// </summary> | |||
[Column("LOSSNUM")] | |||
public string LossNum { get; set; } | |||
/// <summary> | |||
/// 现存 | |||
/// </summary> | |||
[Column("EXISTNUM")] | |||
public string ExistNum { get; set; } | |||
/// <summary> | |||
/// 设备金额 | |||
/// </summary> | |||
[Column("EQUIPMENTMONEY")] | |||
public decimal? EquipmentMoney { get; set; } | |||
#endregion | |||
#region 扩展操作 | |||
/// <summary> | |||
/// 新增调用 | |||
/// </summary> | |||
public void Create() | |||
{ | |||
this.Id = Guid.NewGuid().ToString(); | |||
} | |||
/// <summary> | |||
/// 编辑调用 | |||
/// </summary> | |||
/// <param name="keyValue"></param> | |||
public void Modify(string keyValue) | |||
{ | |||
this.Id = keyValue; | |||
} | |||
#endregion | |||
#region 扩展字段 | |||
#endregion | |||
} | |||
} | |||
@@ -0,0 +1,48 @@ | |||
using Learun.Util; | |||
using System.Data; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public interface TrainEquipmentManageIBLL | |||
{ | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
IEnumerable<TrainEquipmentManageEntity> GetPageList(Pagination pagination, string queryJson); | |||
/// <summary> | |||
/// 获取TrainEquipmentManage表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
TrainEquipmentManageEntity GetTrainEquipmentManageEntity(string keyValue); | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
void DeleteEntity(string keyValue); | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
void SaveEntity(string keyValue, TrainEquipmentManageEntity entity); | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,156 @@ | |||
using Dapper; | |||
using Learun.DataBase.Repository; | |||
using Learun.Util; | |||
using System; | |||
using System.Collections.Generic; | |||
using System.Data; | |||
using System.Text; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-30 10:49 | |||
/// 描 述:实训设备管理 | |||
/// </summary> | |||
public class TrainEquipmentManageService : RepositoryFactory | |||
{ | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">查询参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
public IEnumerable<TrainEquipmentManageEntity> GetPageList(Pagination pagination, string queryJson) | |||
{ | |||
try | |||
{ | |||
var strSql = new StringBuilder(); | |||
strSql.Append("SELECT t.* "); | |||
strSql.Append(" FROM TrainEquipmentManage t "); | |||
strSql.Append(" WHERE 1=1 "); | |||
var queryParam = queryJson.ToJObject(); | |||
// 虚拟参数 | |||
var dp = new DynamicParameters(new { }); | |||
if (!queryParam["DeptNo"].IsEmpty()) | |||
{ | |||
dp.Add("DeptNo",queryParam["DeptNo"].ToString(), DbType.String); | |||
strSql.Append(" AND t.DeptNo = @DeptNo "); | |||
} | |||
if (!queryParam["TrainName"].IsEmpty()) | |||
{ | |||
dp.Add("TrainName", "%" + queryParam["TrainName"].ToString() + "%", DbType.String); | |||
strSql.Append(" AND t.TrainName Like @TrainName "); | |||
} | |||
if (!queryParam["EquipmentName"].IsEmpty()) | |||
{ | |||
dp.Add("EquipmentName", "%" + queryParam["EquipmentName"].ToString() + "%", DbType.String); | |||
strSql.Append(" AND t.EquipmentName Like @EquipmentName "); | |||
} | |||
return this.BaseRepository("CollegeMIS").FindList<TrainEquipmentManageEntity>(strSql.ToString(),dp, pagination); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 获取TrainEquipmentManage表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
public TrainEquipmentManageEntity GetTrainEquipmentManageEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
return this.BaseRepository("CollegeMIS").FindEntity<TrainEquipmentManageEntity>(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
public void DeleteEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
this.BaseRepository("CollegeMIS").Delete<TrainEquipmentManageEntity>(t=>t.Id == keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
public void SaveEntity(string keyValue, TrainEquipmentManageEntity entity) | |||
{ | |||
try | |||
{ | |||
if (!string.IsNullOrEmpty(keyValue)) | |||
{ | |||
entity.Modify(keyValue); | |||
this.BaseRepository("CollegeMIS").Update(entity); | |||
} | |||
else | |||
{ | |||
entity.Create(); | |||
this.BaseRepository("CollegeMIS").Insert(entity); | |||
} | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
} |
@@ -1910,6 +1910,10 @@ | |||
<Compile Include="EducationalAdministration\StuGraduateStatistic\StuGraduateStatisticService.cs" /> | |||
<Compile Include="EducationalAdministration\StuGraduateStatistic\StuGraduateStatisticBLL.cs" /> | |||
<Compile Include="EducationalAdministration\StuGraduateStatistic\StuGraduateStatisticIBLL.cs" /> | |||
<Compile Include="EducationalAdministration\TrainEquipmentManage\TrainEquipmentManageEntity.cs" /> | |||
<Compile Include="EducationalAdministration\TrainEquipmentManage\TrainEquipmentManageService.cs" /> | |||
<Compile Include="EducationalAdministration\TrainEquipmentManage\TrainEquipmentManageBLL.cs" /> | |||
<Compile Include="EducationalAdministration\TrainEquipmentManage\TrainEquipmentManageIBLL.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<ProjectReference Include="..\..\..\Learun.Application.Organization\Learun.Application.Organization.csproj"> | |||
@@ -237,6 +237,25 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement | |||
} | |||
} | |||
} | |||
public void ReceivedList(string processId) | |||
{ | |||
try | |||
{ | |||
meetingManagementService.ReceivedList(processId); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
@@ -76,6 +76,9 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement | |||
/// <summary> | |||
/// <returns></returns> | |||
void ChangeStatusByProcessId(string processId, string status, string userId); | |||
void ReceivedList(string processId); | |||
#endregion | |||
} | |||
@@ -1,11 +1,19 @@ | |||
using Dapper; | |||
using Learun.Application.Organization; | |||
using Learun.Application.TwoDevelopment.EducationalAdministration; | |||
using Learun.Application.TwoDevelopment.LR_Desktop; | |||
using Learun.DataBase.Repository; | |||
using Learun.Util; | |||
using Microsoft.AspNet.SignalR.Client; | |||
using Newtonsoft.Json; | |||
using System; | |||
using System.Collections.Generic; | |||
using System.Configuration; | |||
using System.Data; | |||
using System.Linq; | |||
using System.Text; | |||
using System.Threading.Tasks; | |||
using System.Web; | |||
namespace Learun.Application.TwoDevelopment.PersonnelManagement | |||
{ | |||
@@ -467,7 +475,101 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement | |||
} | |||
} | |||
public void ReceivedList(string processId) | |||
{ | |||
var Received = GetMeetingManagementEntityByProcessId(processId); | |||
List<UserEntity> userInfos = new List<UserEntity>(); | |||
foreach (var rid in Received.InternalParticipants.Split(',')) | |||
{ | |||
var user = this.BaseRepository().FindEntity<UserEntity>(m => m.F_UserId == rid); | |||
if (!userInfos.Contains(user)) | |||
{ | |||
userInfos.Add(user); | |||
} | |||
} | |||
//foreach (var uitem in userInfos) | |||
//{ | |||
// SYS_ReceiveMessageEntity receiveMessageEntity = new SYS_ReceiveMessageEntity(); | |||
// receiveMessageEntity.Create(); | |||
// receiveMessageEntity.SENDERID = Received.SENDERID; | |||
// receiveMessageEntity.SENDER = messageentity.SENDER; | |||
// receiveMessageEntity.RECEIVERID = uitem.F_UserId; | |||
// receiveMessageEntity.RECEIVER = uitem.F_RealName; | |||
// receiveMessageEntity.TITLE = messageentity.TITLE; | |||
// receiveMessageEntity.CONTENTS = messageentity.CONTENTS; | |||
// receiveMessageEntity.URL = messageentity.URL; | |||
// receiveMessageEntity.READFLAG = 0; | |||
// receiveMessageEntity.SENDTIME = DateTime.Now; | |||
// receiveMessageEntity.DelFlag = false; | |||
// this.BaseRepository().Insert(receiveMessageEntity); | |||
//} | |||
//读取信息推送管理-会议申请推送(03)的配置 | |||
var informationPushEntity = this.BaseRepository().FindEntity<Sys_InformationPushEntity>(x => x.PushItem == "03"); | |||
if (informationPushEntity != null && informationPushEntity.Status == true) | |||
{ | |||
//微信推送 | |||
try | |||
{ | |||
PushWeixin(userInfos, Received.MeetingTitle); | |||
} | |||
catch (Exception e) | |||
{ | |||
} | |||
//飞星推送 | |||
Task.Run(async () => | |||
{ | |||
using (var hubConnection = new HubConnection(ConfigurationManager.AppSettings["CommunicationServeraddress"])) | |||
{ | |||
var hubProxy = hubConnection.CreateHubProxy("SignalRHub"); | |||
await hubConnection.Start(); | |||
await hubProxy.Invoke("PushAnnouncement", Received.InternalParticipants, Received.MeetingTitle, Util.Str.ReplaceHtml(HttpUtility.HtmlDecode(Received.Content)).Length < 20 ? Util.Str.ReplaceHtml(HttpUtility.HtmlDecode(Received.Content)) : Util.Str.ReplaceHtml(HttpUtility.HtmlDecode(Received.Content)).Substring(0, 20), "mail", string.Join(",", userInfos.Select(m => m.F_UserId)), ""); | |||
} | |||
}); | |||
} | |||
} | |||
public void PushWeixin(List<UserEntity> needpostuserlist, string title) | |||
{ | |||
var WeChatConfigentity = BaseRepository().FindEntity<WeChatConfigEntity>(m => m.IsEnable == true); | |||
string appid = WeChatConfigentity.APPId; | |||
string secret = WeChatConfigentity.secret; | |||
var wechatemplete = BaseRepository() | |||
.FindEntity<WeChatTemplateEntity>(m => m.WeID == WeChatConfigentity.ID && m.TCode == "task"); | |||
string weixintaskurl = wechatemplete.TUrl; | |||
string weixintasktempid = wechatemplete.TempId; | |||
var responsejson = Util.HttpMethods.HttpGet("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + secret); | |||
foreach (UserEntity userinfo in needpostuserlist) | |||
{ | |||
if (userinfo != null && !string.IsNullOrEmpty(userinfo.OpenIdForWeixin)) | |||
{ | |||
//执行推送任务 | |||
if (!string.IsNullOrEmpty(appid) && !string.IsNullOrEmpty(secret) && !string.IsNullOrEmpty(weixintaskurl) && !string.IsNullOrEmpty(weixintasktempid)) | |||
{ | |||
if (!string.IsNullOrEmpty(responsejson)) | |||
{ | |||
var weixintokenobj = JsonConvert.DeserializeObject<dynamic>(responsejson); | |||
if (string.IsNullOrEmpty(weixintokenobj.errcode)) | |||
{ | |||
string access_token = weixintokenobj.access_token; | |||
string jsondata = "{\"touser\":\"" + userinfo.OpenIdForWeixin + "\"," + | |||
"\"template_id\":\"" + weixintasktempid + "\"," + | |||
"\"url\":\"" + weixintaskurl + "/#/?page=mail\"," + | |||
"\"data\":{" + | |||
"\"first\": {\"value\":\"您有新的会议消息\",\"color\":\"#173177\"}," + | |||
"\"keyword1\":{\"value\":\"未读邮件\",\"color\":\"#173177\"}," + | |||
"\"keyword2\": {\"value\":\"" + title + "\",\"color\":\"#173177\"}," + | |||
"\"keyword3\": {\"value\":\"待查看\",\"color\":\"#173177\"}," + | |||
"\"keyword4\": {\"value\":\"您有新的未读会议【" + title + "】\",\"color\":\"#173177\"}" + | |||
"}" + | |||
"}"; | |||
string pushresult = Util.HttpMethods.HttpPost("https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + access_token, jsondata); | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
@@ -222,6 +222,7 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement | |||
if (meetEntity != null) | |||
{ | |||
meetEntity.IsSignIn = true; | |||
meetEntity.SignInTime = DateTime.Now; | |||
this.BaseRepository("CollegeMIS").Update(meetEntity); | |||
result = true; | |||
@@ -1,9 +1,4 @@ | |||
using Learun.Application.TwoDevelopment.PersonnelManagement; | |||
using System; | |||
using System.Collections.Generic; | |||
using System.Linq; | |||
using System.Text; | |||
using System.Threading.Tasks; | |||
namespace Learun.Application.WorkFlow | |||
{ | |||
@@ -17,6 +12,7 @@ namespace Learun.Application.WorkFlow | |||
if (parameter.code == "agree") | |||
{ | |||
meetingManagementIBLL.ChangeStatusByProcessId(parameter.processId, "1", parameter.userId); | |||
meetingManagementIBLL.ReceivedList(parameter.processId); | |||
} | |||
else | |||
{ | |||
@@ -1,6 +1,6 @@ | |||
{ | |||
"name" : "智慧校园", | |||
"appid" : "__UNI__0CE0195", | |||
"appid" : "__UNI__3039520", | |||
"description" : "智慧校园移动端", | |||
"versionName" : "2.1.0", | |||
"versionCode" : 20100, | |||