197 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			197 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| using System.Text;
 | |
| using System.Collections;
 | |
| 
 | |
| namespace BLL
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 无损检测管理
 | |
|     /// </summary>
 | |
|     public static class NondestructiveTestService
 | |
|     {
 | |
|         public static Model.SGGLDB db = Funs.DB;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 记录数
 | |
|         /// </summary>
 | |
|         private static int count
 | |
|         {
 | |
|             get;
 | |
|             set;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取分页列表数
 | |
|         /// </summary>
 | |
|         /// <param name="projectId"></param>
 | |
|         /// <param name="UnitWorkId"></param>
 | |
|         /// <param name="unitId"></param>
 | |
|         /// <param name="welderCode"></param>
 | |
|         /// <param name="startDate"></param>
 | |
|         /// <param name="endDate"></param>
 | |
|         /// <param name="startRowIndex"></param>
 | |
|         /// <param name="maximumRows"></param>
 | |
|         /// <returns></returns>
 | |
|         public static IEnumerable GetListData(string projectId, string UnitWorkId, string unitId, string welderCode, string startDate, string endDate, int startRowIndex, int maximumRows)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             IQueryable<Model.ProcessControl_NondestructiveTest> q = from x in db.ProcessControl_NondestructiveTest
 | |
|                                                                     where x.ProjectId == projectId
 | |
|                                                                     orderby x.NondestructiveTestDate descending
 | |
|                                                                     select x;
 | |
|             if (UnitWorkId != "0")
 | |
|             {
 | |
|                 q = q.Where(e => e.UnitWorkId == UnitWorkId);
 | |
|             }
 | |
|             if (unitId != "0")
 | |
|             {
 | |
|                 q = q.Where(e => e.UnitId == unitId);
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(welderCode))
 | |
|             {
 | |
|                 q = q.Where(e => e.WelderCode.Contains(welderCode));
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(startDate) && !string.IsNullOrEmpty(endDate))
 | |
|             {
 | |
|                 q = q.Where(e => e.NondestructiveTestDate >= Funs.GetNewDateTime(startDate) && e.NondestructiveTestDate <= Funs.GetNewDateTime(endDate));
 | |
|             }
 | |
|             count = q.Count();
 | |
|             if (count == 0)
 | |
|             {
 | |
|                 return new object[] { "" };
 | |
|             }
 | |
|             return from x in q.Skip(startRowIndex).Take(maximumRows)
 | |
|                    select new
 | |
|                    {
 | |
|                        x.NondestructiveTestId,
 | |
|                        x.ProjectId,
 | |
|                        InstallationName = (from y in db.WBS_UnitWork where y.UnitWorkId == x.UnitWorkId select y.UnitWorkName).FirstOrDefault(),
 | |
|                        UnitName = (from y in db.Base_Unit where y.UnitId == x.UnitId select y.UnitName).FirstOrDefault(),
 | |
|                        //ProfessionalName = (from y in db.WBS_CNProfessional where y.CNProfessionalId == x.CNProfessionalId select y.ProfessionalName).FirstOrDefault(),
 | |
|                        x.WelderCode,
 | |
|                        x.NondestructiveTestCode,
 | |
|                        x.PieceCount,
 | |
|                        x.OnceQualifiedCount,
 | |
|                        x.NondestructiveTestDate,
 | |
|                        InspectionAreaName = (from y in db.Base_InspectionArea where y.InspectionAreaId == x.InspectionAreaId select y.InspectionAreaName).FirstOrDefault(),
 | |
|                    };
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取分页列表数
 | |
|         /// </summary>
 | |
|         /// <param name="projectId"></param>
 | |
|         /// <param name="UnitWorkId"></param>
 | |
|         /// <param name="unitId"></param>
 | |
|         /// <param name="welderCode"></param>
 | |
|         /// <param name="startDate"></param>
 | |
|         /// <param name="endDate"></param>
 | |
|         /// <returns></returns>
 | |
|         public static int GetListCount(string projectId, string UnitWorkId, string unitId, string welderCode, string startDate, string endDate)
 | |
|         {
 | |
|             return count;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据主键获取无损检测管理
 | |
|         /// </summary>
 | |
|         /// <param name="nondestructiveTestId"></param>
 | |
|         /// <returns></returns>
 | |
|         public static Model.ProcessControl_NondestructiveTest GetNondestructiveTestById(string nondestructiveTestId)
 | |
|         {
 | |
|             return Funs.DB.ProcessControl_NondestructiveTest.FirstOrDefault(e => e.NondestructiveTestId == nondestructiveTestId);
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 添加无损检测管理
 | |
|         /// </summary>
 | |
|         /// <param name="nondestructiveTest"></param>
 | |
|         public static void AddNondestructiveTest(Model.ProcessControl_NondestructiveTest nondestructiveTest)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.ProcessControl_NondestructiveTest newNondestructiveTest = new Model.ProcessControl_NondestructiveTest();
 | |
|             newNondestructiveTest.NondestructiveTestId = nondestructiveTest.NondestructiveTestId;
 | |
|             newNondestructiveTest.ProjectId = nondestructiveTest.ProjectId;
 | |
|             newNondestructiveTest.UnitWorkId = nondestructiveTest.UnitWorkId;
 | |
|             newNondestructiveTest.UnitId = nondestructiveTest.UnitId;
 | |
|             //newNondestructiveTest.CNProfessionalId = nondestructiveTest.CNProfessionalId;
 | |
|             newNondestructiveTest.WelderCode = nondestructiveTest.WelderCode;
 | |
|             newNondestructiveTest.NondestructiveTestCode = nondestructiveTest.NondestructiveTestCode;
 | |
|             newNondestructiveTest.PieceCount = nondestructiveTest.PieceCount;
 | |
|             newNondestructiveTest.OnceQualifiedCount = nondestructiveTest.OnceQualifiedCount;
 | |
|             newNondestructiveTest.NondestructiveTestDate = nondestructiveTest.NondestructiveTestDate;
 | |
|             newNondestructiveTest.WED_ID = nondestructiveTest.WED_ID;
 | |
|             newNondestructiveTest.STE_ID = nondestructiveTest.STE_ID;
 | |
|             newNondestructiveTest.CompileMan = nondestructiveTest.CompileMan;
 | |
|             newNondestructiveTest.InspectionAreaId = nondestructiveTest.InspectionAreaId;
 | |
| 
 | |
|             db.ProcessControl_NondestructiveTest.InsertOnSubmit(newNondestructiveTest);
 | |
|             db.SubmitChanges();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 修改无损检测管理
 | |
|         /// </summary>
 | |
|         /// <param name="nondestructiveTest"></param>
 | |
|         public static void UpdateNondestructiveTest(Model.ProcessControl_NondestructiveTest nondestructiveTest)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.ProcessControl_NondestructiveTest newNondestructiveTest = db.ProcessControl_NondestructiveTest.FirstOrDefault(e => e.NondestructiveTestId == nondestructiveTest.NondestructiveTestId);
 | |
|             if (newNondestructiveTest != null)
 | |
|             {
 | |
|                 newNondestructiveTest.ProjectId = nondestructiveTest.ProjectId;
 | |
|                 newNondestructiveTest.UnitWorkId = nondestructiveTest.UnitWorkId;
 | |
|                 newNondestructiveTest.UnitId = nondestructiveTest.UnitId;
 | |
|                 //newNondestructiveTest.CNProfessionalId = nondestructiveTest.CNProfessionalId;
 | |
|                 newNondestructiveTest.WelderCode = nondestructiveTest.WelderCode;
 | |
|                 newNondestructiveTest.NondestructiveTestCode = nondestructiveTest.NondestructiveTestCode;
 | |
|                 newNondestructiveTest.PieceCount = nondestructiveTest.PieceCount;
 | |
|                 newNondestructiveTest.OnceQualifiedCount = nondestructiveTest.OnceQualifiedCount;
 | |
|                 newNondestructiveTest.NondestructiveTestDate = nondestructiveTest.NondestructiveTestDate;
 | |
|                 newNondestructiveTest.WED_ID = nondestructiveTest.WED_ID;
 | |
|                 newNondestructiveTest.STE_ID = nondestructiveTest.STE_ID;
 | |
|                 newNondestructiveTest.InspectionAreaId = nondestructiveTest.InspectionAreaId;
 | |
| 
 | |
|                 db.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据主键删除无损检测管理
 | |
|         /// </summary>
 | |
|         /// <param name="nondestructiveTestId"></param>
 | |
|         public static void DeleteNondestructiveTest(string nondestructiveTestId)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.ProcessControl_NondestructiveTest nondestructiveTest = db.ProcessControl_NondestructiveTest.FirstOrDefault(e => e.NondestructiveTestId == nondestructiveTestId);
 | |
|             if (nondestructiveTest != null)
 | |
|             {
 | |
|                 db.ProcessControl_NondestructiveTest.DeleteOnSubmit(nondestructiveTest);
 | |
|                 db.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据单位获取对应时间内的集合
 | |
|         /// </summary>
 | |
|         /// <param name="projectId"></param>
 | |
|         /// <param name="unitId"></param>
 | |
|         /// <param name="startDate"></param>
 | |
|         /// <param name="SoptDate"></param>
 | |
|         /// <returns></returns>
 | |
|         public static List<Model.ProcessControl_NondestructiveTest> GetNondestructiveTestListByUnitIdAndDate(string projectId, string unitId, DateTime startDate, DateTime SoptDate)
 | |
|         {
 | |
|             List<Model.ProcessControl_NondestructiveTest> NondestructiveTestList = (from x in Funs.DB.ProcessControl_NondestructiveTest where x.ProjectId == projectId select x).ToList();
 | |
|             NondestructiveTestList = (from x in NondestructiveTestList where x.UnitId == unitId select x).ToList();
 | |
|             if (startDate != null && SoptDate != null)
 | |
|             {
 | |
|                 NondestructiveTestList = (from x in NondestructiveTestList where x.NondestructiveTestDate >= startDate && x.NondestructiveTestDate <= SoptDate select x).ToList();
 | |
|             }
 | |
| 
 | |
|             return NondestructiveTestList;
 | |
|         }
 | |
|     }
 | |
| }
 |