From 7f793f06161f7eda4fc06509a7922efe83ee273b Mon Sep 17 00:00:00 2001 From: zhichao lei <442149704@qq.com> Date: Fri, 30 Oct 2020 15:18:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=87=E5=AE=9A=E5=85=AC=E6=96=87=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E7=9A=84=E7=A7=8D=E7=B1=BB=E5=92=8C=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Department/DepartmentEntity.cs | 6 + .../Controllers/NoticeController.cs | 89 ++++++++ .../LR_OAModule/Views/Notice/FormFlow.cshtml | 55 +++++ .../LR_OAModule/Views/Notice/FormFlow.js | 104 ++++++++++ .../Views/Notice/FormFlowView.cshtml | 55 +++++ .../LR_OAModule/Views/Notice/FormFlowView.js | 95 +++++++++ .../LR_OAModule/Views/Notice/IndexFlow.cshtml | 35 ++++ .../LR_OAModule/Views/Notice/IndexFlow.js | 195 ++++++++++++++++++ .../Views/Department/Form.cshtml | 4 + .../Views/Department/Form.js | 2 + .../Views/Department/Index.js | 12 ++ .../Learun.Application.Web.csproj | 6 + .../Views/LR_Content/script/lr-clientdata.js | 2 +- .../XmlConfig/ioc.config | 2 + .../Learun.Application.OA/News/NewsBLL.cs | 20 ++ .../Learun.Application.OA/News/NewsEntity.cs | 12 ++ .../Learun.Application.OA/News/NewsIBLL.cs | 2 + .../Learun.Application.OA/News/NewsService.cs | 30 +++ .../Learun.Application.OA/Notice/NoticeBLL.cs | 45 +++- .../Notice/NoticeIBLL.cs | 3 + .../Notice/NoticeService.cs | 31 +++ .../Learun.Application.WorkFlow.csproj | 5 + .../NodeMethod/OA_NewsMethod.cs | 26 +++ 23 files changed, 833 insertions(+), 3 deletions(-) create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.js create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.js create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.js create mode 100644 Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/NodeMethod/OA_NewsMethod.cs diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Organization/Department/DepartmentEntity.cs b/Learun.Framework.Ultimate V7/Learun.Application.Organization/Department/DepartmentEntity.cs index 9a8be380c..5aba87495 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Organization/Department/DepartmentEntity.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Organization/Department/DepartmentEntity.cs @@ -158,6 +158,12 @@ namespace Learun.Application.Organization /// [Column("F_MODIFYUSERNAME")] public string F_ModifyUserName { get; set; } + /// + /// 公告类别 + /// + /// + [Column("NOTICECATEGORY")] + public string NoticeCategory { get; set; } /// diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/NoticeController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/NoticeController.cs index b88a70f17..9ddd15687 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/NoticeController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Controllers/NoticeController.cs @@ -8,6 +8,7 @@ using System.Threading.Tasks; using System.Web; using System.Web.Mvc; using Learun.Application.Base.AuthorizeModule; +using Learun.Application.Base.SystemModule; using Learun.Application.Organization; using Learun.Application.TwoDevelopment.LR_Desktop; using Learun.Util.Operat; @@ -31,6 +32,8 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers private WeChatTempletIBLL weChatTempletIbll = new WeChatTempletBLL(); private UserIBLL userIbll = new UserBLL(); private UserRelationIBLL userRelationIBLL = new UserRelationBLL(); + private DataItemIBLL dataItemIbll=new DataItemBLL(); + private DepartmentIBLL departmentIbll=new DepartmentBLL(); #region 视图功能 /// /// 管理页面 @@ -51,6 +54,33 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers return View(); } /// + /// 通知公告(需要审核) + /// + /// + [HttpGet] + public ActionResult IndexFlow() + { + return View(); + } + /// + /// 通知公告表单(需要审核) + /// + /// + [HttpGet] + public ActionResult FormFlow() + { + return View(); + } + /// + /// 通知公告表单(需要审核) + /// + /// + [HttpGet] + public ActionResult FormFlowView() + { + return View(); + } + /// /// 管理页面【查看通知公告】 /// /// @@ -158,6 +188,31 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers data.F_NewsContent = WebHelper.HtmlDecode(data.F_NewsContent); return JsonResult(data); } + + public ActionResult GetNoticeCategoryByDepartment(string departmentId) + { + + var typeList = dataItemIbll.GetDetailList("NoticeCategory"); + var departmentEntity = departmentIbll.GetEntity(departmentId); + List list=new List(); + if (departmentEntity != null) + { + var typetext = departmentEntity.NoticeCategory?.Split(','); + + foreach (var item in typetext) + { + var entity = typeList.FirstOrDefault(a => a.F_ItemValue.Equals(item)); + if (entity != null) + { + list.Add(new {text=entity.F_ItemName,value=entity.F_ItemValue}); + } + } + + } + return JsonResult(list); + + } + #endregion #region 提交数据 @@ -341,5 +396,39 @@ namespace Learun.Application.Web.Areas.LR_OAModule.Controllers } } #endregion + + #region 流程 + + /// + /// 提交 + /// + /// + /// + [HttpPost] + [AjaxOnly] + public ActionResult ChangeStatusById(string keyValue, string processId) + { + noticeIBLL.ChangeStatusById(keyValue, 1, processId); + return Success("操作成功!"); + } + + + /// + /// 获取表单数据 + /// + /// + [HttpGet] + [AjaxOnly] + public ActionResult GetFormDataByProcessId(string processId) + { + NewsEntity OANewsData = noticeIBLL.GetEntityByProcessId(processId); + var jsonData = new + { + OANews = OANewsData, + }; + return Success(jsonData); + } + + #endregion } } \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.cshtml new file mode 100644 index 000000000..806df9397 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.cshtml @@ -0,0 +1,55 @@ +@{ + ViewBag.Title = "发布新闻"; + Layout = "~/Views/Shared/_Form.cshtml"; +} + +
+
+
公告标题*
+ +
+
+
公告类别*
+
+ +
+
+
发布时间*
+ +
+
+
信息来源
+ +
+
+
来源地址
+ +
+
+
接收部门
+
+
+
+
接收岗位
+
+
+
+
下发飞星
+
+
+
+
标题图片
+
+
+
+
公告内容
+
+ @**@ +
+
+ +@* + +*@ +@Html.AppendJsFile("/Areas/LR_OAModule/Views/Notice/FormFlow.js") diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.js new file mode 100644 index 000000000..c9b0395b5 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlow.js @@ -0,0 +1,104 @@ +/* + * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn) + * Copyright (c) 2013-2018 北京泉江科技有限公司 + * 创建人:陈彬彬 + * 日 期:2017.11.11 + * 描 述:公告通知 + */ +var acceptClick; +var keyValue = request('keyValue'); +// 设置权限 +var setAuthorize; +// 设置表单数据 +var setFormData; +var isUpdate; +// 验证数据是否填写完整 +var validForm; +// 保存数据 +var save; +var bootstrap = function ($, learun) { + "use strict"; + var ue; + var page = { + init: function () { + page.bind(); + page.initData(); + }, + bind: function () { + var loginInfo = top.learun.clientdata.get(['userinfo']); + //公告类别 + $('#F_CategoryId').lrselect({ + url: top.$.rootUrl + '/LR_OAModule/Notice/GetNoticeCategoryByDepartment?departmentId=' + loginInfo.departmentId, + text: "text", + value: "value", + select: function (item) { + if (item != null && item != undefined) { + $("#F_Category").val(item.text); + } + } + }); + $('#F_NewsImage').lrUploader(); + $('#F_IsSendFX').lrDataItemSelect({ code: 'YesOrNoBit' }); + $('#F_SendDeptId').lrDepartmentSelect({ type: 'treemultiple' }); + $('#F_SendPostId').lrPostSelect({ type: 'treemultiple' }); + //内容编辑器 + ue = UE.getEditor('editor'); + }, + initData: function () { + if (!!keyValue) { + //$('#form').lrSetFormData(selectedRow); + //$("#F_ReleaseTime").val(learun.formatDate(selectedRow.F_ReleaseTime, 'yyyy/MM/dd hh:mm')); + $.lrSetForm(top.$.rootUrl + '/LR_OAModule/Notice/GetEntity?keyValue=' + keyValue, function (data) { + $('#form').lrSetFormData(data); + setTimeout(function () { + ue.setContent(data.F_NewsContent); + }, 100); + }); + } + } + }; + // 设置表单数据 + setFormData = function (processId) { + if (!!processId) { + $.lrSetForm(top.$.rootUrl + '/LR_OAModule/Notice/GetFormDataByProcessId?processId=' + processId, function (data) { + for (var id in data) { + if (!!data[id] && data[id].length > 0) { + $('#' + id).jfGridSet('refreshdata', data[id]); + } + else { + if (id == 'Sys_ReceiveFile') { + keyValue = data[id].F_DeptRelationId; + } + $('[data-table="' + id + '"]').lrSetFormData(data[id]); + } + } + }); + } + } + // 验证数据是否填写完整 + validForm = function () { + if (!$('#form').lrValidform()) { + return false; + } + return true; + }; + // 保存数据 + save = function (processId, callBack, i) { + var formData = $('body').lrGetFormData(); + if (!!processId) { + formData.RProcessId = processId; + } + var postData = { + strEntity: JSON.stringify(formData) + }; + $.lrSaveForm(top.$.rootUrl + '/LR_OAModule/Notice/SaveForm?keyValue=' + keyValue, postData, function (res) { + // 保存成功后才回调 + if (!!callBack) { + callBack(res, formData, i); + } + }); + }; + page.init(); +} + + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.cshtml new file mode 100644 index 000000000..efbb7051f --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.cshtml @@ -0,0 +1,55 @@ +@{ + ViewBag.Title = "发布新闻"; + Layout = "~/Views/Shared/_Form.cshtml"; +} + +
+
+
公告标题*
+ +
+
+
公告类别*
+
+ +
+
+
发布时间*
+ +
+
+
信息来源
+ +
+
+
来源地址
+ +
+
+
接收部门
+
+
+
+
接收岗位
+
+
+
+
下发飞星
+
+
+
+
标题图片
+
+
+
+
公告内容
+
+ @**@ +
+
+ +@* + +*@ +@Html.AppendJsFile("/Areas/LR_OAModule/Views/Notice/FormFlowView.js") diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.js new file mode 100644 index 000000000..8b193d7b5 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/FormFlowView.js @@ -0,0 +1,95 @@ +/* + * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn) + * Copyright (c) 2013-2018 北京泉江科技有限公司 + * 创建人:陈彬彬 + * 日 期:2017.11.11 + * 描 述:公告通知 + */ +var acceptClick; +var keyValue = request('keyValue'); +// 设置权限 +var setAuthorize; +// 设置表单数据 +var setFormData; +var isUpdate; +// 验证数据是否填写完整 +var validForm; +// 保存数据 +var save; +var bootstrap = function ($, learun) { + "use strict"; + // 设置权限 + setAuthorize = function (data) { + }; + var ue; + var page = { + init: function () { + page.bind(); + page.initData(); + }, + bind: function () { + //公告类别 + $('#F_CategoryId').lrDataItemSelect({ + code: 'NoticeCategory', maxHeight: 230, select: function (item) { + if (item != null && item != undefined) { + $("#F_Category").val(item.text); + } + } + }); + $('#F_NewsImage').lrUploader(); + $('#F_IsSendFX').lrDataItemSelect({ code: 'YesOrNoBit' }); + $('#F_SendDeptId').lrDepartmentSelect({ type: 'treemultiple' }); + $('#F_SendPostId').lrPostSelect({ type: 'treemultiple' }); + //内容编辑器 + ue = UE.getEditor('editor'); + }, + initData: function () { + if (!!keyValue) { + //$('#form').lrSetFormData(selectedRow); + //$("#F_ReleaseTime").val(learun.formatDate(selectedRow.F_ReleaseTime, 'yyyy/MM/dd hh:mm')); + $.lrSetForm(top.$.rootUrl + '/LR_OAModule/Notice/GetEntity?keyValue=' + keyValue, function (data) { + $('#form').lrSetFormData(data); + setTimeout(function () { + ue.setContent(data.F_NewsContent); + }, 100); + }); + } + } + }; + // 设置表单数据 + setFormData = function (processId, param, callback) { + if (!!processId) { + $.lrSetForm(top.$.rootUrl + '/LR_OAModule/Notice/GetFormDataByProcessId?processId=' + processId, function (data) { + for (var id in data) { + if (!!data[id] && data[id].length > 0) { + $('#' + id).jfGridSet('refreshdata', data[id]); + } + else { + $('[data-table="' + id + '"]').lrSetFormData(data[id]); + } + } + }); + } + callback && callback(); + } + // 验证数据是否填写完整 + validForm = function () { + if (!$('#form').lrValidform()) { + return false; + } + return true; + }; + // 保存数据 + save = function (processId, callBack, i) { + var formData = {}; + var res = {}; + res.code = 200; + if (!!processId) { + formData.RProcessId = processId; + } + callBack(res, i); + }; + page.init(); +} + + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.cshtml new file mode 100644 index 000000000..738d300c5 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.cshtml @@ -0,0 +1,35 @@ +@{ + ViewBag.Title = "通知公告"; + Layout = "~/Views/Shared/_Index.cshtml"; +} +
+
+
+
+
+
+ +
+
+  查询 +
+
+
+
+ +
+ +
+
+
+
+
+
+@Html.AppendJsFile("/Areas/LR_OAModule/Views/Notice/IndexFlow.js") + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.js new file mode 100644 index 000000000..fc40d184c --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OAModule/Views/Notice/IndexFlow.js @@ -0,0 +1,195 @@ +/* + * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn) + * Copyright (c) 2013-2018 北京泉江科技有限公司 + * 创建人:陈彬彬 + * 日 期:2017.07.11 + * 描 述:公告通知 + */ +var refreshGirdData; // 更新数据 +var bootstrap = function ($, learun) { + "use strict"; + var processId = ''; + var page = { + init: function () { + page.initGrid(); + page.bind(); + }, + bind: function () { + // 查询 + $('#btn_Search').on('click', function () { + var keyword = $('#txt_Keyword').val(); + page.search({ keyword: keyword }); + }); + // 刷新 + $('#lr_refresh').on('click', function () { + location.reload(); + }); + // 新增 + $('#lr_add').on('click', function () { + learun.layerForm({ + id: 'form', + title: '添加公告', + url: top.$.rootUrl + '/LR_OAModule/Notice/FormFlow', + width: 1000, + height: 650, + maxmin: true, + callBack: function (id) { + var res = false; + // 验证数据 + res = top[id].validForm(); + // 保存数据 + if (res) { + res = top[id].save('', function () { + page.search(); + }); + } + return res; + } + }); + }); + // 编辑 + $('#lr_edit').on('click', function () { + var keyValue = $('#gridtable').jfGridValue('F_NewsId'); + if (learun.checkrow(keyValue)) { + if (keyValue.indexOf(",") != -1) { + learun.alert.warning("只能选择一条记录进行编辑!"); + return false; + } + var SendFlag = $('#gridtable').jfGridValue('F_Status'); + if (SendFlag == "1" || SendFlag == "2") { + learun.alert.warning("当前项目已提交不能编辑!"); + return; + } + learun.layerForm({ + id: 'formedit', + title: '编辑公告', + url: top.$.rootUrl + '/LR_OAModule/Notice/FormFlow?keyValue=' + keyValue, + width: 1000, + height: 650, + maxmin: true, + callBack: function (id) { + return top[id].acceptClick(refreshGirdData); + } + }); + } + }); + // 查看 + $('#lr_view').on('click', function () { + var keyValue = $('#gridtable').jfGridValue('SFileId'); + if (learun.checkrow(keyValue)) { + if (keyValue.indexOf(",") != -1) { + learun.alert.warning("只能选择一条记录查看!"); + return false; + } + learun.layerForm({ + id: 'form', + title: '查看', + url: top.$.rootUrl + '/LR_OAModule/Notice/FormFlow?keyValue=' + keyValue, + width: 800, + height: 700, + btn: null + }); + } + }); + // 删除 + $('#lr_delete').on('click', function () { + var keyValue = $('#gridtable').jfGridValue('F_NewsId'); + if (learun.checkrow(keyValue)) { + learun.layerConfirm('是否确认删除该项!', function (res) { + if (res) { + learun.deleteForm(top.$.rootUrl + '/LR_OAModule/Notice/DeleteForm', { keyValue: keyValue }, function () { + refreshGirdData(); + }); + } + }); + } + }); + //  提交 + $('#lr_submit').on('click', function () { + var keyValue = $('#gridtable').jfGridValue('F_NewsId'); + if (learun.checkrow(keyValue)) { + var SendFlag = $('#gridtable').jfGridValue('F_Status'); + if (SendFlag == "1" || SendFlag=="2") { + learun.alert.warning("当前项目已提交,请耐心等待审批!"); + return; + } + learun.layerConfirm('是否确认提交该项!', function (res) { + if (res) { + processId = learun.newGuid(); + learun.postForm(top.$.rootUrl + '/LR_OAModule/Notice/ChangeStatusById', { keyValue: keyValue, processId: processId }, function (res) { + refreshGirdData(res, {}); + }); + } + }); + } + }); + }, + initGrid: function () { + $('#gridtable').jfGrid({ + url: top.$.rootUrl + '/LR_OAModule/Notice/GetPageList', + headData: [ + { label: '公告标题', name: 'F_FullHead', index: 'F_FullHead', width: 600, align: 'left' }, + { label: '公告类别', name: 'F_Category', index: 'F_Category', width: 100, align: 'center' }, + { + label: "发布时间", name: "F_ReleaseTime", index: "F_ReleaseTime", width: 140, align: "center", + formatter: function (cellvalue) { + return learun.formatDate(cellvalue, 'yyyy-MM-dd hh:mm'); + } + }, + { label: '信息来源', name: 'F_SourceName', index: 'F_SourceName', width: 100, align: 'center' }, + { label: '阅读次数', name: 'F_PV', index: 'F_PV', width: 80, align: 'center' }, + { + label: "审核状态", name: "F_Status", width: 100, align: "left", + formatter: function (cellvalue, row) { + if (cellvalue === "1") { + return '审批中'; + } else if (cellvalue === "2") { + return '通过'; + } else { + return '草稿'; + } + } + }, + { + label: "发布状态", name: "F_EnabledMark", index: "F_EnabledMark", width: 80, align: "center", autowidth: false, + formatter: function (cellvalue) { + if (cellvalue == 1) { + return "已发布"; + } else { + return "未发布"; + } + } + }, + { label: "创建时间", name: "F_CreateDate", index: "F_CreateDate", width: 130, align: "center" } + ], + mainId: 'F_NewsId', + reloadSelected: true, + isMultiselect: true, + isPage: true, + sidx: 'F_CreateDate', + sord: 'desc' + }); + page.search(); + }, + search: function (param) { + $('#gridtable').jfGridSet('reload', param); + } + }; + // 保存数据后回调刷新 + refreshGirdData = function (res, postData) { + if (res && res.code && res.code == 200) { + var postData = { + schemeCode: 'OA_News',// 填写流程对应模板编号 + processId: processId, + level: '1', + }; + learun.httpAsync('Post', top.$.rootUrl + '/LR_NewWorkFlow/NWFProcess/CreateFlow', postData, function (data) { + learun.loading(false); + }); + } + page.search(); + } + page.init(); +} + + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.cshtml index 9afb0a86b..03cd7bd7a 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.cshtml +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.cshtml @@ -36,6 +36,10 @@
+
+
公告类别
+
+
电话号
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.js index 3044cc330..222bbfc67 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Form.js @@ -37,6 +37,8 @@ var bootstrap = function ($, learun) { } } }); + + $('#NoticeCategory').lrDataItemSelect({ code: 'NoticeCategory', type: 'multiple', allowSearch:true }); }, initData: function () { if (!!selectedRow) { diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Index.js index f9b0b91b9..115eacd1a 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Index.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LR_OrganizationModule/Views/Department/Index.js @@ -98,6 +98,18 @@ var bootstrap = function ($, learun) { { label: "部门性质", name: "F_Nature", width: 100, align: "left" }, { label: "负责人", name: "F_Manager", width: 100, align: "left" }, { label: "分管校长", name: "F_SchoolMaster", width: 100, align: "left" }, + { + label: "公告类别", name: "NoticeCategory", width: 200, align: "left" , + formatterAsync: function (callback, value, row, op, $cell) { + learun.clientdata.getsAsync('dataItem', { + key: value, + code: 'NoticeCategory', + callback: function (_data) { + callback(_data); + } + }); + } + }, { label: "电话号", name: "F_OuterPhone", width: 100, align: "left" }, { label: "分机号", name: "F_InnerPhone", width: 60, align: "center" }, { label: "排序", name: "F_Order", width: 60, align: "center" }, 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 69856b9a9..b150c9105 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 @@ -1261,6 +1261,9 @@ + + + @@ -6842,6 +6845,9 @@ + + + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/lr-clientdata.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/lr-clientdata.js index f0f8a5e68..f4c39a842 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/lr-clientdata.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/lr-clientdata.js @@ -400,7 +400,7 @@ else { var data = storage.get("dataItemData").data || {}; - var keyList = op.key.split(','); + var keyList = (op.key || "").split(','); var _text = [] $.each(keyList, function (_index, _item) { var _item = clientAsyncData.dataItem.find(_item, data[op.code] || {}); diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/ioc.config b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/ioc.config index de0d99e24..4b8f5507c 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/ioc.config +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/ioc.config @@ -25,6 +25,7 @@ + @@ -60,6 +61,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsBLL.cs index 995676c50..3fe0bce06 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsBLL.cs @@ -150,6 +150,26 @@ namespace Learun.Application.OA } } } + + public void ChangeStatusByProcessId(string parameterProcessId, int p1) + { + try + { + newsService.ChangeStatusByProcessId(parameterProcessId, p1); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowBusinessException(ex); + } + } + } + #endregion } } diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsEntity.cs index 7a99c3de7..50420fb2c 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsEntity.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsEntity.cs @@ -182,6 +182,18 @@ namespace Learun.Application.OA [Column("F_ISSENDFX")] public bool? F_IsSendFX { get; set; } + /// + /// 流程id + /// + /// + [Column("F_PROGRESSID")] + public string F_ProgressId { get; set; } + /// + /// 审核状态 + /// + /// + [Column("F_STATUS")] + public string F_Status { get; set; } /// diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsIBLL.cs index b0e02367a..5c518a513 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsIBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsIBLL.cs @@ -46,5 +46,7 @@ namespace Learun.Application.OA /// void SaveEntity(string keyValue, NewsEntity newsEntity); #endregion + + void ChangeStatusByProcessId(string parameterProcessId, int p1); } } diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsService.cs index f05f0a6b2..8c7ed29eb 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsService.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/News/NewsService.cs @@ -3,6 +3,7 @@ using Learun.Util; using System; using System.Collections.Generic; using System.Text; +using Spire.Pdf.General.Render.Decode.Jpeg2000.Icc; namespace Learun.Application.OA { @@ -171,5 +172,34 @@ namespace Learun.Application.OA } #endregion + + public void ChangeStatusByProcessId(string parameterProcessId, int status) + { + if (status == 2) + { + try + { + var newEntity = this.BaseRepository() + .FindEntity(a => a.F_ProgressId == parameterProcessId); + if (null != newEntity) + { + newEntity.F_Status = "2"; + } + + this.BaseRepository().Update(newEntity); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowServiceException(ex); + } + } + } + } } } diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeBLL.cs index beec25c85..5f56621d9 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeBLL.cs @@ -121,11 +121,52 @@ namespace Learun.Application.OA /// /// 关键词 /// - public IEnumerable GetList(string keyword, string userId,string categoryId=null) + public IEnumerable GetList(string keyword, string userId, string categoryId = null) { try { - return noticeService.GetList(keyword, userId,categoryId); + return noticeService.GetList(keyword, userId, categoryId); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowBusinessException(ex); + } + } + } + + #endregion + + #region 流程 + public void ChangeStatusById(string keyValue, int status, string processId) + { + try + { + noticeService.ChangeStatusById(keyValue, status, processId); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowBusinessException(ex); + } + } + } + + public NewsEntity GetEntityByProcessId(string processId) + { + try + { + return noticeService.GetEntityByProcessId(processId); } catch (Exception ex) { diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeIBLL.cs index c8e0b31af..c42b9fa5a 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeIBLL.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeIBLL.cs @@ -52,5 +52,8 @@ namespace Learun.Application.OA IEnumerable GetList(string keyword, string userId,string categoryId=null); #endregion + + void ChangeStatusById(string keyValue, int i, string processId); + NewsEntity GetEntityByProcessId(string processId); } } diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeService.cs index 630994f1f..f387aaaab 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeService.cs +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA/Notice/NoticeService.cs @@ -182,5 +182,36 @@ namespace Learun.Application.OA } #endregion + + public void ChangeStatusById(string keyValue, int status, string processId) + { + try + { + BaseRepository().ExecuteBySql($"UPDATE dbo.LR_OA_News SET F_Status='{status}',F_ProgressId='{processId}' WHERE F_NewsId='{keyValue}'", null); + } + catch (Exception ex) + { + throw ExceptionEx.ThrowServiceException(ex); + } + } + + public NewsEntity GetEntityByProcessId(string processId) + { + try + { + return this.BaseRepository().FindEntity(t => t.F_ProgressId == processId); + } + catch (Exception ex) + { + if (ex is ExceptionEx) + { + throw; + } + else + { + throw ExceptionEx.ThrowServiceException(ex); + } + } + } } } diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/Learun.Application.WorkFlow.csproj b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/Learun.Application.WorkFlow.csproj index 7c4b2d075..0c4214c8d 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/Learun.Application.WorkFlow.csproj +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/Learun.Application.WorkFlow.csproj @@ -106,6 +106,7 @@ + @@ -227,6 +228,10 @@ {211fa31a-b9d8-4f48-80cc-573b9410828e} Learun.Application.Message + + {5F3FDF79-A47E-4782-A090-DD0DC2D5CDC1} + Learun.Application.OA + {56f9a112-fd96-4809-98f4-0d7c5de0711b} Learun.Application.TwoDevelopment diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/NodeMethod/OA_NewsMethod.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/NodeMethod/OA_NewsMethod.cs new file mode 100644 index 000000000..d3c1fbcf9 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow/NodeMethod/OA_NewsMethod.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Learun.Application.OA; + +namespace Learun.Application.WorkFlow +{ + public class OA_NewsMethod : IWorkFlowMethod + { + + NewsIBLL newsIBLL=new NewsBLL(); + public void Execute(WfMethodParameter parameter) + { + if (parameter.code == "agree") + { + newsIBLL.ChangeStatusByProcessId(parameter.processId, 2); + } + else + { + newsIBLL.ChangeStatusByProcessId(parameter.processId, 0); + } + } + } +}