20220516 实名制定时器优化、考勤导入、考试接口调整

This commit is contained in:
2022-05-16 11:07:36 +08:00
parent fce7d98592
commit 15256b5c7c
11 changed files with 469 additions and 52 deletions
@@ -11,19 +11,15 @@ namespace BLL
/// <summary>
/// 监视组件
/// </summary>
private static Timer messageTimer;
// private static Timer messageTimer;
/// <summary>
/// 启动监视器,不一定能成功,根据系统设置决定对监视器执行的操作 系统启动5分钟
/// </summary>
public static void StartMonitor()
{
int adTimeJ = Funs.GetNewInt(ConfigurationManager.AppSettings["Intervaltime"]) ?? 30;
//var getSynchroSet = Funs.DB.RealName_SynchroSet.FirstOrDefault();
//if (getSynchroSet != null && getSynchroSet.Intervaltime.HasValue)
//{
// adTimeJ = getSynchroSet.Intervaltime.Value;
//}
public static void StartMonitor(string jtProCode)
{
int adTimeJ = Funs.GetNewInt(ConfigurationManager.AppSettings["Intervaltime"]) ?? 30;
Timer messageTimer = new Timer();
if (messageTimer != null)
{
messageTimer.Stop();
@@ -36,7 +32,8 @@ namespace BLL
{
AutoReset = true
};
messageTimer.Elapsed += new ElapsedEventHandler(AdUserInProcess);
messageTimer.Elapsed += (sender, args) => AdUserInProcess(sender, jtProCode);
//messageTimer.Elapsed += new ElapsedEventHandler(AdUserInProcess);
messageTimer.Interval = 1000 * 60 * adTimeJ;// 60分钟 60000 * adTimeJ;
messageTimer.Start();
}
@@ -47,34 +44,45 @@ namespace BLL
/// </summary>
/// <param name="sender">Timer组件</param>
/// <param name="e">事件参数</param>
private static void AdUserInProcess(object sender, ElapsedEventArgs e)
public static void AdUserInProcess(object sender, string jtProCode)
{
try
{
SynchroSetService.PushCollCompany();
var getRProjects = from x in Funs.DB.RealName_Project
select x;
if (getRProjects.Count() > 0)
if (!string.IsNullOrEmpty(jtProCode))
{
foreach (var item in getRProjects)
{
var getSynchroSet = Funs.DB.RealName_SynchroSet.FirstOrDefault(x => x.ProCode == item.JTproCode);
if (getSynchroSet != null && !string.IsNullOrEmpty(item.JTproCode))
{
SynchroSetService.PushProCollCompany(item.JTproCode);
//SynchroSetService.PushCollTeam(item.ProCode);
//SynchroSetService.getCollTeam(item.ProCode);
SynchroSetService.PushPersons(Const.BtnAdd, item.JTproCode, null);
SynchroSetService.PushPersons(Const.BtnModify, item.JTproCode, null);
SynchroSetService.PushAttendance(item.JTproCode);
SynchroSetService.updatePersonsExitTime(item.JTproCode);
}
}
SynchroSetService.PushProCollCompany(jtProCode);
SynchroSetService.PushCollTeam(jtProCode);
SynchroSetService.getCollTeam(jtProCode);
SynchroSetService.PushPersons(Const.BtnAdd, jtProCode, null);
SynchroSetService.PushPersons(Const.BtnModify, jtProCode, null);
SynchroSetService.PushAttendance(jtProCode);
SynchroSetService.updatePersonsExitTime(jtProCode);
}
//var getRProjects = from x in Funs.DB.RealName_Project
// select x;
//if (getRProjects.Count() > 0)
//{
// foreach (var item in getRProjects)
// {
// var getSynchroSet = Funs.DB.RealName_SynchroSet.FirstOrDefault(x => x.ProCode == item.JTproCode);
// if (getSynchroSet != null && !string.IsNullOrEmpty(item.JTproCode))
// {
// SynchroSetService.PushProCollCompany(item.JTproCode);
// //SynchroSetService.PushCollTeam(item.ProCode);
// //SynchroSetService.getCollTeam(item.ProCode);
// SynchroSetService.PushPersons(Const.BtnAdd, item.JTproCode, null);
// SynchroSetService.PushPersons(Const.BtnModify, item.JTproCode, null);
// SynchroSetService.PushAttendance(item.JTproCode);
// SynchroSetService.updatePersonsExitTime(item.JTproCode);
// }
// }
//}
}
catch (Exception ex)
{
StartMonitor();
StartMonitor(jtProCode);
ErrLogInfo.WriteLog(ex, "数据接口定时器", "RealNameMonitorService.AdUserInProcess");
}
}
+13 -1
View File
@@ -56,6 +56,11 @@ namespace BLL
}
#endregion
public static List<Model.RealName_Project> GetRealNameProject()
{
return (from x in Funs.DB.RealName_Project select x).ToList();
}
#region
/// <summary>
/// 表下拉框
@@ -1426,7 +1431,14 @@ namespace BLL
addTeam(getData.Select(x => x.TeamGroupId).Distinct().ToList(), newToken);
getTeam(proCode, newToken);
addPerson(getData.Select(x => x.PersonId).Distinct().ToList(), newToken);
var getPersonS = getData.Select(x => x.idcardNumber).Distinct().ToList();
foreach (var pitem in getPersonS)
{
PushPersonsByIdentityCard(Const.BtnAdd, proCode, pitem);
PushPersonsByIdentityCard(Const.BtnModify, proCode, pitem);
}
pushContent = JsonConvert.SerializeObject(listObject);
var returndata = BLL.APIGetHttpService.OutsideHttp(url, "POST", null, newToken, pushContent);
if (!string.IsNullOrEmpty(returndata))