@@ -5,6 +5,7 @@ using System.Linq; | |||
using System.Web.Mvc; | |||
using Learun.Application.Organization; | |||
using Learun.Application.Base.AuthorizeModule; | |||
using System; | |||
namespace Learun.Application.Web.Areas.LR_NewWorkFlow.Controllers | |||
{ | |||
@@ -242,6 +243,34 @@ namespace Learun.Application.Web.Areas.LR_NewWorkFlow.Controllers | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 流程时间统计 | |||
/// </summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult StatisticTimeIndex() | |||
{ | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 流程时间统计-饼图 | |||
/// </summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult StatisticTimeForm() | |||
{ | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 流程次数统计 | |||
/// </summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult StatisticCountIndex() | |||
{ | |||
return View(); | |||
} | |||
#endregion | |||
@@ -837,5 +866,74 @@ namespace Learun.Application.Web.Areas.LR_NewWorkFlow.Controllers | |||
return Success("添加成功"); | |||
} | |||
#endregion | |||
#region 流程效率分析 | |||
/// <summary> | |||
/// 获取审批时间统计数据 | |||
/// </summary> | |||
/// <param name="queryJson"></param> | |||
/// <returns></returns> | |||
public ActionResult GetStatisticTimeData(string processId) | |||
{ | |||
var taskdata = nWFTaskIBLL.GetALLTaskList(processId).OrderByDescending(x => x.F_CreateDate); | |||
var legendData = new List<string>(); | |||
var seriesData = new List<WfSchemeReportModelOfPie2>(); | |||
foreach (var item in taskdata) | |||
{ | |||
legendData.Add(item.F_ModifyUserName); | |||
seriesData.Add(new WfSchemeReportModelOfPie2() | |||
{ | |||
name = item.F_ModifyUserName, | |||
value = (item.F_ModifyDate - item.F_CreateDate).HasValue ? (item.F_ModifyDate - item.F_CreateDate).Value.TotalMinutes.ToDecimal(2).ToString() : "0" | |||
}); | |||
} | |||
var jsonData = new | |||
{ | |||
legendData = legendData, | |||
seriesData = seriesData | |||
}; | |||
return Success(jsonData); | |||
} | |||
/// <summary> | |||
/// 获取审批次数统计数据 | |||
/// </summary> | |||
/// <param name="queryJson"></param> | |||
/// <returns></returns> | |||
public ActionResult GetStatisticCountData() | |||
{ | |||
var taskdata = nWFTaskIBLL.GetFinishTaskList(); | |||
var taskgroup = taskdata.GroupBy(x => new { x.F_ModifyUserId, x.F_ModifyUserName }).Select(x => new | |||
{ | |||
userId = x.Key.F_ModifyUserId, | |||
userName = x.Key.F_ModifyUserName, | |||
count = x.Select(y => y.F_Id).Count() | |||
}); | |||
var legendData = new List<string>(); | |||
var seriesData = new List<WfSchemeReportModelOfPie>(); | |||
foreach (var item in taskgroup) | |||
{ | |||
legendData.Add(item.userName); | |||
seriesData.Add(new WfSchemeReportModelOfPie() | |||
{ | |||
value = item.count, | |||
name = item.userName | |||
}); | |||
} | |||
var jsonData = new | |||
{ | |||
legendData = legendData, | |||
seriesData = seriesData | |||
}; | |||
return Success(jsonData); | |||
} | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,25 @@ | |||
| |||
@{ | |||
ViewBag.Title = "流程次数统计"; | |||
Layout = "~/Views/Shared/_ReportTemplate.cshtml"; | |||
} | |||
<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-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> <span class="lrlt">刷新</span></a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-grid" style="overflow:auto;"> | |||
<div id="main" style="float: left; margin-right: 20px; width: 650px; height: 350px;border: 1px solid #ccc;"> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<script src="~/Content/echarts/echarts.js"></script> | |||
@Html.AppendJsFile("/Areas/LR_NewWorkFlow/Views/NWFProcess/StatisticCountIndex.js") |
@@ -0,0 +1,60 @@ | |||
| |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
page.bind(); | |||
page.initChart(); | |||
}, | |||
bind: function () { | |||
// 刷新 | |||
$('#lr-replace').on('click', function () { | |||
location.reload(); | |||
}); | |||
}, | |||
initChart: function () { | |||
var myChart1 = echarts.init(document.getElementById('main')); | |||
learun.httpAsyncPost(top.$.rootUrl + "/LR_NewWorkFlow/NWFProcess/GetStatisticCountData", { }, function (res) { | |||
if (res.code == 200) { | |||
var option1 = { | |||
title: { | |||
text: '审批次数分析图', | |||
x: 'center' | |||
}, | |||
tooltip: { | |||
trigger: 'item', | |||
formatter: "{a} <br/>{b} : {c}次 ({d}%)" | |||
}, | |||
legend: { | |||
orient: 'vertical', | |||
left: 'left', | |||
data: res.data.legendData | |||
}, | |||
series: [ | |||
{ | |||
name: '审批人', | |||
type: 'pie', | |||
radius: '55%', | |||
center: ['50%', '60%'], | |||
data: res.data.seriesData, | |||
itemStyle: { | |||
emphasis: { | |||
shadowBlur: 10, | |||
shadowOffsetX: 0, | |||
shadowColor: 'rgba(0, 0, 0, 0.5)' | |||
} | |||
} | |||
} | |||
] | |||
}; | |||
myChart1.setOption(option1); | |||
} | |||
}); | |||
}, | |||
}; | |||
page.init(); | |||
} | |||
@@ -0,0 +1,18 @@ | |||
| |||
@{ | |||
ViewBag.Title = "审批时间统计"; | |||
Layout = "~/Views/Shared/_WorkFlowNewForm.cshtml"; | |||
} | |||
<div class="lr-layout ui-report"> | |||
<div class="lr-layout-center"> | |||
<div class="lr-layout-wrap lr-layout-wrap-notitle"> | |||
<div class="lr-layout-grid" style="overflow:auto;"> | |||
<div id="main" style="float: left; margin: 20px; width: 650px; height: 350px;border: 1px solid #ccc;"> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<script src="~/Content/echarts/echarts.js"></script> | |||
@Html.AppendJsFile("/Areas/LR_NewWorkFlow/Views/NWFProcess/StatisticTimeForm.js") |
@@ -0,0 +1,58 @@ | |||
var processId = request('processId'); // 流程实例主键 | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
page.bind(); | |||
page.initChart(); | |||
}, | |||
bind: function () { | |||
}, | |||
initChart: function () { | |||
var myChart1 = echarts.init(document.getElementById('main')); | |||
learun.httpAsyncPost(top.$.rootUrl + "/LR_NewWorkFlow/NWFProcess/GetStatisticTimeData", { processId: processId }, function (res) { | |||
if (res.code == 200) { | |||
var option1 = { | |||
title: { | |||
text: '审批时间分析图', | |||
x: 'center' | |||
}, | |||
tooltip: { | |||
trigger: 'item', | |||
formatter: "{a} <br/>{b} : {c}分 ({d}%)" | |||
}, | |||
legend: { | |||
orient: 'vertical', | |||
left: 'left', | |||
data: res.data.legendData | |||
}, | |||
series: [ | |||
{ | |||
name: '审批人', | |||
type: 'pie', | |||
radius: '55%', | |||
center: ['50%', '60%'], | |||
data: res.data.seriesData, | |||
itemStyle: { | |||
emphasis: { | |||
shadowBlur: 10, | |||
shadowOffsetX: 0, | |||
shadowColor: 'rgba(0, 0, 0, 0.5)' | |||
} | |||
} | |||
} | |||
] | |||
}; | |||
myChart1.setOption(option1); | |||
} | |||
}); | |||
}, | |||
}; | |||
page.init(); | |||
} | |||
@@ -0,0 +1,40 @@ | |||
@{ | |||
ViewBag.Title = "流程时间统计"; | |||
Layout = "~/Views/Shared/_Index.cshtml"; | |||
} | |||
<div id="lr_layout" 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="datesearch"></div> | |||
</div> | |||
<div class="lr-layout-tool-item"> | |||
<input id="txt_Keyword" type="text" class="form-control" placeholder="请输入要查询关键字" /> | |||
</div> | |||
<div class="lr-layout-tool-item"> | |||
<a id="btn_Search" class="btn btn-primary btn-sm"><i class="fa fa-search"></i> <span class="lrlg">查询</span></a> | |||
</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_statistic" class="btn btn-default"><i class="fa fa-eye"></i> <span class="lrlg">审批时间统计</span></a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-body" id="gridtable"> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/LR_NewWorkFlow/Views/NWFProcess/StatisticTimeIndex.js") | |||
@@ -0,0 +1,129 @@ | |||
/* | |||
* 版 本 Learun-ADMS V7.0.3 力软敏捷开发框架(http://www.learun.cn) | |||
* Copyright (c) 2013-2018 上海力软信息技术有限公司 | |||
* 创建人:力软-前端开发组 | |||
* 日 期:2018.12.19 | |||
* 描 述:流程时间统计 | |||
*/ | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var categoryId = '2'; | |||
var logbegin = ''; | |||
var logend = ''; | |||
var page = { | |||
init: function () { | |||
page.initGrid(); | |||
page.bind(); | |||
}, | |||
bind: function () { | |||
$('#datesearch').lrdate({ | |||
dfdata: [ | |||
{ name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, | |||
{ name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, | |||
{ name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, | |||
{ name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, | |||
], | |||
// 月 | |||
mShow: false, | |||
premShow: false, | |||
// 季度 | |||
jShow: false, | |||
prejShow: false, | |||
// 年 | |||
ysShow: false, | |||
yxShow: false, | |||
preyShow: false, | |||
yShow: false, | |||
selectfn: function (begin, end) { | |||
logbegin = begin; | |||
logend = end; | |||
page.search(); | |||
} | |||
}); | |||
// 查询 | |||
$('#btn_Search').on('click', function () { | |||
var keyword = $('#txt_Keyword').val(); | |||
page.search({ keyword: keyword }); | |||
}); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
}); | |||
// 审批时间统计 | |||
$('#lr_statistic').on('click', function () { | |||
var processId = $('#gridtable').jfGridValue('F_Id'); | |||
if (learun.checkrow(processId)) { | |||
learun.layerForm({ | |||
id: 'StatisticTimeForm', | |||
title: '审批时间统计', | |||
url: top.$.rootUrl + '/LR_NewWorkFlow/NWFProcess/StatisticTimeForm?processId=' + processId, | |||
height: 600, | |||
width: 1000, | |||
btn:null | |||
}); | |||
} | |||
}); | |||
}, | |||
initGrid: function () { | |||
$('#gridtable').lrAuthorizeJfGrid({ | |||
url: top.$.rootUrl + '/LR_NewWorkFlow/NWFProcess/GetPorcessList', | |||
headData: [ | |||
{ | |||
label: "标题", name: "F_Title", width: 300, align: "left", formatter: function (cellvalue, row) { | |||
if (row.F_SchemeName != row.F_Title && row.F_Title) { | |||
return row.F_SchemeName + "(" + row.F_Title + ")"; | |||
} | |||
else { | |||
return row.F_SchemeName; | |||
} | |||
} | |||
}, | |||
{ | |||
label: "状态", name: "F_EnabledMark", width: 70, align: "center", | |||
formatter: function (cellvalue, row) { | |||
if (row.F_IsFinished == 0) { | |||
if (cellvalue == 1) { | |||
if (row.F_IsUrge == "1" && categoryId == '2') { | |||
return "<span class=\"label label-danger\">催办加急</span>"; | |||
} | |||
return "<span class=\"label label-success\">运行中</span>"; | |||
} else if (cellvalue == 2) { | |||
return "<span class=\"label label-primary\">草稿</span>"; | |||
} else { | |||
return "<span class=\"label label-danger\">作废</span>"; | |||
} | |||
} | |||
else { | |||
return "<span class=\"label label-warning\">结束</span>"; | |||
} | |||
} | |||
}, | |||
{ label: "发起者", name: "F_CreateUserName", width: 80, align: "center" }, | |||
{ | |||
label: "时间", name: "F_CreateDate", width: 150, align: "left", | |||
formatter: function (cellvalue) { | |||
return learun.formatDate(cellvalue, 'yyyy-MM-dd hh:mm:ss'); | |||
} | |||
} | |||
], | |||
mainId: 'F_Id', | |||
isPage: true, | |||
sidx: 'F_CreateDate DESC' | |||
}); | |||
page.search(); | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
param.StartTime = logbegin; | |||
param.EndTime = logend; | |||
param.categoryId = categoryId; | |||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | |||
} | |||
}; | |||
page.init(); | |||
} | |||
@@ -66,6 +66,15 @@ namespace Learun.Application.Web.Areas.LR_ReportModule.Controllers | |||
{ | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 新版流程报表 | |||
/// </summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult NWFSchemeReport() | |||
{ | |||
return View(); | |||
} | |||
#endregion | |||
#region 获取数据 | |||
@@ -0,0 +1,40 @@ | |||
| |||
@{ | |||
ViewBag.Title = "流程报表"; | |||
Layout = "~/Views/Shared/_ReportTemplate.cshtml"; | |||
} | |||
<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"> | |||
<input id="year" type="text" class="form-control lr-input-wdatepicker" onfocus="WdatePicker({ dateFmt:'yyyy',onpicked: function () { $('#year').trigger('change'); } })" placeholder="请选择年"/> | |||
</div> | |||
<div class="lr-layout-tool-item"> | |||
<a id="btn_Search" class="btn btn-primary btn-sm"><i class="fa fa-search"></i> <span class="lrlt">查询</span></a> | |||
</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> <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 id="main1" style="float: left; margin-right: 20px; width: 750px; 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> | |||
@Html.AppendJsFile("/Areas/LR_ReportModule/Views/ReportTemplate/NWFSchemeReport.js") |
@@ -0,0 +1,132 @@ | |||
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').jfGrid({ | |||
url: top.$.rootUrl + '/LR_ReportModule/ReportTemplate/GetWfSchemeReportList', | |||
headData: [ | |||
{ name: "category", label: "分类", width: 100, align: "center" }, | |||
{ name: "name", label: "名称", width: 150, align: "center" }, | |||
{ | |||
name: "kind", label: "类型", width: 100, align: "center", | |||
formatter: function (cellvalue, row) { | |||
if (cellvalue == 0) { | |||
return '<span class=\"label label-warning\" style=\"cursor: pointer;\">系统流程</span>'; | |||
} else { | |||
return '<span class=\"label label-primary\" style=\"cursor: pointer;\">自定义流程</span>'; | |||
} | |||
} | |||
}, | |||
{ name: "total", label: "次数", width: 200, 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 + "/LR_ReportModule/ReportTemplate/GetWfSchemeUseList", { queryJson: JSON.stringify(queryJson) }, function (res) { | |||
if (res.code == 200) { | |||
var option1 = { | |||
title: { | |||
text: year + '年流程使用分析图', | |||
x: 'center' | |||
}, | |||
tooltip: { | |||
trigger: 'item', | |||
formatter: "{a} <br/>{b} : {c}次 ({d}%)" | |||
}, | |||
legend: { | |||
orient: 'vertical', | |||
left: 'left', | |||
data: res.data.legendData | |||
}, | |||
series: [ | |||
{ | |||
name: '流程分类', | |||
type: 'pie', | |||
radius: '55%', | |||
center: ['50%', '60%'], | |||
data: res.data.seriesData, | |||
itemStyle: { | |||
emphasis: { | |||
shadowBlur: 10, | |||
shadowOffsetX: 0, | |||
shadowColor: 'rgba(0, 0, 0, 0.5)' | |||
} | |||
} | |||
} | |||
] | |||
}; | |||
myChart1.setOption(option1); | |||
var option2 = { | |||
title: { | |||
text: year + '年流程使用趋势图', | |||
x: 'center' | |||
}, | |||
legend: { | |||
orient: 'vertical', | |||
left: 'left', | |||
data: res.data.legendData | |||
}, | |||
tooltip: { | |||
trigger: 'axis' | |||
}, | |||
grid: { | |||
left: '15%', | |||
right: '3%', | |||
bottom: '3%', | |||
containLabel: true | |||
}, | |||
xAxis: { | |||
type: 'category', | |||
boundaryGap: false, | |||
data: res.data.xAxis | |||
}, | |||
yAxis: { | |||
type: 'value', | |||
name: '次数' | |||
}, | |||
series: res.data.seriesLineData | |||
}; | |||
myChart2.setOption(option2); | |||
} | |||
}); | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
param.year = year; | |||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | |||
page.initChart(); | |||
} | |||
}; | |||
page.init(); | |||
} | |||
@@ -1269,6 +1269,8 @@ | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\AddTaskForm.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\htPrint.css" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\ContractFiling.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticCountIndex.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticTimeIndex.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\MonitorIndexZiChan.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\MonitorIndexGongWen.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\MonitorIndexXingZhen.js" /> | |||
@@ -1276,6 +1278,7 @@ | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\PersonalFiling.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\SelectUserForm.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\SignForm.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticTimeForm.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\StampInfo\EqualForm.js" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\StampInfo\Form.css" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\StampInfo\Form.js" /> | |||
@@ -1319,6 +1322,7 @@ | |||
<Content Include="Areas\LR_PortalSite\Views\Page\SetContentForm.css" /> | |||
<Content Include="Areas\LR_PortalSite\Views\Page\SetContentForm.js" /> | |||
<Content Include="Areas\LR_PortalSite\Views\Page\SetNameForm.js" /> | |||
<Content Include="Areas\LR_ReportModule\Views\ReportTemplate\NWFSchemeReport.js" /> | |||
<Content Include="Areas\LR_SystemModule\Views\Files\FileAuthAddFrom.js" /> | |||
<Content Include="Areas\LR_SystemModule\Views\Files\FileAuthFrom.js" /> | |||
<Content Include="Areas\LR_SystemModule\Views\Files\FileAuthIndex.js" /> | |||
@@ -7090,6 +7094,10 @@ | |||
<Content Include="Areas\PersonnelManagement\Views\MeetingNotice\Form.cshtml" /> | |||
<Content Include="Areas\PersonnelManagement\Views\MeetingNotice\Index.cshtml" /> | |||
<Content Include="Areas\PersonnelManagement\Views\MeetingManagement\IndexOfMyJoin.cshtml" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticTimeIndex.cshtml" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticTimeForm.cshtml" /> | |||
<Content Include="Areas\LR_NewWorkFlow\Views\NWFProcess\StatisticCountIndex.cshtml" /> | |||
<Content Include="Areas\LR_ReportModule\Views\ReportTemplate\NWFSchemeReport.cshtml" /> | |||
<None Include="Properties\PublishProfiles\FolderProfile.pubxml" /> | |||
<Content Include="Views\Login\Default-beifen.cshtml" /> | |||
<None Include="Properties\PublishProfiles\FolderProfile1.pubxml" /> | |||
@@ -40,6 +40,14 @@ namespace Learun.Application.WorkFlow | |||
public IEnumerable<NWFTaskEntity> GetUnFinishTaskList() { | |||
return nWFTaskSerivce.GetUnFinishTaskList(); | |||
} | |||
/// <summary> | |||
/// 获取所有已完成的任务 | |||
/// </summary> | |||
/// <returns></returns> | |||
public IEnumerable<NWFTaskEntity> GetFinishTaskList() | |||
{ | |||
return nWFTaskSerivce.GetFinishTaskList(); | |||
} | |||
/// <summary> | |||
/// 判断任务是否允许撤销 | |||
@@ -29,6 +29,11 @@ namespace Learun.Application.WorkFlow | |||
/// </summary> | |||
/// <returns></returns> | |||
IEnumerable<NWFTaskEntity> GetUnFinishTaskList(); | |||
/// <summary> | |||
/// 获取所有已完成的任务 | |||
/// </summary> | |||
/// <returns></returns> | |||
IEnumerable<NWFTaskEntity> GetFinishTaskList(); | |||
/// <summary> | |||
/// 判断任务是否允许撤销 | |||
@@ -84,6 +84,28 @@ namespace Learun.Application.WorkFlow | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 获取所有已完成的任务 | |||
/// </summary> | |||
/// <returns></returns> | |||
public IEnumerable<NWFTaskEntity> GetFinishTaskList() | |||
{ | |||
try | |||
{ | |||
return this.BaseRepository().FindList<NWFTaskEntity>(t => t.F_IsFinished == 1 && (t.F_Type == 1 || t.F_Type == 3)); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 判断任务是否允许撤销 | |||
@@ -33,4 +33,15 @@ namespace Learun.Application.WorkFlow | |||
public string stack { get; set; } | |||
public List<int> data { get; set; } | |||
} | |||
public class WfSchemeReportModelOfPie2 | |||
{ | |||
/// <summary> | |||
/// 次数 | |||
/// </summary> | |||
public string value { get; set; } | |||
/// <summary> | |||
/// 类别 | |||
/// </summary> | |||
public string name { get; set; } | |||
} | |||
} |