189 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			189 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			C#
		
	
	
	
| using FineUIPro;
 | ||
| using System;
 | ||
| using System.Collections;
 | ||
| using System.Collections.Generic;
 | ||
| using System.Linq;
 | ||
| using System.Text;
 | ||
| 
 | ||
| 
 | ||
| namespace BLL
 | ||
| {
 | ||
| 
 | ||
|     public static class SupervisecheckService
 | ||
|     {
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
|         #region 获取列表
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 记录数
 | ||
|         /// </summary>
 | ||
|         public static int Count { get; set; }
 | ||
| 
 | ||
|         public static IQueryable<Model.ZJ_SuperviseCheck> GetZJ_SuperviseCheckByModle(Model.ZJ_SuperviseCheck table)
 | ||
|         {
 | ||
|             var q = from x in Funs.DB.ZJ_SuperviseCheck
 | ||
|                     where
 | ||
|                         (string.IsNullOrEmpty(table.SuperviseCheckId) ||
 | ||
|                          x.SuperviseCheckId.Contains(table.SuperviseCheckId)) &&
 | ||
|                         (string.IsNullOrEmpty(table.SuperviseCheckReportCode) ||
 | ||
|                          x.SuperviseCheckReportCode.Contains(table.SuperviseCheckReportCode)) &&
 | ||
|                         (string.IsNullOrEmpty(table.ProjectId) || x.ProjectId.Contains(table.ProjectId)) &&
 | ||
|                         (string.IsNullOrEmpty(table.CheckTeam) || x.CheckTeam.Contains(table.CheckTeam)) &&
 | ||
|                         (string.IsNullOrEmpty(table.RecUserId) || x.RecUserId.Contains(table.RecUserId))
 | ||
|                     select x
 | ||
|                 ;
 | ||
| 
 | ||
|             return q;
 | ||
|         }
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 获取分页列表
 | ||
|         /// </summary>
 | ||
|         /// <param name="table"></param>
 | ||
|         /// <param name="grid1"></param>
 | ||
|         /// <returns></returns>
 | ||
|         public static IEnumerable GetListData(Model.ZJ_SuperviseCheck table, Grid grid1)
 | ||
|         {
 | ||
|             var q = GetZJ_SuperviseCheckByModle(table);
 | ||
|             Count = q.Count();
 | ||
|             if (Count == 0)
 | ||
|             {
 | ||
|                 return null;
 | ||
|             }
 | ||
| 
 | ||
|             q = q.Skip(grid1.PageSize * grid1.PageIndex).Take(grid1.PageSize);
 | ||
|             // q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
 | ||
|             return from x in q
 | ||
|                 select new
 | ||
|                 {
 | ||
|                     x.SuperviseCheckId,
 | ||
|                     x.SuperviseCheckReportCode,
 | ||
|                     x.CheckDate,
 | ||
|                     x.ProjectId,
 | ||
|                     x.CheckTeam,
 | ||
|                     x.State,
 | ||
|                     x.RecUserId,
 | ||
|                     x.CreateMan,
 | ||
|                     x.CreateDate
 | ||
| 
 | ||
|                 };
 | ||
|         }
 | ||
| 
 | ||
|         #endregion
 | ||
| 
 | ||
|         public static Model.ZJ_SuperviseCheck GetZJ_SuperviseCheckById(string SuperviseCheckId)
 | ||
|         {
 | ||
|             return Funs.DB.ZJ_SuperviseCheck.FirstOrDefault(x => x.SuperviseCheckId == SuperviseCheckId);
 | ||
|         }
 | ||
| 
 | ||
|         public static Model.ZJ_SuperviseCheck GetZJ_SuperviseCheckByCode(string superviseCheckReportCode)
 | ||
|         {
 | ||
|             return Funs.DB.ZJ_SuperviseCheck.FirstOrDefault(x =>
 | ||
|                 x.SuperviseCheckReportCode == superviseCheckReportCode);
 | ||
|         }
 | ||
| 
 | ||
|         public static void AddZJ_SuperviseCheck(Model.ZJ_SuperviseCheck newtable)
 | ||
|         {
 | ||
| 
 | ||
|             Model.ZJ_SuperviseCheck table = new Model.ZJ_SuperviseCheck
 | ||
|             {
 | ||
|                 SuperviseCheckId = newtable.SuperviseCheckId,
 | ||
|                 SuperviseCheckReportCode = newtable.SuperviseCheckReportCode,
 | ||
|                 CheckDate = newtable.CheckDate,
 | ||
|                 ProjectId = newtable.ProjectId,
 | ||
|                 CheckTeam = newtable.CheckTeam,
 | ||
|                 State = newtable.State,
 | ||
|                 RecUserId = newtable.RecUserId,
 | ||
|                 CreateMan = newtable.CreateMan,
 | ||
|                 CreateDate = newtable.CreateDate
 | ||
|             };
 | ||
|             Funs.DB.ZJ_SuperviseCheck.InsertOnSubmit(table);
 | ||
|             Funs.DB.SubmitChanges();
 | ||
|         }
 | ||
| 
 | ||
| 
 | ||
|         public static void UpdateZJ_SuperviseCheck(Model.ZJ_SuperviseCheck newtable)
 | ||
|         {
 | ||
| 
 | ||
|             Model.ZJ_SuperviseCheck table =
 | ||
|                 Funs.DB.ZJ_SuperviseCheck.FirstOrDefault(x => x.SuperviseCheckId == newtable.SuperviseCheckId);
 | ||
|             if (table != null)
 | ||
|             {
 | ||
|                 table.SuperviseCheckId = newtable.SuperviseCheckId;
 | ||
|                 table.SuperviseCheckReportCode = newtable.SuperviseCheckReportCode;
 | ||
|                 table.CheckDate = newtable.CheckDate;
 | ||
|                 table.ProjectId = newtable.ProjectId;
 | ||
|                 table.CheckTeam = newtable.CheckTeam;
 | ||
|                 table.State = newtable.State;
 | ||
|                 table.RecUserId = newtable.RecUserId;
 | ||
|                 table.CreateMan= newtable.CreateMan;
 | ||
|                 table.CreateDate = newtable.CreateDate;
 | ||
|                 Funs.DB.SubmitChanges();
 | ||
|             }
 | ||
| 
 | ||
|         }
 | ||
| 
 | ||
|         public static void DeleteZJ_SuperviseCheckById(string SuperviseCheckId)
 | ||
|         {
 | ||
| 
 | ||
|             Model.ZJ_SuperviseCheck table =
 | ||
|                 Funs.DB.ZJ_SuperviseCheck.FirstOrDefault(x => x.SuperviseCheckId == SuperviseCheckId);
 | ||
|             if (table != null)
 | ||
|             {
 | ||
|                 SupervisecheckDetailService.DeleteBySuperviseCheckId(table.SuperviseCheckId);
 | ||
|                 Funs.DB.ZJ_SuperviseCheck.DeleteOnSubmit(table);
 | ||
|                 Funs.DB.SubmitChanges();
 | ||
|             }
 | ||
| 
 | ||
|         }
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 根据SuperviseCheckId验证状态
 | ||
|         /// </summary>
 | ||
|         /// <param name="SuperviseCheckId">SuperviseCheckId</param>
 | ||
|         public static void VerifyStateBySuperviseCheckId(string SuperviseCheckId)
 | ||
|         {
 | ||
|             // 获取给定SuperviseCheckId的ZJ_SuperviseCheck_Detail记录的数量
 | ||
|             int detailCount = Funs.DB.ZJ_SuperviseCheck_Detail
 | ||
|                 .Count(x => x.SuperviseCheckId == SuperviseCheckId);
 | ||
| 
 | ||
|             // 获取每个ZJ_SuperviseCheck_Detail记录的AttachFile记录的数量
 | ||
|             int attachCount = Funs.DB.ZJ_SuperviseCheck_Detail
 | ||
|                 .Where(x => x.SuperviseCheckId == SuperviseCheckId)
 | ||
|                 .Sum(x => Funs.DB.AttachFile
 | ||
|                     .Count(y => y.ToKeyId == x.DetailId + "Ref"));
 | ||
| 
 | ||
|             // 如果detailCount为0,则返回
 | ||
|             if (detailCount == 0)
 | ||
|             {
 | ||
|                 return;
 | ||
|             }
 | ||
| 
 | ||
|             // 根据计数确定状态
 | ||
|             int state;
 | ||
|             if (attachCount == 0)
 | ||
|             {
 | ||
|                 state = 1; // 未完成一些更改
 | ||
|             }
 | ||
|             else if (attachCount == detailCount)
 | ||
|             {
 | ||
|                 state = 3; // 所有更改已完成
 | ||
|             }
 | ||
|             else
 | ||
|             {
 | ||
|                 state = 2; // 未完成一些更改
 | ||
|             }
 | ||
| 
 | ||
|             // 更新ZJ_SuperviseCheck记录的状态
 | ||
|             Model.ZJ_SuperviseCheck table =
 | ||
|                 Funs.DB.ZJ_SuperviseCheck.FirstOrDefault(x => x.SuperviseCheckId == SuperviseCheckId);
 | ||
|             if (table != null)
 | ||
|             {
 | ||
|                 table.State = state;
 | ||
|                 Funs.DB.SubmitChanges();
 | ||
|             }
 | ||
|         }
 | ||
|     }
 | ||
| } |