175 lines
8.4 KiB
C#
175 lines
8.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace BLL
|
|
{
|
|
public static class CheckNoticeService
|
|
{
|
|
/// <summary>
|
|
/// 根据主键获取检查通知单
|
|
/// </summary>
|
|
/// <param name="checkNoticeId"></param>
|
|
/// <returns></returns>
|
|
public static Model.ProjectSupervision_CheckNotice GetCheckNoticeById(string checkNoticeId)
|
|
{
|
|
return Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNoticeId);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加检查通知单
|
|
/// </summary>
|
|
/// <param name="checkNotice"></param>
|
|
public static void AddCheckNotice(Model.ProjectSupervision_CheckNotice checkNotice)
|
|
{
|
|
Model.ProjectSupervision_CheckNotice newCheckNotice = new Model.ProjectSupervision_CheckNotice();
|
|
newCheckNotice.CheckNoticeId = checkNotice.CheckNoticeId;
|
|
//newCheckNotice.SubjectUnitId = checkNotice.SubjectUnitId;
|
|
newCheckNotice.SubjectUnitAdd = checkNotice.SubjectUnitAdd;
|
|
newCheckNotice.SubjectUnitMan = checkNotice.SubjectUnitMan;
|
|
newCheckNotice.SubjectUnitTel = checkNotice.SubjectUnitTel;
|
|
newCheckNotice.CheckStartTime = checkNotice.CheckStartTime;
|
|
newCheckNotice.CheckEndTime = checkNotice.CheckEndTime;
|
|
//newCheckNotice.SubjectObject = checkNotice.SubjectObject;
|
|
newCheckNotice.CheckTeamLeader = checkNotice.CheckTeamLeader;
|
|
newCheckNotice.CompileMan = checkNotice.CompileMan;
|
|
newCheckNotice.CompileDate = checkNotice.CompileDate;
|
|
newCheckNotice.CheckTeamLeaderName = checkNotice.CheckTeamLeaderName;
|
|
newCheckNotice.UnitId = checkNotice.UnitId;
|
|
newCheckNotice.SexName = checkNotice.SexName;
|
|
newCheckNotice.SubjectProjectId = checkNotice.SubjectProjectId;
|
|
Funs.DB.ProjectSupervision_CheckNotice.InsertOnSubmit(newCheckNotice);
|
|
Funs.DB.SubmitChanges();
|
|
|
|
////组长不为空时 自动将组长添加到检查组
|
|
if (!string.IsNullOrEmpty(newCheckNotice.CheckTeamLeader))
|
|
{
|
|
Model.ProjectSupervision_CheckTeam newCheckTeam = new Model.ProjectSupervision_CheckTeam
|
|
{
|
|
CheckTeamId = SQLHelper.GetNewID(typeof(Model.ProjectSupervision_CheckTeam))
|
|
};
|
|
;
|
|
newCheckTeam.CheckNoticeId = newCheckNotice.CheckNoticeId;
|
|
newCheckTeam.UserId = newCheckNotice.CheckTeamLeader;
|
|
newCheckTeam.SortIndex = 1;
|
|
newCheckTeam.CheckPostName = "组长";
|
|
newCheckTeam.CheckDate = newCheckNotice.CheckStartTime;
|
|
newCheckTeam.UserName = newCheckNotice.CheckTeamLeaderName;
|
|
newCheckTeam.UnitId = newCheckNotice.UnitId;
|
|
newCheckTeam.SexName = newCheckNotice.SexName;
|
|
BLL.CheckTeamService.AddCheckTeam(newCheckTeam);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改检查通知单
|
|
/// </summary>
|
|
/// <param name="checkNotice"></param>
|
|
public static void UpdateCheckNotice(Model.ProjectSupervision_CheckNotice checkNotice)
|
|
{
|
|
Model.ProjectSupervision_CheckNotice newCheckNotice = Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNotice.CheckNoticeId);
|
|
if (newCheckNotice != null)
|
|
{
|
|
//newCheckNotice.SubjectUnitId = checkNotice.SubjectUnitId;
|
|
newCheckNotice.SubjectUnitAdd = checkNotice.SubjectUnitAdd;
|
|
newCheckNotice.SubjectUnitMan = checkNotice.SubjectUnitMan;
|
|
newCheckNotice.SubjectUnitTel = checkNotice.SubjectUnitTel;
|
|
newCheckNotice.CheckStartTime = checkNotice.CheckStartTime;
|
|
newCheckNotice.CheckEndTime = checkNotice.CheckEndTime;
|
|
//newCheckNotice.SubjectObject = checkNotice.SubjectObject;
|
|
newCheckNotice.CheckTeamLeader = checkNotice.CheckTeamLeader;
|
|
newCheckNotice.CompileMan = checkNotice.CompileMan;
|
|
newCheckNotice.CompileDate = checkNotice.CompileDate;
|
|
newCheckNotice.CheckTeamLeaderName = checkNotice.CheckTeamLeaderName;
|
|
newCheckNotice.UnitId = checkNotice.UnitId;
|
|
newCheckNotice.SexName = checkNotice.SexName;
|
|
newCheckNotice.SubjectProjectId = checkNotice.SubjectProjectId;
|
|
Funs.DB.SubmitChanges();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据检查通知Id删除检查通知信息
|
|
/// </summary>
|
|
/// <param name="checkNoticeId"></param>
|
|
public static void DeleteCheckNoticeByCheckNoticeId(string checkNoticeId)
|
|
{
|
|
Model.ProjectSupervision_CheckNotice checkNotice = Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNoticeId);
|
|
if (checkNotice != null)
|
|
{
|
|
//var checkFiles = from x in db.Check_CheckInfo_CheckFile where x.CheckInfoId == checkInfoId select x;
|
|
//if (checkFiles.Count() > 0)
|
|
//{
|
|
// foreach (var item in checkFiles)
|
|
// {
|
|
// BLL.CheckFileService.DeleteCheckFileByCheckFileId(item.CheckFileId);
|
|
// }
|
|
//}
|
|
var checkTeams = from x in Funs.DB.ProjectSupervision_CheckTeam where x.CheckNoticeId == checkNoticeId select x;
|
|
if (checkTeams.Count() > 0)
|
|
{
|
|
foreach (var item in checkTeams)
|
|
{
|
|
BLL.CheckTeamService.DeleteCheckTeamByCheckTeamId(item.CheckTeamId);
|
|
}
|
|
}
|
|
Funs.DB.ProjectSupervision_CheckNotice.DeleteOnSubmit(checkNotice);
|
|
Funs.DB.SubmitChanges();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取监督检查信息
|
|
/// </summary>
|
|
/// <param name="CheckInfoName"></param>
|
|
/// <returns></returns>
|
|
public static List<Model.ProjectSupervision_CheckNotice> GetCheckInfoList(string unitId, string userId, string roleId)
|
|
{
|
|
List<Model.ProjectSupervision_CheckNotice> checkInfoLists = new List<Model.ProjectSupervision_CheckNotice>();
|
|
var role = BLL.RoleService.GetRoleByRoleId(roleId);
|
|
if (userId == BLL.Const.sysglyId || (BLL.CommonService.IsMainUnitOrAdmin(unitId) && role != null))
|
|
{
|
|
checkInfoLists = (from x in Funs.DB.ProjectSupervision_CheckNotice orderby x.CheckStartTime select x).ToList();
|
|
}
|
|
else
|
|
{
|
|
var sysUser = BLL.UserService.GetUserByUserId(userId);
|
|
if (sysUser != null)
|
|
{
|
|
var checkInfoIdList = (from x in Funs.DB.ProjectSupervision_CheckTeam
|
|
where x.UserName == sysUser.UserName && x.UnitId == sysUser.UnitId
|
|
select x.CheckNoticeId).Distinct().ToList();
|
|
if (checkInfoIdList.Count() > 0)
|
|
{
|
|
checkInfoLists = (from x in Funs.DB.ProjectSupervision_CheckNotice
|
|
where checkInfoIdList.Contains(x.CheckNoticeId)
|
|
orderby x.CheckStartTime
|
|
select x).ToList();
|
|
}
|
|
|
|
var checkInfoIdList1 = (from x in Funs.DB.ProjectSupervision_CheckNotice
|
|
where x.CompileMan == userId
|
|
orderby x.CheckStartTime
|
|
select x).ToList();
|
|
if (checkInfoIdList1.Count() > 0)
|
|
{
|
|
if (checkInfoLists.Count() > 0)
|
|
{
|
|
checkInfoLists.AddRange(checkInfoIdList1);
|
|
}
|
|
else
|
|
{
|
|
checkInfoLists = checkInfoIdList1;
|
|
}
|
|
}
|
|
|
|
checkInfoLists = checkInfoLists.Distinct().ToList();
|
|
}
|
|
}
|
|
return checkInfoLists;
|
|
}
|
|
}
|
|
}
|