Commit 0c103126 authored by 黄奎's avatar 黄奎

页面修改

parent 943de1e6
......@@ -63,8 +63,6 @@ namespace Edu.Common
return timeStr;
}
/// <summary>
/// 获取时间格式
/// </summary>
......@@ -223,6 +221,18 @@ namespace Edu.Common
return weekDay;
}
/// <summary>
/// 计算两个时间相差分钟数
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public static int CalcMinutes(DateTime start, DateTime end)
{
int minutes=Convert.ToInt32((end - start).TotalMinutes);
return minutes;
}
/// <summary>
/// 是否为时间型字符串
/// </summary>
......
using Edu.Common.Enum;
using Edu.Common.Enum.Duty;
using System;
using VT.FW.DB;
......@@ -32,9 +33,9 @@ namespace Edu.Model.Entity.Duty
public int DutyMan { get; set; }
/// <summary>
/// 状态(1-打卡,2-交接)
/// 状态
/// </summary>
public int Status { get; set; }
public DutyStatusEnum Status { get; set; }
/// <summary>
/// 打卡时间
......@@ -45,5 +46,15 @@ namespace Edu.Model.Entity.Duty
/// 交接时间
/// </summary>
public DateTime FinishTime { get; set; }
/// <summary>
/// 迟到分钟数
/// </summary>
public int CheckLateTime { get; set; }
/// <summary>
/// 早退分钟数
/// </summary>
public int FinishLateTime { get; set; }
}
}
......@@ -97,6 +97,38 @@ namespace Edu.Model.ViewModel.Duty
/// 交接工作总数
/// </summary>
public int HandoverCount { get; set; }
/// <summary>
/// 上班打卡时间
/// </summary>
public string CheckTimeStr
{
get
{
string str = Common.ConvertHelper.FormatTimeStr(this.CheckTime);
if (str == "")
{
str = "未打卡";
}
return str;
}
}
/// <summary>
/// 下班打卡时间
/// </summary>
public string FinishTimeStr
{
get
{
string str = Common.ConvertHelper.FormatTimeStr(this.FinishTime);
if (str == "")
{
str = "未打卡";
}
return str;
}
}
}
/// <summary>
......
......@@ -47,24 +47,6 @@ namespace Edu.Model.ViewModel.Duty
/// </summary>
public int QShift { get; set; }
/// <summary>
/// 值班状态(见枚举)
/// </summary>
public DutyStatusEnum DutyStatus { get; set; }
/// <summary>
/// 值班状态字符串
/// </summary>
public string DutyStatusStr
{
get
{
string str = Common.Plugin.EnumHelper.ToName(this.DutyStatus);
return str;
}
}
/// <summary>
/// 校区查询
/// </summary>
......
......@@ -768,46 +768,6 @@ namespace Edu.Module.Duty
return result;
}
/// <summary>
/// 计算当前值班人员索引
/// </summary>
/// <param name="planDate">值班日期</param>
/// <param name="PlanDetails">值班班次列表</param>
/// <param name="dutyManId">值班人</param>
/// <returns></returns>
public int CalcCurrentDutyManIndexModule(DateTime planDate, List<RB_Duty_PlanDetails_ViewModel> PlanDetails,int dutyManId)
{
//当前值班人员索引
int currentIndex = 0;
if (Common.ConvertHelper.FormatDate(planDate) == Common.ConvertHelper.FormatDate(DateTime.Now))
{
var currentDayNow = Convert.ToDateTime(Common.ConvertHelper.FormatDate(planDate) + " " + DateTime.Now.ToString("HH:mm:ss"));
for (var i = 0; i < PlanDetails.Count; i++)
{
var sStartTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(planDate) + " " + PlanDetails[i].StartTime);
var sEndTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(planDate) + " " + PlanDetails[i].EndTime);
if (currentDayNow >= sStartTime && currentDayNow <= sEndTime && PlanDetails[i].DutyMan == dutyManId)
{
currentIndex = i;
}
}
}
else
{
var currentDayNow = DateTime.Now;
for (var i = 0; i < PlanDetails.Count; i++)
{
var sStartTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(planDate) + " " + PlanDetails[i].StartTime);
var sEndTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(planDate) + " " + PlanDetails[i].EndTime);
if (currentDayNow >= sStartTime && currentDayNow <= sEndTime && PlanDetails[i].DutyMan == dutyManId)
{
currentIndex = i;
}
}
}
return currentIndex;
}
/// <summary>
/// 计算当前值班人员索引
/// </summary>
......@@ -906,13 +866,35 @@ namespace Edu.Module.Duty
{
{ nameof(RB_Duty_PlanDetails_ViewModel.Status),Status},
};
DateTime dt = DateTime.Now;
var planModel= GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { PlanId = Id, Shift = Shift, QDutyMan = DutyMan.ToString() })?.FirstOrDefault();
var startTime =Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + planModel?.StartTime);
var endTime= Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + planModel?.EndTime);
if (Status == 1)
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.CheckTime), DateTime.Now);
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.CheckTime), dt);
int minute= Common.ConvertHelper.CalcMinutes(startTime, dt);
if (minute > 0)
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.CheckLateTime), minute);
}
else
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.CheckLateTime), 0);
}
}
if (Status == 2)
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.FinishTime), DateTime.Now);
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.FinishTime), dt);
int minute = Common.ConvertHelper.CalcMinutes(dt,endTime);
if (minute > 0)
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.FinishLateTime), minute);
}
else
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.FinishLateTime), 0);
}
}
List<WhereHelper> list = new List<WhereHelper>()
{
......
......@@ -39,6 +39,10 @@ WHERE 1=1
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Duty_PlanDetails_ViewModel.PlanId), query.QPlanIds);
}
if (query.Shift > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_PlanDetails_ViewModel.Shift), query.Shift);
}
if (!string.IsNullOrEmpty(query.QDutyMan))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Duty_PlanDetails_ViewModel.DutyMan), query.QDutyMan);
......
......@@ -77,6 +77,11 @@ namespace Edu.WebApi.Controllers.Duty
qitem.ShiftName,
qitem.DutyStatus,
qitem.DutyStatusStr,
qitem.Status,
qitem.CheckTimeStr,
qitem.FinishTimeStr,
qitem.FinishLateTime,
qitem.CheckLateTime,
})
});
}
......@@ -160,6 +165,8 @@ namespace Edu.WebApi.Controllers.Duty
currentModel.StartTime,
currentModel.EndTime,
PlanList = currentModel?.WorkContentList ?? new List<RB_Duty_PlanWork_ViewModel>(),
currentModel.CheckLateTime,
currentModel.FinishLateTime,
currentModel.BurstCount,
currentModel.HandoverCount,
ReciveMan= jieBanMan,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment