838 lines
37 KiB
C#
838 lines
37 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Linq;
|
|||
|
using System.Linq.Expressions;
|
|||
|
using System.ServiceModel.Syndication;
|
|||
|
using System.Web;
|
|||
|
using System.Web.Security;
|
|||
|
using System.Web.UI.WebControls;
|
|||
|
using Microsoft.Office.Interop.Excel;
|
|||
|
using Microsoft.SqlServer.Dts.Runtime;
|
|||
|
using Model;
|
|||
|
|
|||
|
namespace BLL
|
|||
|
{
|
|||
|
public static class SYPersonService
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 根据卡号查询所有人员的数量
|
|||
|
/// </summary>
|
|||
|
/// <param name="cardNo">卡号</param>
|
|||
|
/// <returns>人员的数量</returns>
|
|||
|
public static int GetPersonCountByCardNo(string projectId, string cardNo)
|
|||
|
{
|
|||
|
var q = (from x in Funs.DB.SY_Person where x.ProjectId == projectId && x.OrderNo == cardNo select x).ToList();
|
|||
|
return q.Count();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 根据身份证号Id获取人员的数量
|
|||
|
/// </summary>
|
|||
|
/// <param name="identityCard">身份证号</param>
|
|||
|
/// <returns>人员的数量</returns>
|
|||
|
public static Model.SY_Person GetPersonCountByIdentityCard(string identityCard, string projectId)
|
|||
|
{
|
|||
|
var q = Funs.DB.SY_Person.FirstOrDefault(x => x.IdentityCard == identityCard && x.ProjectId == projectId);
|
|||
|
return q;
|
|||
|
}
|
|||
|
|
|||
|
public static ListItem[] drpStatesItem()
|
|||
|
{
|
|||
|
return new ListItem[]
|
|||
|
{
|
|||
|
new ListItem("全部", "null"),
|
|||
|
new ListItem("待提交", "0"),
|
|||
|
new ListItem("审核中", "1"),
|
|||
|
new ListItem("作业中", "2"),
|
|||
|
new ListItem("已完成", "3"),
|
|||
|
new ListItem("已取消", "-1"),
|
|||
|
new ListItem("作废", "-2")
|
|||
|
};
|
|||
|
}
|
|||
|
public static List<SY_PersonModel> getPersonList(string projectId, string isUser, string unitId, int pageIndex, out int count)
|
|||
|
{
|
|||
|
List<SY_PersonModel> result;
|
|||
|
using (SUBQHSEDB db = new SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
IQueryable<SY_PersonModel> getLists = (from x in db.SY_Person
|
|||
|
join p in db.Base_Project on x.ProjectId equals p.ProjectId
|
|||
|
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
|||
|
join W in db.Base_WorkPost on x.WorkPostId equals W.WorkPostId
|
|||
|
into zljW
|
|||
|
from W in zljW.DefaultIfEmpty()
|
|||
|
join Installation in db.Project_Installation on x.TeamGroupId equals Installation.InstallationId
|
|||
|
into zljInstallation
|
|||
|
from Installation in zljInstallation.DefaultIfEmpty()
|
|||
|
join Depart in db.Base_Depart on x.DepartId equals Depart.DepartId
|
|||
|
into zljDepart
|
|||
|
from Depart in zljDepart.DefaultIfEmpty()
|
|||
|
where x.ProjectId == projectId
|
|||
|
select new SY_PersonModel
|
|||
|
{
|
|||
|
PersonId = x.PersonId,
|
|||
|
OrderNo = x.OrderNo,
|
|||
|
AddTime = x.AddTime.ToString(),
|
|||
|
PersonName = x.PersonName,
|
|||
|
InTime = x.InTime.ToString(),
|
|||
|
OutTime = x.OutTime.ToString(),
|
|||
|
PersonNo = x.PersonNo,
|
|||
|
IsUsed = x.IsUsed,
|
|||
|
IsUsedName = x.IsUsed.ToString(),
|
|||
|
Account = x.Account,
|
|||
|
ProjectId = x.ProjectId,
|
|||
|
ProjectName = p.ProjectName,
|
|||
|
UnitId = x.UnitId,
|
|||
|
UnitName = y.UnitName,
|
|||
|
Telephone = x.Telephone,
|
|||
|
IdentityCard = x.IdentityCard,
|
|||
|
Password = x.Password,
|
|||
|
DepartId = x.DepartId,
|
|||
|
DepartName = Depart.DepartName,
|
|||
|
RoleId = x.RoleId,
|
|||
|
RoleName = x.RoleName,
|
|||
|
WorkPostId = x.WorkPostId,
|
|||
|
WorkPostName = W.WorkPostName,
|
|||
|
TeamGroupId = x.TeamGroupId,
|
|||
|
TeamGroupName = Installation.InstallationName,
|
|||
|
});
|
|||
|
|
|||
|
if (!string.IsNullOrEmpty(isUser) &&isUser != "-1")
|
|||
|
{
|
|||
|
bool isUsed = (isUser == "1" ? true : false);
|
|||
|
getLists = getLists.Where(p => p.IsUsed== isUsed);
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(unitId))
|
|||
|
{
|
|||
|
getLists = getLists.Where(p => p.UnitId == unitId);
|
|||
|
}
|
|||
|
count = getLists.Count();
|
|||
|
if (pageIndex > 0)
|
|||
|
{
|
|||
|
result = getLists.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList<SY_PersonModel>();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
result = getLists.ToList();
|
|||
|
}
|
|||
|
}
|
|||
|
return result;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
public static List<SY_PersonModel> getPersonByName(string name)
|
|||
|
{
|
|||
|
List<SY_PersonModel> result;
|
|||
|
using (SUBQHSEDB db = new SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
IQueryable<SY_PersonModel> getLists = (from x in db.SY_Person
|
|||
|
join p in db.Base_Project on x.ProjectId equals p.ProjectId
|
|||
|
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
|||
|
join W in db.Base_WorkPost on x.WorkPostId equals W.WorkPostId
|
|||
|
into zljW
|
|||
|
from W in zljW.DefaultIfEmpty()
|
|||
|
join Installation in db.Project_Installation on x.TeamGroupId equals Installation.InstallationId
|
|||
|
into zljInstallation
|
|||
|
from Installation in zljInstallation.DefaultIfEmpty()
|
|||
|
join Depart in db.Base_Depart on x.DepartId equals Depart.DepartId
|
|||
|
into zljDepart
|
|||
|
from Depart in zljDepart.DefaultIfEmpty()
|
|||
|
select new SY_PersonModel
|
|||
|
{
|
|||
|
PersonId = x.PersonId,
|
|||
|
OrderNo = x.OrderNo,
|
|||
|
AddTime = x.AddTime.ToString(),
|
|||
|
PersonName = x.PersonName,
|
|||
|
InTime = x.InTime.ToString(),
|
|||
|
OutTime = x.OutTime.ToString(),
|
|||
|
PersonNo = x.PersonNo,
|
|||
|
IsUsed = x.IsUsed,
|
|||
|
IsUsedName = x.IsUsed.ToString(),
|
|||
|
Account = x.Account,
|
|||
|
ProjectId = x.ProjectId,
|
|||
|
ProjectName = p.ProjectName,
|
|||
|
UnitId = x.UnitId,
|
|||
|
UnitName = y.UnitName,
|
|||
|
Telephone = x.Telephone,
|
|||
|
IdentityCard = x.IdentityCard,
|
|||
|
Password = x.Password,
|
|||
|
DepartId = x.DepartId,
|
|||
|
DepartName = Depart.DepartName,
|
|||
|
RoleId = x.RoleId,
|
|||
|
RoleName = x.RoleName,
|
|||
|
WorkPostId = x.WorkPostId,
|
|||
|
WorkPostName = W.WorkPostName,
|
|||
|
TeamGroupId = x.TeamGroupId,
|
|||
|
TeamGroupName = Installation.InstallationName,
|
|||
|
});
|
|||
|
if (!string.IsNullOrEmpty(name))
|
|||
|
{
|
|||
|
getLists = getLists.Where(p => p.PersonName.Contains(name));
|
|||
|
}
|
|||
|
|
|||
|
result = getLists.ToList();
|
|||
|
}
|
|||
|
return result;
|
|||
|
}
|
|||
|
|
|||
|
public static SY_PersonModel GetPersonById(string personId)
|
|||
|
{
|
|||
|
SY_PersonModel result;
|
|||
|
using (SUBQHSEDB db = new SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
result = (from x in db.SY_Person
|
|||
|
join p in db.Base_Project on x.ProjectId equals p.ProjectId
|
|||
|
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
|||
|
join W in db.Base_WorkPost on x.WorkPostId equals W.WorkPostId
|
|||
|
into zljW
|
|||
|
from W in zljW.DefaultIfEmpty()
|
|||
|
join Installation in db.Project_Installation on x.TeamGroupId equals Installation.InstallationId
|
|||
|
into zljInstallation
|
|||
|
from Installation in zljInstallation.DefaultIfEmpty()
|
|||
|
join Depart in db.Base_Depart on x.DepartId equals Depart.DepartId
|
|||
|
into zljDepart
|
|||
|
from Depart in zljDepart.DefaultIfEmpty()
|
|||
|
where x.PersonId == personId
|
|||
|
select new SY_PersonModel
|
|||
|
{
|
|||
|
PersonId = x.PersonId,
|
|||
|
OrderNo = x.OrderNo,
|
|||
|
AddTime = x.AddTime.ToString(),
|
|||
|
PersonName = x.PersonName,
|
|||
|
InTime = x.InTime.ToString(),
|
|||
|
OutTime = x.OutTime.ToString(),
|
|||
|
PersonNo = x.PersonNo,
|
|||
|
IsUsed = x.IsUsed,
|
|||
|
IsUsedName = x.IsUsed.ToString(),
|
|||
|
Account = x.Account,
|
|||
|
ProjectId = x.ProjectId,
|
|||
|
ProjectName = p.ProjectName,
|
|||
|
UnitId = x.UnitId,
|
|||
|
UnitName = y.UnitName,
|
|||
|
Telephone = x.Telephone,
|
|||
|
IdentityCard = x.IdentityCard,
|
|||
|
Password = x.Password,
|
|||
|
DepartId = x.DepartId,
|
|||
|
DepartName = Depart.DepartName,
|
|||
|
RoleId = x.RoleId,
|
|||
|
RoleName = x.RoleName,
|
|||
|
WorkPostId = x.WorkPostId,
|
|||
|
WorkPostName = W.WorkPostName,
|
|||
|
TeamGroupId = x.TeamGroupId,
|
|||
|
TeamGroupName = Installation.InstallationName,
|
|||
|
}).FirstOrDefault();
|
|||
|
}
|
|||
|
return result;
|
|||
|
}
|
|||
|
|
|||
|
public static SY_Person GetPersonIdByIds(string personId)
|
|||
|
{
|
|||
|
SY_Person result;
|
|||
|
using (SUBQHSEDB db = new SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
result = (from x in db.SY_Person
|
|||
|
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
|||
|
where x.PersonId == personId
|
|||
|
select x).FirstOrDefault<SY_Person>();
|
|||
|
}
|
|||
|
return result;
|
|||
|
}
|
|||
|
|
|||
|
public static int AddPerson(SY_Person person)
|
|||
|
{
|
|||
|
SUBQHSEDB subqhsedb = Funs.DB;
|
|||
|
SY_Person newPerson = new SY_Person
|
|||
|
{
|
|||
|
PersonId = person.PersonId,
|
|||
|
OrderNo =person.OrderNo,
|
|||
|
AddTime =person.AddTime,
|
|||
|
PersonName =person.PersonName,
|
|||
|
InTime =person.InTime,
|
|||
|
OutTime =person.OutTime,
|
|||
|
PersonNo =person.PersonNo,
|
|||
|
IsUsed =person.IsUsed,
|
|||
|
Account =person.Account,
|
|||
|
ProjectId =person.ProjectId,
|
|||
|
UnitId =person.UnitId,
|
|||
|
Telephone =person.Telephone,
|
|||
|
IdentityCard =person.IdentityCard,
|
|||
|
Password =person.Password,
|
|||
|
DepartId =person.DepartId,
|
|||
|
RoleId =person.RoleId,
|
|||
|
RoleName =person.RoleName,
|
|||
|
WorkPostId =person.WorkPostId,
|
|||
|
TeamGroupId =person.TeamGroupId,
|
|||
|
};
|
|||
|
subqhsedb.SY_Person.InsertOnSubmit(newPerson);
|
|||
|
subqhsedb.SubmitChanges();
|
|||
|
|
|||
|
return 1;
|
|||
|
}
|
|||
|
|
|||
|
public static void UpdatePerson(SY_Person person)
|
|||
|
{
|
|||
|
SUBQHSEDB db = Funs.DB;
|
|||
|
SY_Person newPerson = db.SY_Person.FirstOrDefault((SY_Person e) => e.PersonId == person.PersonId);
|
|||
|
if (newPerson != null)
|
|||
|
{
|
|||
|
newPerson.OrderNo = person.OrderNo;
|
|||
|
newPerson.AddTime = person.AddTime;
|
|||
|
newPerson.PersonName = person.PersonName;
|
|||
|
newPerson.InTime = person.InTime;
|
|||
|
newPerson.OutTime = person.OutTime;
|
|||
|
newPerson.PersonNo = person.PersonNo;
|
|||
|
newPerson.IsUsed = person.IsUsed;
|
|||
|
newPerson.Account = person.Account;
|
|||
|
newPerson.ProjectId = person.ProjectId;
|
|||
|
newPerson.UnitId = person.UnitId;
|
|||
|
newPerson.Telephone = person.Telephone;
|
|||
|
newPerson.IdentityCard = person.IdentityCard;
|
|||
|
newPerson.Password = person.Password;
|
|||
|
newPerson.DepartId = person.DepartId;
|
|||
|
newPerson.RoleId = person.RoleId;
|
|||
|
newPerson.RoleName = person.RoleName;
|
|||
|
newPerson.WorkPostId = person.WorkPostId;
|
|||
|
newPerson.TeamGroupId = person.TeamGroupId;
|
|||
|
db.SubmitChanges();
|
|||
|
}
|
|||
|
}
|
|||
|
public static void DeletePersonById(string personId)
|
|||
|
{
|
|||
|
SUBQHSEDB db = Funs.DB;
|
|||
|
SY_Person fireWork = db.SY_Person.FirstOrDefault((SY_Person e) => e.PersonId == personId);
|
|||
|
if (fireWork != null)
|
|||
|
{
|
|||
|
var trainRecordDetails = from x in db.SY_EduTrain_TrainRecordDetail where x.PersonId == personId select x;
|
|||
|
if (trainRecordDetails.Count() > 0)
|
|||
|
{
|
|||
|
db.SY_EduTrain_TrainRecordDetail.DeleteAllOnSubmit(trainRecordDetails);
|
|||
|
db.SubmitChanges();
|
|||
|
}
|
|||
|
//删除特岗人员资质
|
|||
|
var personQuality = SYPersonQualityService.GetPersonQualityByPersonId(personId);
|
|||
|
if (personQuality != null)
|
|||
|
{
|
|||
|
CodeRecordsService.DeleteCodeRecordsByDataId(personQuality.PersonQualityId);//删除编号
|
|||
|
CommonService.DeleteAttachFileById(personQuality.PersonQualityId);//删除附件
|
|||
|
Funs.DB.SY_QualityAudit_PersonQuality.DeleteOnSubmit(personQuality);
|
|||
|
Funs.DB.SubmitChanges();
|
|||
|
}
|
|||
|
db.SY_Person.DeleteOnSubmit(fireWork);
|
|||
|
db.SubmitChanges();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public class SY_PersonModel
|
|||
|
{
|
|||
|
public string PersonId { get; set; }
|
|||
|
public string OrderNo { get; set; }
|
|||
|
public string PersonName { get; set; }
|
|||
|
public string PersonNo { get; set; }
|
|||
|
public string Account { get; set; }
|
|||
|
public string ProjectId { get; set; }
|
|||
|
public string ProjectName { get; set; }
|
|||
|
public string UnitId { get; set; }
|
|||
|
public string UnitName { get; set; }
|
|||
|
public string Telephone { get; set; }
|
|||
|
public string IdentityCard { get; set; }
|
|||
|
public string InTime
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return this.inTime;
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.inTime = Convert.ToDateTime(value).ToString("yyyy-MM-dd");
|
|||
|
}
|
|||
|
}
|
|||
|
public string OutTime
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return this.outTime;
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.outTime = Convert.ToDateTime(value).ToString("yyyy-MM-dd");
|
|||
|
}
|
|||
|
}
|
|||
|
public bool? IsUsed { get; set; }
|
|||
|
public string IsUsedName
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return this.isUsed;
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.isUsed = value == "True" ? "是" : "否";
|
|||
|
}
|
|||
|
}
|
|||
|
private string isUsed;
|
|||
|
public string Password { get; set; }
|
|||
|
public string DepartId { get; set; }
|
|||
|
public string DepartName { get; set; }
|
|||
|
public string RoleId { get; set; }
|
|||
|
public string RoleName { get; set; }
|
|||
|
public string WorkPostId { get; set; }
|
|||
|
public string WorkPostName { get; set; }
|
|||
|
public string AddTime
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return this.addTime;
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.addTime = Convert.ToDateTime(value).ToString("yyyy-MM-dd");
|
|||
|
}
|
|||
|
}
|
|||
|
public string TeamGroupId { get; set; }
|
|||
|
public string TeamGroupName { get; set; }
|
|||
|
private string addTime;
|
|||
|
private string outTime;
|
|||
|
private string inTime;
|
|||
|
}
|
|||
|
|
|||
|
public static SY_InitDropDownList GetPersonDropDownList(string projectId)
|
|||
|
{
|
|||
|
SY_InitDropDownList DropDown = new SY_InitDropDownList();
|
|||
|
DropDown.GetWorkPostList= (from x in Funs.DB.Base_WorkPost orderby x.WorkPostCode select new SY_InitDropDown {KeyId=x.WorkPostId,KeyName=x.WorkPostName }).ToList();
|
|||
|
DropDown.GetDepartList = (from x in Funs.DB.Base_Depart orderby x.DepartCode select new SY_InitDropDown { KeyId = x.DepartId, KeyName = x.DepartName }).ToList();
|
|||
|
DropDown.GetRoleDropDownList = (from x in Funs.DB.Sys_Role where x.IsOffice == true orderby x.RoleCode select new SY_InitDropDown { KeyId = x.RoleId, KeyName = x.RoleName }).ToList();
|
|||
|
if (!string.IsNullOrEmpty(projectId))
|
|||
|
DropDown.TeamGroupDownList = (from x in Funs.DB.Project_Installation where x.ProjectId == projectId select new SY_InitDropDown { KeyId = x.InstallationId, KeyName = x.InstallationName }).ToList();
|
|||
|
else
|
|||
|
DropDown.TeamGroupDownList = (from x in Funs.DB.Project_Installation select new SY_InitDropDown { KeyId = x.InstallationId, KeyName = x.InstallationName }).ToList();
|
|||
|
return DropDown;
|
|||
|
}
|
|||
|
public class SY_InitDropDownList
|
|||
|
{
|
|||
|
public List<SY_InitDropDown> GetWorkPostList { get; set; }
|
|||
|
public List<SY_InitDropDown> GetDepartList { get; set; }
|
|||
|
|
|||
|
public List<SY_InitDropDown> GetRoleDropDownList { get; set; }
|
|||
|
public List<SY_InitDropDown> TeamGroupDownList { get; set; }
|
|||
|
}
|
|||
|
public class SY_InitDropDown
|
|||
|
{
|
|||
|
public string KeyId { get; set; }
|
|||
|
public string KeyName { get; set; }
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
#region 根据identityCard获取人员资质信息
|
|||
|
/// <summary>
|
|||
|
/// 根据identityCard获取人员资质信息
|
|||
|
/// </summary>
|
|||
|
/// <param name="identityCard"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public static List<PersonQualityItemList> getPersonQualitList(string projectId, string unitId,string isQuality, int pageIndex, out int count)
|
|||
|
{
|
|||
|
|
|||
|
List<PersonQualityItemList> result;
|
|||
|
using (SUBQHSEDB db = new SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
IQueryable<PersonQualityItemList> getLists=(from x in db.SY_QualityAudit_PersonQuality
|
|||
|
join y in db.SY_Person on x.PersonId equals y.PersonId
|
|||
|
where y.ProjectId == projectId
|
|||
|
orderby y.IdentityCard
|
|||
|
select new PersonQualityItemList
|
|||
|
{
|
|||
|
PersonQualityId = x.PersonQualityId,
|
|||
|
PersonId = x.PersonId,
|
|||
|
PersonName = y.PersonName,
|
|||
|
IdentityCard = y.IdentityCard,
|
|||
|
ProjectId = y.ProjectId,
|
|||
|
UnitId = y.UnitId,
|
|||
|
UnitName = db.Base_Unit.First(z => z.UnitId == y.UnitId).UnitName,
|
|||
|
UnitCode = db.Base_Unit.First(z => z.UnitId == y.UnitId).UnitCode,
|
|||
|
WorkPostId = y.WorkPostId,
|
|||
|
WorkPostName = db.Base_WorkPost.First(z => z.WorkPostId == y.WorkPostId).WorkPostName,
|
|||
|
CertificateName = x.CertificateName,
|
|||
|
CertificateNo = x.CertificateNo,
|
|||
|
SendUnit = x.SendUnit,
|
|||
|
SendDate = string.Format("{0:yyyy-MM-dd}", x.SendDate),
|
|||
|
LimitDate = string.Format("{0:yyyy-MM-dd}", x.LimitDate),
|
|||
|
LateCheckDate = string.Format("{0:yyyy-MM-dd}", x.LateCheckDate),
|
|||
|
Remark = x.Remark,
|
|||
|
AuditDate = string.Format("{0:yyyy-MM-dd}", x.AuditDate),
|
|||
|
AuditorId = x.AuditorId,
|
|||
|
AuditorName = db.Sys_User.First(z => z.UserId == x.AuditorId).UserName,
|
|||
|
AuditOpinion = x.AuditOpinion,
|
|||
|
States = x.States,
|
|||
|
StatesName = x.States,
|
|||
|
AttachUrl = APIUpLoadFileService.getFileUrl(x.PersonQualityId, null),
|
|||
|
});
|
|||
|
if (!string.IsNullOrEmpty(isQuality)&& isQuality!="-1")
|
|||
|
{
|
|||
|
getLists = getLists.Where(p => p.States == isQuality);
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(unitId))
|
|||
|
{
|
|||
|
getLists = getLists.Where(p => p.UnitId == unitId);
|
|||
|
}
|
|||
|
count = getLists.Count();
|
|||
|
if (pageIndex > 0)
|
|||
|
{
|
|||
|
result = getLists.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList<PersonQualityItemList>();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
result = getLists.ToList();
|
|||
|
}
|
|||
|
}
|
|||
|
return result;
|
|||
|
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 根据identityCard获取人员资质信息
|
|||
|
/// </summary>
|
|||
|
/// <param name="identityCard"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public static PersonQualityItemList getPersonQualityInfo(string personId)
|
|||
|
{
|
|||
|
using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
PersonQualityItemList getQualityItem = new PersonQualityItemList();
|
|||
|
getQualityItem = (from x in db.SY_QualityAudit_PersonQuality
|
|||
|
join y in db.SY_Person on x.PersonId equals y.PersonId
|
|||
|
where x.PersonQualityId == personId || x.PersonId == personId
|
|||
|
orderby y.IdentityCard
|
|||
|
select new PersonQualityItemList
|
|||
|
{
|
|||
|
PersonQualityId = x.PersonQualityId,
|
|||
|
PersonId = x.PersonId,
|
|||
|
PersonName = y.PersonName,
|
|||
|
IdentityCard = y.IdentityCard,
|
|||
|
ProjectId = y.ProjectId,
|
|||
|
UnitId = y.UnitId,
|
|||
|
UnitName = db.Base_Unit.First(z => z.UnitId == y.UnitId).UnitName,
|
|||
|
UnitCode = db.Base_Unit.First(z => z.UnitId == y.UnitId).UnitCode,
|
|||
|
WorkPostId = y.WorkPostId,
|
|||
|
WorkPostName = db.Base_WorkPost.First(z => z.WorkPostId == y.WorkPostId).WorkPostName,
|
|||
|
CertificateName = x.CertificateName,
|
|||
|
CertificateNo = x.CertificateNo,
|
|||
|
SendUnit = x.SendUnit,
|
|||
|
SendDate = string.Format("{0:yyyy-MM-dd}", x.SendDate),
|
|||
|
LimitDate = string.Format("{0:yyyy-MM-dd}", x.LimitDate),
|
|||
|
LateCheckDate = string.Format("{0:yyyy-MM-dd}", x.LateCheckDate),
|
|||
|
Remark = x.Remark,
|
|||
|
AuditDate = string.Format("{0:yyyy-MM-dd}", x.AuditDate),
|
|||
|
AuditorId = x.AuditorId,
|
|||
|
AuditorName = db.Sys_User.First(z => z.UserId == x.AuditorId).UserName,
|
|||
|
AuditOpinion = x.AuditOpinion,
|
|||
|
States = x.States,
|
|||
|
StatesName = x.States,
|
|||
|
AttachUrl = APIUpLoadFileService.getFileUrl(x.PersonQualityId, null),
|
|||
|
}).FirstOrDefault();
|
|||
|
|
|||
|
|
|||
|
return getQualityItem;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 人员资质信息保存方法
|
|||
|
/// <summary>
|
|||
|
/// 人员资质信息保存方法
|
|||
|
/// </summary>
|
|||
|
/// <param name="personQuality">人员信息</param>
|
|||
|
public static void SavePersonQuality(Model.PersonQualityItem personQuality)
|
|||
|
{
|
|||
|
using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString))
|
|||
|
{
|
|||
|
Model.SY_QualityAudit_PersonQuality newPersonQuality = new Model.SY_QualityAudit_PersonQuality
|
|||
|
{
|
|||
|
PersonQualityId = personQuality.PersonQualityId,
|
|||
|
PersonId = personQuality.PersonId,
|
|||
|
CertificateNo = personQuality.CertificateNo,
|
|||
|
CertificateName = personQuality.CertificateName,
|
|||
|
Grade = personQuality.Grade,
|
|||
|
SendUnit = personQuality.SendUnit,
|
|||
|
SendDate = Funs.GetNewDateTime(personQuality.SendDate),
|
|||
|
LimitDate = Funs.GetNewDateTime(personQuality.LimitDate),
|
|||
|
LateCheckDate = Funs.GetNewDateTime(personQuality.LateCheckDate),
|
|||
|
ApprovalPerson = personQuality.ApprovalPerson,
|
|||
|
Remark = personQuality.Remark,
|
|||
|
CompileDate = Funs.GetNewDateTime(personQuality.CompileDate),
|
|||
|
AuditOpinion = personQuality.AuditOpinion,
|
|||
|
States = personQuality.States,
|
|||
|
};
|
|||
|
newPersonQuality.AuditDate = DateTime.Now;
|
|||
|
if (!string.IsNullOrEmpty(personQuality.CertificateId))
|
|||
|
{
|
|||
|
newPersonQuality.CertificateId = personQuality.CertificateId;
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(personQuality.CompileMan))
|
|||
|
{
|
|||
|
newPersonQuality.CompileMan = personQuality.CompileMan;
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(personQuality.AuditorId))
|
|||
|
{
|
|||
|
newPersonQuality.AuditorId = personQuality.AuditorId;
|
|||
|
}
|
|||
|
var getPersonQuality = db.SY_QualityAudit_PersonQuality.FirstOrDefault(x => x.PersonQualityId == newPersonQuality.PersonQualityId || x.PersonId == newPersonQuality.PersonId);
|
|||
|
if (getPersonQuality == null)
|
|||
|
{
|
|||
|
newPersonQuality.PersonQualityId = SQLHelper.GetNewID();
|
|||
|
newPersonQuality.CompileDate = DateTime.Now;
|
|||
|
db.SY_QualityAudit_PersonQuality.InsertOnSubmit(newPersonQuality);
|
|||
|
db.SubmitChanges();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
newPersonQuality.PersonQualityId = getPersonQuality.PersonQualityId;
|
|||
|
getPersonQuality.CertificateId = newPersonQuality.CertificateId;
|
|||
|
getPersonQuality.CertificateNo = newPersonQuality.CertificateNo;
|
|||
|
getPersonQuality.CertificateName = newPersonQuality.CertificateName;
|
|||
|
getPersonQuality.Grade = newPersonQuality.Grade;
|
|||
|
getPersonQuality.SendUnit = newPersonQuality.SendUnit;
|
|||
|
getPersonQuality.SendDate = newPersonQuality.SendDate;
|
|||
|
getPersonQuality.LimitDate = newPersonQuality.LimitDate;
|
|||
|
getPersonQuality.LateCheckDate = newPersonQuality.LateCheckDate;
|
|||
|
getPersonQuality.Remark = newPersonQuality.Remark;
|
|||
|
getPersonQuality.AuditDate = newPersonQuality.AuditDate;
|
|||
|
getPersonQuality.AuditorId = newPersonQuality.AuditorId;
|
|||
|
getPersonQuality.AuditorId = newPersonQuality.AuditorId;
|
|||
|
getPersonQuality.States = newPersonQuality.States;
|
|||
|
db.SubmitChanges();
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(newPersonQuality.PersonQualityId))
|
|||
|
{
|
|||
|
APIUpLoadFileService.SaveAttachUrl(Const.PersonQualityMenuId, newPersonQuality.PersonQualityId, personQuality.AttachUrl, "0");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
public class PersonQualityItemList
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 人员特岗资质ID
|
|||
|
/// </summary>
|
|||
|
public string PersonQualityId
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 人员主键ID
|
|||
|
/// </summary>
|
|||
|
public string PersonId
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 姓名
|
|||
|
/// </summary>
|
|||
|
public string PersonName
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 身份证号码
|
|||
|
/// </summary>
|
|||
|
public string IdentityCard
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 项目id
|
|||
|
/// </summary>
|
|||
|
public string ProjectId
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 项目号
|
|||
|
/// </summary>
|
|||
|
public string ProjectCode
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 项目名称
|
|||
|
/// </summary>
|
|||
|
public string ProjectName
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 单位ID
|
|||
|
/// </summary>
|
|||
|
public string UnitId
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 单位代号
|
|||
|
/// </summary>
|
|||
|
public string UnitCode
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 单位名称
|
|||
|
/// </summary>
|
|||
|
public string UnitName
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 岗位ID
|
|||
|
/// </summary>
|
|||
|
public string WorkPostId { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 岗位名称
|
|||
|
/// </summary>
|
|||
|
public string WorkPostName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 证书名称
|
|||
|
/// </summary>
|
|||
|
public string CertificateName
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 证书编号
|
|||
|
/// </summary>
|
|||
|
public string CertificateNo
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 发证单位
|
|||
|
/// </summary>
|
|||
|
public string SendUnit
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 发证时间
|
|||
|
/// </summary>
|
|||
|
public string SendDate
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 有效期
|
|||
|
/// </summary>
|
|||
|
public string LimitDate
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 有效期
|
|||
|
/// </summary>
|
|||
|
public DateTime? LimitDateD
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 最近复查日期
|
|||
|
/// </summary>
|
|||
|
public string LateCheckDate
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 审核人
|
|||
|
/// </summary>
|
|||
|
public string ApprovalPerson
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 备注
|
|||
|
/// </summary>
|
|||
|
public string Remark
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 审核日期
|
|||
|
/// </summary>
|
|||
|
public string AuditDate
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 审核人ID
|
|||
|
/// </summary>
|
|||
|
public string AuditorId
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 审核人姓名
|
|||
|
/// </summary>
|
|||
|
public string AuditorName
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 审核状态(0-待提交;1-待审核;2-已审核;-1打回)
|
|||
|
/// </summary>
|
|||
|
public string States
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 状态
|
|||
|
/// </summary>
|
|||
|
private string statesName;
|
|||
|
|
|||
|
public string StatesName
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return this.statesName;
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
this.statesName = value == "1" ? "是" : "否";
|
|||
|
}
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 审核意见
|
|||
|
/// </summary>
|
|||
|
public string AuditOpinion
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 证书附件
|
|||
|
/// </summary>
|
|||
|
public string AttachUrl
|
|||
|
{
|
|||
|
get;
|
|||
|
set;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|