20210720
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
using EmitMapper;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public static class APIDoorServerService
|
||||
{
|
||||
/// <summary>
|
||||
/// 保存 出入记录
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <param name="idCard">身份证号码</param>
|
||||
/// <param name="isIn">1进0出</param>
|
||||
/// <param name="changeTime">进出时间</param>
|
||||
/// <param name="changeTime">进出方式</param>
|
||||
public static void SaveDoorInOutRecord(string projectId, string idCard, int isIn, DateTime changeTime, string Intype)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
int maxId = 0;
|
||||
var getmax = db.T_d_facerecord.Where(x => x.ProjectId == projectId && x.RoleID == Intype).Select(x => x.ID);
|
||||
if (getmax.Count() > 0)
|
||||
{
|
||||
maxId = getmax.Max() + 1;
|
||||
}
|
||||
string name = string.Empty;
|
||||
var getPerson = db.SitePerson_Person.FirstOrDefault(x => x.IdentityCard == idCard && x.ProjectId ==projectId);
|
||||
if (getPerson != null)
|
||||
{
|
||||
name = getPerson.PersonName;
|
||||
}
|
||||
|
||||
Model.T_d_facerecord newFacerecord = new Model.T_d_facerecord()
|
||||
{
|
||||
NewID = SQLHelper.GetNewID(),
|
||||
ProjectId = projectId,
|
||||
ID = maxId + 1,
|
||||
EmployName = name,
|
||||
EmployNO = idCard,
|
||||
RoleID = Intype,
|
||||
DateTimeRecord = changeTime,
|
||||
RecordDes = Intype,
|
||||
InOrOut = (isIn == 1 ? "进门" : "出门"),
|
||||
};
|
||||
|
||||
db.T_d_facerecord.InsertOnSubmit(newFacerecord);
|
||||
db.SubmitChanges();
|
||||
///// 根据出入记录 写入考勤记录
|
||||
Model.t_d_facerecordItem facerecord = new Model.t_d_facerecordItem
|
||||
{
|
||||
ID = maxId + 1,
|
||||
EmployName = name,
|
||||
IDCardNo = idCard,
|
||||
EmployNO = idCard,
|
||||
ProjectId = projectId,
|
||||
RoleID = Intype,
|
||||
DateTimeRecord = changeTime,
|
||||
RecordDes = Intype,
|
||||
InOrOut = (isIn == 1 ? "进门" : "出门"),
|
||||
};
|
||||
DoorServerService.InsertEmployInOutRecord(facerecord);
|
||||
}
|
||||
APIPersonService.getPersonInOut(projectId, idCard, isIn, changeTime);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -91,6 +91,7 @@
|
||||
<Compile Include="API\APIProjectService.cs" />
|
||||
<Compile Include="API\APIUnitService.cs" />
|
||||
<Compile Include="API\APIUpLoadFileService.cs" />
|
||||
<Compile Include="API\APIDoorServerService.cs" />
|
||||
<Compile Include="API\APIUserService.cs" />
|
||||
<Compile Include="API\HJGL\APIHotProcessHardService.cs" />
|
||||
<Compile Include="API\HJGL\APINDETrustService.cs" />
|
||||
|
||||
@@ -27,9 +27,9 @@ namespace BLL
|
||||
private static IQueryable<Model.T_d_facerecord> qq = from x in db.T_d_facerecord
|
||||
orderby x.DateTimeRecord descending
|
||||
select x;
|
||||
private static IQueryable<Model.T_d_validcardevent> qq1= from x in db.T_d_validcardevent
|
||||
orderby x.RecordDateTime descending
|
||||
select x;
|
||||
private static IQueryable<Model.T_d_validcardevent> qq1 = from x in db.T_d_validcardevent
|
||||
orderby x.RecordDateTime descending
|
||||
select x;
|
||||
|
||||
/// <summary>
|
||||
/// 获取分页列表
|
||||
@@ -42,7 +42,7 @@ namespace BLL
|
||||
if (type == "1")
|
||||
{
|
||||
IQueryable<Model.T_d_validcardevent> q1 = qq1.Where(x => x.ProjectId == projectId);
|
||||
|
||||
|
||||
if (!string.IsNullOrEmpty(startDate))
|
||||
{
|
||||
q1 = q1.Where(e => e.RecordDateTime >= Funs.GetNewDateTime(startDate));
|
||||
@@ -55,8 +55,8 @@ namespace BLL
|
||||
{
|
||||
q1 = from x in q1
|
||||
join y in db.SitePerson_Person on x.IDCardNo equals y.IdentityCard
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
@@ -75,14 +75,14 @@ namespace BLL
|
||||
x.ProjectId,
|
||||
x.EmployName,
|
||||
x.DepartmentID,
|
||||
DepartName=x.DepartmentName,
|
||||
DepartName = x.DepartmentName,
|
||||
x.AreaID,
|
||||
x.AreaName,
|
||||
x.EmployNO,
|
||||
CardID=x.CardNO,
|
||||
DateTimeRecord=x.RecordDateTime,
|
||||
RecordDes=x.RecordAll,
|
||||
InOrOut=(x.InOrOut ==2? "出门" : "进门"),
|
||||
CardID = x.CardNO,
|
||||
DateTimeRecord = x.RecordDateTime,
|
||||
RecordDes = x.RecordAll,
|
||||
InOrOut = (x.InOrOut == 2 ? "出门" : "进门"),
|
||||
};
|
||||
}
|
||||
else
|
||||
@@ -92,9 +92,13 @@ namespace BLL
|
||||
{
|
||||
q = q.Where(e => e.RoleID == "微信端");
|
||||
}
|
||||
else if (type == "3")
|
||||
{
|
||||
q = q.Where(e => e.RoleID == "手动");
|
||||
}
|
||||
else
|
||||
{
|
||||
q = q.Where(e => e.RoleID != "微信端");
|
||||
q = q.Where(e => e.RoleID == "白名单");
|
||||
}
|
||||
if (!string.IsNullOrEmpty(startDate))
|
||||
{
|
||||
@@ -107,9 +111,9 @@ namespace BLL
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
q = from x in q
|
||||
join y in db.SitePerson_Person on x.EmployNO equals y.IdentityCard
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
join y in db.SitePerson_Person on x.EmployNO equals y.IdentityCard
|
||||
where y.UnitId == unitId
|
||||
select x;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
@@ -135,7 +139,7 @@ namespace BLL
|
||||
x.CardID,
|
||||
x.DateTimeRecord,
|
||||
x.RecordDes,
|
||||
x.InOrOut,
|
||||
x.InOrOut,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,6 +44,12 @@ namespace BLL
|
||||
|
||||
db.SitePerson_Checking.InsertOnSubmit(newPersonInfo);
|
||||
db.SubmitChanges();
|
||||
|
||||
if (!string.IsNullOrEmpty(personInfo.ProjectId) && !string.IsNullOrEmpty(personInfo.IdentityCard) && personInfo.IntoOutTime.HasValue)
|
||||
{
|
||||
int inOut = personInfo.IntoOut == "1" ? 1 : 0;
|
||||
APIDoorServerService.SaveDoorInOutRecord(personInfo.ProjectId, personInfo.IdentityCard, inOut, personInfo.IntoOutTime.Value, "手动");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -53,18 +59,21 @@ namespace BLL
|
||||
public static void UpdatePersonInfo(Model.SitePerson_Checking personInfo)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.SitePerson_Checking newPersonInfo = db.SitePerson_Checking.First(e => e.CheckingId == personInfo.CheckingId);
|
||||
newPersonInfo.CardNo = personInfo.CardNo;
|
||||
newPersonInfo.PersonId = personInfo.PersonId;
|
||||
newPersonInfo.ProjectId = personInfo.ProjectId;
|
||||
newPersonInfo.WorkAreaId = personInfo.WorkAreaId;
|
||||
newPersonInfo.WorkAreaName = personInfo.WorkAreaName;
|
||||
newPersonInfo.IdentityCard = personInfo.IdentityCard;
|
||||
newPersonInfo.IntoOutTime = personInfo.IntoOutTime;
|
||||
newPersonInfo.IntoOut = personInfo.IntoOut;
|
||||
newPersonInfo.Address = personInfo.Address;
|
||||
Model.SitePerson_Checking newPersonInfo = db.SitePerson_Checking.FirstOrDefault(e => e.CheckingId == personInfo.CheckingId);
|
||||
if (newPersonInfo != null)
|
||||
{
|
||||
newPersonInfo.CardNo = personInfo.CardNo;
|
||||
newPersonInfo.PersonId = personInfo.PersonId;
|
||||
newPersonInfo.ProjectId = personInfo.ProjectId;
|
||||
newPersonInfo.WorkAreaId = personInfo.WorkAreaId;
|
||||
newPersonInfo.WorkAreaName = personInfo.WorkAreaName;
|
||||
newPersonInfo.IdentityCard = personInfo.IdentityCard;
|
||||
newPersonInfo.IntoOutTime = personInfo.IntoOutTime;
|
||||
newPersonInfo.IntoOut = personInfo.IntoOut;
|
||||
newPersonInfo.Address = personInfo.Address;
|
||||
|
||||
db.SubmitChanges();
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user