| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using System.Linq; | 
					
						
							|  |  |  |  | using System.Text; | 
					
						
							|  |  |  |  | using System.Collections; | 
					
						
							|  |  |  |  | using System.Web.UI.WebControls; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace BLL | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     public class BreakdownService | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         public static Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 记录数 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         public static int count | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             get; | 
					
						
							|  |  |  |  |             set; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 定义变量 | 
					
						
							|  |  |  |  |         /// </summary>                   | 
					
						
							|  |  |  |  |         private static IQueryable<Model.WBS_Breakdown> qq = from x in db.WBS_Breakdown orderby x.SortIndex select x; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取项目列表 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="searchItem"></param> | 
					
						
							|  |  |  |  |         /// <param name="searchValue"></param> | 
					
						
							|  |  |  |  |         /// <param name="startRowIndex"></param> | 
					
						
							|  |  |  |  |         /// <param name="maximumRows"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static IEnumerable getListData(string divisionId, string name, int startRowIndex, int maximumRows) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             IQueryable<Model.WBS_Breakdown> q = qq; | 
					
						
							|  |  |  |  |             if (!string.IsNullOrEmpty(divisionId)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 q = q.Where(e => e.DivisionId == divisionId); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             if (!string.IsNullOrEmpty(name)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 q = q.Where(e => e.BreakdownName.Contains(name)); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             count = q.Count(); | 
					
						
							|  |  |  |  |             if (count == 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return new object[] { "" }; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return from x in q.Skip(startRowIndex).Take(maximumRows) | 
					
						
							|  |  |  |  |                    select new | 
					
						
							|  |  |  |  |                    { | 
					
						
							|  |  |  |  |                        x.BreakdownId, | 
					
						
							|  |  |  |  |                        x.BreakdownCode, | 
					
						
							|  |  |  |  |                        x.BreakdownName, | 
					
						
							|  |  |  |  |                        x.DivisionId, | 
					
						
							|  |  |  |  |                        x.Basis, | 
					
						
							|  |  |  |  |                        x.CheckPoints, | 
					
						
							|  |  |  |  |                        x.RecordAndCode, | 
					
						
							|  |  |  |  |                        x.Class, | 
					
						
							|  |  |  |  |                        x.Remark, | 
					
						
							|  |  |  |  |                        x.FenBao, | 
					
						
							|  |  |  |  |                        x.WuHuan, | 
					
						
							|  |  |  |  |                        x.JianLi, | 
					
						
							|  |  |  |  |                        x.YeZhu, | 
					
						
							| 
									
										
										
										
											2023-04-24 17:18:08 +08:00
										 |  |  |  |                        x.CheckAcceptType, | 
					
						
							| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  |                        CheckPointsDef = Funs.GetSubStr(x.CheckPoints, 15), | 
					
						
							|  |  |  |  |                        RecordAndCodeDef = Funs.GetSubStr(x.RecordAndCode, 15), | 
					
						
							|  |  |  |  |                        x.ModelURL | 
					
						
							|  |  |  |  |                    }; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取列表数 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="searchItem"></param> | 
					
						
							|  |  |  |  |         /// <param name="searchValue"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static int getListCount(string divisionId, string name) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return count; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 添加分项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="Installation"></param> | 
					
						
							|  |  |  |  |         public static void AddBreakdown(Model.WBS_Breakdown breakdown) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.WBS_Breakdown newBreakdown = new Model.WBS_Breakdown(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             newBreakdown.BreakdownId = breakdown.BreakdownId; | 
					
						
							|  |  |  |  |             newBreakdown.BreakdownCode = breakdown.BreakdownCode; | 
					
						
							|  |  |  |  |             newBreakdown.BreakdownName = breakdown.BreakdownName; | 
					
						
							|  |  |  |  |             newBreakdown.DivisionId = breakdown.DivisionId; | 
					
						
							|  |  |  |  |             newBreakdown.Basis = breakdown.Basis; | 
					
						
							|  |  |  |  |             newBreakdown.CheckPoints = breakdown.CheckPoints; | 
					
						
							|  |  |  |  |             newBreakdown.RecordAndCode = breakdown.RecordAndCode; | 
					
						
							|  |  |  |  |             newBreakdown.Class = breakdown.Class; | 
					
						
							|  |  |  |  |             newBreakdown.SortIndex = breakdown.SortIndex; | 
					
						
							|  |  |  |  |             newBreakdown.Remark = breakdown.Remark; | 
					
						
							|  |  |  |  |             newBreakdown.ModelURL = breakdown.ModelURL; | 
					
						
							|  |  |  |  |             newBreakdown.IsAcceptance = breakdown.IsAcceptance; | 
					
						
							|  |  |  |  |             newBreakdown.FenBao = breakdown.FenBao; | 
					
						
							|  |  |  |  |             newBreakdown.WuHuan = breakdown.WuHuan; | 
					
						
							|  |  |  |  |             newBreakdown.JianLi = breakdown.JianLi; | 
					
						
							|  |  |  |  |             newBreakdown.YeZhu = breakdown.YeZhu; | 
					
						
							| 
									
										
										
										
											2023-04-24 17:18:08 +08:00
										 |  |  |  |             newBreakdown.CheckAcceptType = breakdown.CheckAcceptType; | 
					
						
							| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |             db.WBS_Breakdown.InsertOnSubmit(newBreakdown); | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 修改分项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="breakdown"></param> | 
					
						
							|  |  |  |  |         public static void UpdateBreakdown(Model.WBS_Breakdown breakdown) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.WBS_Breakdown newBreakdown = db.WBS_Breakdown.First(e => e.BreakdownId == breakdown.BreakdownId); | 
					
						
							|  |  |  |  |             newBreakdown.BreakdownCode = breakdown.BreakdownCode; | 
					
						
							|  |  |  |  |             newBreakdown.BreakdownName = breakdown.BreakdownName; | 
					
						
							|  |  |  |  |             newBreakdown.DivisionId = breakdown.DivisionId; | 
					
						
							|  |  |  |  |             newBreakdown.Basis = breakdown.Basis; | 
					
						
							|  |  |  |  |             newBreakdown.CheckPoints = breakdown.CheckPoints; | 
					
						
							|  |  |  |  |             newBreakdown.RecordAndCode = breakdown.RecordAndCode; | 
					
						
							|  |  |  |  |             newBreakdown.Class = breakdown.Class; | 
					
						
							|  |  |  |  |             newBreakdown.SortIndex = breakdown.SortIndex; | 
					
						
							|  |  |  |  |             newBreakdown.Remark = breakdown.Remark; | 
					
						
							|  |  |  |  |             newBreakdown.ModelURL = breakdown.ModelURL; | 
					
						
							|  |  |  |  |             newBreakdown.FenBao = breakdown.FenBao; | 
					
						
							|  |  |  |  |             newBreakdown.WuHuan = breakdown.WuHuan; | 
					
						
							|  |  |  |  |             newBreakdown.JianLi = breakdown.JianLi; | 
					
						
							|  |  |  |  |             newBreakdown.YeZhu = breakdown.YeZhu; | 
					
						
							| 
									
										
										
										
											2023-04-24 17:18:08 +08:00
										 |  |  |  |             newBreakdown.CheckAcceptType = breakdown.CheckAcceptType; | 
					
						
							| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据一个分项信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="breakdownCode"></param> | 
					
						
							|  |  |  |  |         public static void DeleteBreakdown(string breakdownId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.WBS_Breakdown breakdown = db.WBS_Breakdown.First(e => e.BreakdownId == breakdownId); | 
					
						
							|  |  |  |  |             db.WBS_Breakdown.DeleteOnSubmit(breakdown); | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据一个子分部信息删除所有对应分项信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="breakdownCode"></param> | 
					
						
							|  |  |  |  |         public static void DeleteAllBreakdown(string divisionId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             var q = from x in db.WBS_Breakdown where x.DivisionId == divisionId select x; | 
					
						
							|  |  |  |  |             if (q.Count() > 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 db.WBS_Breakdown.DeleteAllOnSubmit(q); | 
					
						
							|  |  |  |  |                 db.SubmitChanges(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取施工分项项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static ListItem[] GetBreakdownNameList() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             var q = (from x in Funs.DB.WBS_Breakdown orderby x.SortIndex select x).ToList(); | 
					
						
							|  |  |  |  |             ListItem[] list = new ListItem[q.Count()]; | 
					
						
							|  |  |  |  |             for (int i = 0; i < q.Count(); i++) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 list[i] = new ListItem(q[i].BreakdownName ?? "", q[i].BreakdownId.ToString()); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return list; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据主键返回一个分项信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="cnProfessionalCode">分项编号</param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static Model.WBS_Breakdown GetBreakdownById(string breakdownId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return Funs.DB.WBS_Breakdown.FirstOrDefault(x => x.BreakdownId == breakdownId); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据子分部Id返回所有分项信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="cnProfessionalCode">分项编号</param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static List<Model.WBS_Breakdown> GetBreakdownsByDivisionId(string divisionId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.WBS_Breakdown where x.DivisionId == divisionId select x).ToList(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 判断分项编号是否存在 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="breakdownCode"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static bool IsExistBreakdownCode(string breakdownCode, string breakdownId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.WBS_Breakdown m = Funs.DB.WBS_Breakdown.FirstOrDefault(e => e.BreakdownCode == breakdownCode && e.BreakdownId != breakdownId); | 
					
						
							|  |  |  |  |             if (m != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return true; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return false; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 判断分项名称是否存在 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="professionalName"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static bool IsExistProfessionalName(string breakdownName, string breakdownId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.WBS_Breakdown m = Funs.DB.WBS_Breakdown.FirstOrDefault(e => e.BreakdownName == breakdownName && e.BreakdownId != breakdownId); | 
					
						
							|  |  |  |  |             if (m != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return true; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return false; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |