@@ -2,23 +2,23 @@ | |||
ViewBag.Title = "授课考勤明细统计"; | |||
Layout = "~/Views/Shared/_Index.cshtml"; | |||
} | |||
<style> | |||
.lr-search-date{ | |||
width:100%; | |||
} | |||
</style> | |||
<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"> | |||
<input id="date" type="text" class="form-control lr-input-wdatepicker" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd',onpicked: function () { $('#date').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 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> | |||
<input id="Date" type="text" class="form-control lr-input-wdatepicker" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd',onpicked: function () { $('#Date').trigger('change'); } })" placeholder="请选择日期" /> | |||
@*<input id="Date" type="text" class="form-control lr-input-wdatepicker" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd',onpicked: function () { $('#Date').trigger('change'); } })" placeholder="请选择日期" />*@ | |||
<div id="datesearch"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">职工编号</div> | |||
@@ -7,7 +7,8 @@ | |||
var refreshGirdData; | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
//var date = ""; | |||
var startTime; | |||
var endTime; | |||
var page = { | |||
init: function () { | |||
page.initGird(); | |||
@@ -17,22 +18,39 @@ var bootstrap = function ($, learun) { | |||
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) { | |||
page.search(queryJson); | |||
}, 250, 400); | |||
// 时间搜索框 | |||
$('#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, | |||
// 默认 | |||
dfvalue: '0', | |||
selectfn: function (begin, end) { | |||
startTime = begin; | |||
endTime = end; | |||
} | |||
}); | |||
//当前年 | |||
var now = learun.formatDate(new Date(), 'yyyy-MM-dd'); | |||
$('#Date').val(now); | |||
//var now = learun.formatDate(new Date(), 'yyyy-MM-dd'); | |||
//$('#Date').val(now); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
}); | |||
//查询 | |||
//$('#btn_Search').on('click', function () { | |||
// date = $('#date').val(); | |||
// if (date == null || date == undefined || date == "") { | |||
// learun.alert.warning("请选择查询时间!"); | |||
// return; | |||
// } | |||
// page.search(); | |||
//}); | |||
// 部门选择 | |||
$('#F_DepartmentId').lrselect({ | |||
type: 'tree', | |||
@@ -135,7 +153,8 @@ var bootstrap = function ($, learun) { | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
//param.Date = date; | |||
param.startTime = startTime; | |||
param.endTime = endTime; | |||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | |||
} | |||
}; | |||
@@ -124,24 +124,29 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
try | |||
{ | |||
var queryParam = queryJson.ToJObject(); | |||
var date = DateTime.Now.ToDateString(); | |||
if (!queryParam["Date"].IsEmpty()) | |||
var datest = DateTime.Now.ToDateString(); | |||
var dateet = datest; | |||
if (!queryParam["startTime"].IsEmpty()) | |||
{ | |||
date = queryParam["Date"].ToDate().ToDateString(); | |||
datest = queryParam["startTime"].ToDate().ToDateString(); | |||
} | |||
if (!queryParam["endTime"].IsEmpty()) | |||
{ | |||
dateet = queryParam["endTime"].ToDate().ToDateString(); | |||
} | |||
var strSql1 = $@"select a.ALTId as ALTIdInArrange,a.LessonDate,a.AcademicYearNo,a.Semester, a.LessonNo, a.LessonName, a.EmpNo as EmpNoInArrange, a.EmpName as EmpNameInArrange,a.ClassroomNo,a.LessonTime, | |||
a.StartTime, a.EndTime,a.LessonSortNo as LessonSortNoInArrange,e.F_DepartmentId,t.* | |||
from ArrangeLessonTerm a | |||
left join Teach_Attendance t on a.ALTId=t.ALTId and t.LessonSortNo='1' | |||
left join EmpInfo e on a.EmpNo=e.EmpNo | |||
where a.LessonDate ='{date}'"; | |||
where a.LessonDate >='{datest}' and a.LessonDate <= '{dateet}'"; | |||
var strSql2 = $@"select a.Id as ALTIdInArrange,a.LessonDate,a.AcademicYearNo, a.Semester, a.LessonNo, a.LessonName,a.EmpNo as EmpNoInArrange, a.EmpName as EmpNameInArrange,a.ClassRoomNo as ClassroomNo,a.LessonSection as LessonTime, | |||
case when LEN(a.LessonTime)>0 then SUBSTRING(a.LessonTime,1,CHARINDEX('-',a.LessonTime)-1) else '' end as StartTime, | |||
case when LEN(a.LessonTime)>0 then SUBSTRING(a.LessonTime,CHARINDEX('-',a.LessonTime)+1,LEN(a.LessonTime)-CHARINDEX('-',a.LessonTime)) else '' end as EndTime, | |||
a.LessonSortNo as LessonSortNoInArrange,e.F_DepartmentId,t.* from ArrangeLessonTermOfElective a | |||
left join Teach_Attendance t on a.Id=t.ALTId and t.LessonSortNo='2' | |||
left join EmpInfo e on a.EmpNo=e.EmpNo | |||
where a.LessonDate='{date}'"; | |||
where a.LessonDate >='{datest}' and a.LessonDate <= '{dateet}'"; | |||
// 虚拟参数 | |||
var dp = new DynamicParameters(new { }); | |||
if (!queryParam["EmpNo"].IsEmpty()) | |||
@@ -220,15 +225,15 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
ClockTime = y.ClockTime, | |||
ClockStatus = y.ClockStatus | |||
}).ToList() | |||
}).OrderBy(x => x.EmpNoInArrange).OrderBy(x => Convert.ToInt32(x.LessonTime.Substring(1))); | |||
}).OrderBy(x => x.LessonDate).ThenBy(x => Convert.ToInt32(x.LessonTime.Substring(1))); | |||
//结果列表 | |||
var result = new List<Teach_attendanceEntity>(); | |||
foreach (var item in data) | |||
{ | |||
//上课时间 | |||
var WorkTimeTemp = string.Format("{0} {1}", date, item.StartTime).ToDate(); | |||
var WorkTimeTemp = string.Format("{0} {1}", item.LessonDate, item.StartTime).ToDate(); | |||
//下课时间 | |||
var CloseTimeTemp = string.Format("{0} {1}", date, item.EndTime).ToDate(); | |||
var CloseTimeTemp = string.Format("{0} {1}", item.LessonDate, item.EndTime).ToDate(); | |||
//课程应工作分钟数 | |||
var WholeMinutes = (CloseTimeTemp - WorkTimeTemp).TotalMinutes.ToInt(); | |||
//上课 | |||