using System; using System.Collections.Generic; using System.Linq; using System.Text; using Model; using BLL; using System.Collections; using System.Web.UI.WebControls; namespace BLL { public class Base_TeamGroupService { public static Model.SGGLDB db = Funs.DB; /// /// 记录数 /// public static int count { get; set; } /// /// 定义变量 /// public static IQueryable qq = from x in db.Base_TeamGroup orderby x.TeamGroupCode select x; /// /// 获取分页列表 /// /// /// /// /// /// public static IEnumerable getListData(string projectId, string teamGroupCode, string teamGroupName, string unitId, int startRowIndex, int maximumRows) { IQueryable q = qq; if (!string.IsNullOrEmpty(teamGroupCode)) { q = q.Where(e => e.TeamGroupCode.Contains(teamGroupCode)); } if (!string.IsNullOrEmpty(teamGroupName)) { q = q.Where(e => e.TeamGroupName.Contains(teamGroupName)); } if (unitId != "0") { q = q.Where(e => e.UnitId == unitId); } if (projectId != "0") { q = q.Where(e => e.ProjectId == projectId); } count = q.Count(); if (count == 0) { return new object[] { "" }; } return from x in q.Skip(startRowIndex).Take(maximumRows) select new { x.TeamGroupId, x.TeamGroupCode, x.TeamGroupName, UnitName = (from y in db.Base_Unit where y.UnitId == x.UnitId select y.UnitName).First(), ProjectName = (from y in db.Base_Project where y.ProjectId == x.ProjectId select y.ProjectName).First(), Area = (from y in db.Project_WorkArea where y.WorkAreaId == x.Area select y.WorkAreaCode).First(), x.Remark }; } /// /// 获取列表数 /// /// /// /// /// public static int GetListCount(string projectId, string teamGroupCode, string teamGroupName, string unitId) { return count; } /// /// 根据 /// /// /// public static Model.Base_TeamGroup GetTeamGroupByTeamGroupId(string teamGroupId) { return Funs.DB.Base_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroupId); } /// /// 根据班组名称获取班组信息 /// /// /// public static Model.Base_TeamGroup GetTeamGroupByTeamGroupName(string projectId, string teamGroupName) { return Funs.DB.Base_TeamGroup.FirstOrDefault(e =>e.ProjectId==projectId && e.TeamGroupName == teamGroupName); } /// /// 添加班组信息 /// /// public static void AddTeamGroup(Model.Base_TeamGroup teamGroup) { Model.SGGLDB db = Funs.DB; string newKeyID = SQLHelper.GetNewID(typeof(Model.Base_TeamGroup)); Model.Base_TeamGroup newTeamGroup = new Model.Base_TeamGroup(); newTeamGroup.TeamGroupId = newKeyID; newTeamGroup.TeamGroupCode = teamGroup.TeamGroupCode; newTeamGroup.TeamGroupName = teamGroup.TeamGroupName; newTeamGroup.UnitId = teamGroup.UnitId; newTeamGroup.ProjectId = teamGroup.ProjectId; newTeamGroup.Remark = teamGroup.Remark; newTeamGroup.Area = teamGroup.Area; db.Base_TeamGroup.InsertOnSubmit(newTeamGroup); db.SubmitChanges(); } /// /// 修改班组信息 /// /// public static void UpdateTeamGroup(Model.Base_TeamGroup teamGroup) { Model.SGGLDB db = Funs.DB; Model.Base_TeamGroup newTeamGroup = db.Base_TeamGroup.First(e => e.TeamGroupId == teamGroup.TeamGroupId); newTeamGroup.TeamGroupCode = teamGroup.TeamGroupCode; newTeamGroup.TeamGroupName = teamGroup.TeamGroupName; newTeamGroup.UnitId = teamGroup.UnitId; newTeamGroup.ProjectId = teamGroup.ProjectId; newTeamGroup.Remark = teamGroup.Remark; newTeamGroup.Area = teamGroup.Area; db.SubmitChanges(); } /// /// 是否存在班组编号 /// /// /// true-存在,false-不存在 public static bool IsExistTeamGroupCode(string projectId, string teamGroupCode) { var q = from x in Funs.DB.Base_TeamGroup where x.ProjectId == projectId && x.TeamGroupCode == teamGroupCode select x; if (q.Count() > 0) { return true; } else { return false; } } /// /// 删除班组信息 /// /// public static void DeleteTeamGroup(string teamGroupId) { Model.SGGLDB db = Funs.DB; Model.Base_TeamGroup teamGroup = db.Base_TeamGroup.First(e => e.TeamGroupId == teamGroupId); db.Base_TeamGroup.DeleteOnSubmit(teamGroup); db.SubmitChanges(); } /// /// 根据单位Id和项目ID查询班组信息 /// /// 项目Id /// 单位Id /// 班组信息 public static List GetTeamGroupByUnit(string projectId, string unitId) { return (from x in Funs.DB.Base_TeamGroup where x.ProjectId==projectId && x.UnitId==unitId orderby x.TeamGroupCode select x).ToList(); } /// /// 根据区域获取班组数 /// /// /// public static int GetTeamGroupCountByworkAreaId(string workAreaId) { var q = (from x in Funs.DB.Base_TeamGroup where x.Area == workAreaId select x).ToList(); return q.Count(); } } }