| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using System.Globalization; | 
					
						
							|  |  |  |  | using System.Linq; | 
					
						
							|  |  |  |  | using System.Text; | 
					
						
							|  |  |  |  | using System.Threading.Tasks; | 
					
						
							|  |  |  |  | using System.Web.UI.WebControls; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace BLL | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     public class JointCheckService | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 下拉框选择(根据text获取value) | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="text"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static string GetValByText(string text) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             string str = null; | 
					
						
							|  |  |  |  |             var listemItem = GetCheckTypeList(); | 
					
						
							|  |  |  |  |             foreach (var item in listemItem) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 if (text.Equals(item.Key)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     str = item.Value; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return str; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据质量共检Id删除一个质量共检信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="JointCheckId"></param> | 
					
						
							|  |  |  |  |         public static void DeleteJointCheck(string JointCheckId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.Check_JointCheck JointCheck = db.Check_JointCheck.First(e => e.JointCheckId == JointCheckId); | 
					
						
							|  |  |  |  |             db.Check_JointCheck.DeleteOnSubmit(JointCheck); | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据状态选择下一步办理类型 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="state"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static ListItem[] GetDHandleTypeByState(string state) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (state == Const.JointCheck_Compile || state == Const.JointCheck_ReCompile) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ListItem[] lis = new ListItem[1]; | 
					
						
							|  |  |  |  |                 lis[0] = new ListItem("分包专工回复", Const.JointCheck_Audit1); | 
					
						
							|  |  |  |  |                 return lis; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else if (state == Const.JointCheck_Audit1 || state == Const.JointCheck_Audit1R) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ListItem[] lis = new ListItem[2]; | 
					
						
							|  |  |  |  |                 lis[0] = new ListItem("分包负责人审批", Const.JointCheck_Audit2); | 
					
						
							|  |  |  |  |                 lis[1] = new ListItem("总包专工回复", Const.JointCheck_Audit3); | 
					
						
							|  |  |  |  |                 return lis; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else if (state == Const.JointCheck_Audit2) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ListItem[] lis = new ListItem[2]; | 
					
						
							|  |  |  |  |                 lis[0] = new ListItem("总包专工回复", Const.JointCheck_Audit3); | 
					
						
							|  |  |  |  |                 lis[1] = new ListItem("分包专工重新回复", Const.JointCheck_Audit1R); | 
					
						
							|  |  |  |  |                 return lis; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else if (state == Const.JointCheck_Audit3) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ListItem[] lis = new ListItem[3]; | 
					
						
							|  |  |  |  |                 lis[0] = new ListItem("总包负责人审批", Const.JointCheck_Audit4); | 
					
						
							|  |  |  |  |                 lis[1] = new ListItem("审批完成", Const.JointCheck_Complete); | 
					
						
							|  |  |  |  |                 lis[2] = new ListItem("分包专工重新回复", Const.JointCheck_Audit1R); | 
					
						
							|  |  |  |  |                 return lis; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else if (state == Const.JointCheck_Audit4 || state == Const.JointCheck_Complete) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ListItem[] lis = new ListItem[2]; | 
					
						
							|  |  |  |  |                 lis[0] = new ListItem("审批完成", Const.JointCheck_Complete); | 
					
						
							|  |  |  |  |                 lis[1] = new ListItem("分包专工重新回复", Const.JointCheck_Audit1R); | 
					
						
							|  |  |  |  |                 return lis; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else | 
					
						
							|  |  |  |  |                 return null; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 添加质量共检 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="JointCheck"></param> | 
					
						
							|  |  |  |  |         public static void AddJointCheck(Model.Check_JointCheck JointCheck) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.Check_JointCheck newJointCheck = new Model.Check_JointCheck(); | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckId = JointCheck.JointCheckId; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckCode = JointCheck.JointCheckCode; | 
					
						
							|  |  |  |  |             newJointCheck.ProjectId = JointCheck.ProjectId; | 
					
						
							|  |  |  |  |             newJointCheck.CheckType = JointCheck.CheckType; | 
					
						
							|  |  |  |  |             newJointCheck.CheckName = JointCheck.CheckName; | 
					
						
							|  |  |  |  |             newJointCheck.ProposeUnitId = JointCheck.ProposeUnitId; | 
					
						
							|  |  |  |  |             newJointCheck.UnitId = JointCheck.UnitId; | 
					
						
							|  |  |  |  |             newJointCheck.CheckDate = JointCheck.CheckDate; | 
					
						
							|  |  |  |  |             newJointCheck.CheckMan = JointCheck.CheckMan; | 
					
						
							|  |  |  |  |             newJointCheck.State = JointCheck.State; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans1 = JointCheck.JointCheckMans1; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans2 = JointCheck.JointCheckMans2; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans3 = JointCheck.JointCheckMans3; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans4 = JointCheck.JointCheckMans4; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             db.Check_JointCheck.InsertOnSubmit(newJointCheck); | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static void AddJointCheckForApi(Model.Check_JointCheck JointCheck) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Model.Check_JointCheck newJointCheck = new Model.Check_JointCheck(); | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckId = JointCheck.JointCheckId; | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckCode = JointCheck.JointCheckCode; | 
					
						
							|  |  |  |  |                 newJointCheck.ProjectId = JointCheck.ProjectId; | 
					
						
							|  |  |  |  |                 newJointCheck.CheckType = JointCheck.CheckType; | 
					
						
							|  |  |  |  |                 newJointCheck.CheckName = JointCheck.CheckName; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.ProposeUnitId)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     newJointCheck.ProposeUnitId = JointCheck.ProposeUnitId; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.UnitId)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     newJointCheck.UnitId = JointCheck.UnitId; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 newJointCheck.CheckDate = JointCheck.CheckDate; | 
					
						
							|  |  |  |  |                 newJointCheck.CheckMan = JointCheck.CheckMan; | 
					
						
							|  |  |  |  |                 newJointCheck.State = JointCheck.State; | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckMans1 = JointCheck.JointCheckMans1; | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckMans2 = JointCheck.JointCheckMans2; | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckMans3 = JointCheck.JointCheckMans3; | 
					
						
							|  |  |  |  |                 newJointCheck.JointCheckMans4 = JointCheck.JointCheckMans4; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 db.Check_JointCheck.InsertOnSubmit(newJointCheck); | 
					
						
							|  |  |  |  |                 db.SubmitChanges(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 修改质量共检 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="JointCheck"></param> | 
					
						
							|  |  |  |  |         public static void UpdateJointCheck(Model.Check_JointCheck JointCheck) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.Check_JointCheck newJointCheck = db.Check_JointCheck.First(e => e.JointCheckId == JointCheck.JointCheckId); | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckCode = JointCheck.JointCheckCode; | 
					
						
							|  |  |  |  |             newJointCheck.ProjectId = JointCheck.ProjectId; | 
					
						
							|  |  |  |  |             newJointCheck.CheckType = JointCheck.CheckType; | 
					
						
							|  |  |  |  |             newJointCheck.CheckName = JointCheck.CheckName; | 
					
						
							|  |  |  |  |             newJointCheck.ProposeUnitId = JointCheck.ProposeUnitId; | 
					
						
							|  |  |  |  |             newJointCheck.UnitId = JointCheck.UnitId; | 
					
						
							|  |  |  |  |             newJointCheck.CheckDate = JointCheck.CheckDate; | 
					
						
							|  |  |  |  |             newJointCheck.State = JointCheck.State; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans1 = JointCheck.JointCheckMans1; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans2 = JointCheck.JointCheckMans2; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans3 = JointCheck.JointCheckMans3; | 
					
						
							|  |  |  |  |             newJointCheck.JointCheckMans4 = JointCheck.JointCheckMans4; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取检查类别项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="projectId">项目Id</param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static Dictionary<int, string> GetCheckTypeList() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Dictionary<int, string> dic = new Dictionary<int, string>(); | 
					
						
							|  |  |  |  |             dic.Add(1, "周检查"); | 
					
						
							|  |  |  |  |             dic.Add(2, "月检查"); | 
					
						
							|  |  |  |  |             dic.Add(3, "不定期检查"); | 
					
						
							|  |  |  |  |             dic.Add(4, "专业检查"); | 
					
						
							|  |  |  |  |             return dic; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取审批状态项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="projectId">项目Id</param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static Dictionary<string, string> GetStateList() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Dictionary<string, string> dic = new Dictionary<string, string>(); | 
					
						
							|  |  |  |  |             dic.Add(BLL.Const.JointCheck_Compile, "编制"); | 
					
						
							|  |  |  |  |             dic.Add(BLL.Const.JointCheck_Z, "整改中"); | 
					
						
							|  |  |  |  |             dic.Add(BLL.Const.JointCheck_Complete, "审批完成"); | 
					
						
							|  |  |  |  |             return dic; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         ///  检查类别表下拉框 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="dropName">下拉框名字</param> | 
					
						
							|  |  |  |  |         /// <param name="isShowPlease">是否显示请选择</param> | 
					
						
							|  |  |  |  |         public static void Init(FineUIPro.DropDownList dropName, bool isShowPlease) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             dropName.DataTextField = "Value"; | 
					
						
							|  |  |  |  |             dropName.DataValueField = "Key"; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             dropName.DataSource = GetCheckTypeList(); | 
					
						
							|  |  |  |  |             dropName.DataBind(); | 
					
						
							|  |  |  |  |             if (isShowPlease) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Funs.FineUIPleaseSelect(dropName); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         ///  审批状态表下拉框 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="dropName">下拉框名字</param> | 
					
						
							|  |  |  |  |         /// <param name="isShowPlease">是否显示请选择</param> | 
					
						
							|  |  |  |  |         public static void InitState(FineUIPro.DropDownList dropName, bool isShowPlease) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             dropName.DataTextField = "Value"; | 
					
						
							|  |  |  |  |             dropName.DataValueField = "Key"; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             dropName.DataSource = GetStateList(); | 
					
						
							|  |  |  |  |             dropName.DataBind(); | 
					
						
							|  |  |  |  |             if (isShowPlease) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Funs.FineUIPleaseSelect(dropName); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据质量共检Id获取一个质量共检信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="JointCheckDetailId"></param> | 
					
						
							|  |  |  |  |         public static Model.Check_JointCheck GetJointCheck(string JointCheckId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return Funs.DB.Check_JointCheck.FirstOrDefault(e => e.JointCheckId == JointCheckId); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static Model.Check_JointCheck GetJointCheckForApi(string JointCheckId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 var res = db.Check_JointCheck.FirstOrDefault(e => e.JointCheckId == JointCheckId); | 
					
						
							|  |  |  |  |                 res.UnitId = res.UnitId + "$" + UnitService.getUnitNamesUnitIds(res.UnitId); | 
					
						
							|  |  |  |  |                 res.ProposeUnitId = res.ProposeUnitId + "$" + UnitService.getUnitNamesUnitIds(res.ProposeUnitId); | 
					
						
							|  |  |  |  |                 var user = UserService.GetUserByUserId(res.CheckMan); | 
					
						
							|  |  |  |  |                 res.CheckMan = res.CheckMan + "$" + (user == null ? "" : user.UserName); | 
					
						
							|  |  |  |  |                 res.JointCheckMans1= res.JointCheckMans1 + "$" + BLL.UserService.getUserNamesUserIds(res.JointCheckMans1); | 
					
						
							|  |  |  |  |                 res.JointCheckMans2 = res.JointCheckMans2 + "$" + BLL.UserService.getUserNamesUserIds(res.JointCheckMans2); | 
					
						
							|  |  |  |  |                 res.JointCheckMans3 = res.JointCheckMans3 + "$" + BLL.UserService.getUserNamesUserIds(res.JointCheckMans3); | 
					
						
							|  |  |  |  |                 res.JointCheckMans4 = res.JointCheckMans4 + "$" + BLL.UserService.getUserNamesUserIds(res.JointCheckMans4); | 
					
						
							|  |  |  |  |                 return res; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取检查类别项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static ListItem[] GetCheckTypeList2() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             ListItem[] lis = new ListItem[6]; | 
					
						
							|  |  |  |  |             lis[0] = new ListItem("-请选择-", ""); | 
					
						
							|  |  |  |  |             lis[1] = new ListItem("周检查", "1"); | 
					
						
							|  |  |  |  |             lis[2] = new ListItem("月检查", "2"); | 
					
						
							|  |  |  |  |             lis[3] = new ListItem("不定期检查", "3"); | 
					
						
							|  |  |  |  |             lis[4] = new ListItem("专业检查", "4"); | 
					
						
							|  |  |  |  |             lis[5] = new ListItem("质量巡检", "5"); | 
					
						
							|  |  |  |  |             return lis; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static int GetListCount(string projectId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 IQueryable<Model.Check_JointCheck> q = db.Check_JointCheck; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(projectId)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.ProjectId == projectId); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 return q.Count(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static List<Model.Check_JointCheck> GetListDataForApi(string name, string projectId, int startRowIndex, int maximumRows) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 IQueryable<Model.Check_JointCheck> q = db.Check_JointCheck; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(name)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     List<string> ids = new List<string>(); | 
					
						
							|  |  |  |  |                     var qunit = from u in Funs.DB.Base_Unit | 
					
						
							|  |  |  |  |                                 where u.UnitName.Contains(name) | 
					
						
							|  |  |  |  |                                 select u.UnitId; | 
					
						
							|  |  |  |  |                     ids = qunit.ToList(); | 
					
						
							|  |  |  |  |                     q = q.Where(e => ids.Contains(e.UnitId)); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(projectId)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.ProjectId == projectId); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 var qres = from x in q | 
					
						
							|  |  |  |  |                            orderby x.JointCheckCode descending | 
					
						
							|  |  |  |  |                            select new | 
					
						
							|  |  |  |  |                            { | 
					
						
							|  |  |  |  |                                x.JointCheckId, | 
					
						
							|  |  |  |  |                                x.JointCheckCode, | 
					
						
							|  |  |  |  |                                x.UnitId, | 
					
						
							|  |  |  |  |                                x.ProposeUnitId, | 
					
						
							|  |  |  |  |                                x.CheckDate, | 
					
						
							|  |  |  |  |                                x.CheckMan, | 
					
						
							|  |  |  |  |                                x.CheckType, | 
					
						
							|  |  |  |  |                                x.CheckName, | 
					
						
							|  |  |  |  |                                x.State, | 
					
						
							|  |  |  |  |                                x.JointCheckMans1, | 
					
						
							|  |  |  |  |                                x.JointCheckMans2, | 
					
						
							|  |  |  |  |                                x.JointCheckMans3, | 
					
						
							|  |  |  |  |                                x.JointCheckMans4, | 
					
						
							|  |  |  |  |                                JointCheckMans1_Name = BLL.UserService.getUserNamesUserIds(x.JointCheckMans1), | 
					
						
							|  |  |  |  |                                JointCheckMans2_Name = BLL.UserService.getUserNamesUserIds(x.JointCheckMans2), | 
					
						
							|  |  |  |  |                                JointCheckMans3_Name = BLL.UserService.getUserNamesUserIds(x.JointCheckMans3), | 
					
						
							|  |  |  |  |                                JointCheckMans4_Name = BLL.UserService.getUserNamesUserIds(x.JointCheckMans4), | 
					
						
							|  |  |  |  |                                CheckManName = (from y in db.Sys_User where y.UserId == x.CheckMan select y.UserName).First(), | 
					
						
							|  |  |  |  |                                UnitName = UnitService.getUnitNamesUnitIds(x.UnitId), | 
					
						
							|  |  |  |  |                                ProposeUnitName = UnitService.getUnitNamesUnitIds(x.ProposeUnitId) | 
					
						
							|  |  |  |  |                            }; | 
					
						
							|  |  |  |  |                 List<Model.Check_JointCheck> res = new List<Model.Check_JointCheck>(); | 
					
						
							|  |  |  |  |                 var list = qres.Skip(startRowIndex* maximumRows).Take(maximumRows).ToList(); | 
					
						
							|  |  |  |  |                 foreach (var item in list) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Model.Check_JointCheck jc = new Model.Check_JointCheck(); | 
					
						
							|  |  |  |  |                     jc.JointCheckId = item.JointCheckId; | 
					
						
							|  |  |  |  |                     jc.JointCheckCode = item.JointCheckCode; | 
					
						
							|  |  |  |  |                     jc.UnitId = item.UnitId + "$" + item.UnitName; | 
					
						
							|  |  |  |  |                     jc.CheckDate = item.CheckDate; | 
					
						
							|  |  |  |  |                     jc.CheckType = item.CheckType; | 
					
						
							|  |  |  |  |                     jc.CheckName = item.CheckName; | 
					
						
							|  |  |  |  |                     jc.State = item.State; | 
					
						
							|  |  |  |  |                     jc.JointCheckMans1 = item.JointCheckMans1 + "$" + item.JointCheckMans1_Name; | 
					
						
							|  |  |  |  |                     jc.JointCheckMans2 = item.JointCheckMans2 + "$" + item.JointCheckMans2_Name; | 
					
						
							|  |  |  |  |                     jc.JointCheckMans3 = item.JointCheckMans3 + "$" + item.JointCheckMans3_Name; | 
					
						
							|  |  |  |  |                     jc.JointCheckMans4 = item.JointCheckMans4 + "$" + item.JointCheckMans4_Name; | 
					
						
							|  |  |  |  |                     jc.CheckMan = item.CheckMan + "$" + item.CheckManName + "$" + ConvertManAndID(jc.JointCheckId); | 
					
						
							|  |  |  |  |                     jc.ProposeUnitId = item.ProposeUnitId + "$" + item.ProposeUnitName; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                     res.Add(jc); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 return res; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static List<Model.Check_JointCheck> GetListDataForApi(string name, string code, string unitId, string proposeUnitId, string type, string dateA, string dateZ, string projectId, string state, int startRowIndex, int maximumRows) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 IQueryable<Model.Check_JointCheck> q = db.Check_JointCheck; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(name) && "undefined" != name) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.CheckName.Contains(name)); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(code) && "undefined" != code) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.JointCheckCode.Contains(code)); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(unitId) && "undefined" != unitId) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.UnitId == unitId); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(proposeUnitId) && "undefined" != proposeUnitId) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.ProposeUnitId == proposeUnitId); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(type) && "undefined" != type) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.CheckType == type); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(dateA) && "undefined" != dateA) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     DateTime date = DateTime.ParseExact(dateA, "yyyy-MM-dd", new CultureInfo("zh-CN", true)); | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.CheckDate >= date); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(dateZ) && "undefined" != dateZ) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     DateTime date = DateTime.ParseExact(dateZ + "23:59:59", "yyyy-MM-ddHH:mm:ss", new CultureInfo("zh-CN", true)); | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.CheckDate <= date); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(projectId) && "undefined" != projectId) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     q = q.Where(e => e.ProjectId == projectId); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(state) && "undefined" != state) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     if ("Z" == state) | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         List<string> states = new List<string>(); | 
					
						
							|  |  |  |  |                         states.Add("2"); | 
					
						
							|  |  |  |  |                         states.Add("3"); | 
					
						
							|  |  |  |  |                         states.Add("4"); | 
					
						
							|  |  |  |  |                         states.Add("5"); | 
					
						
							|  |  |  |  |                         states.Add("7"); | 
					
						
							|  |  |  |  |                         states.Add("Z"); | 
					
						
							|  |  |  |  |                         q = q.Where(e => states.Contains(e.State)); | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                     else | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         q = q.Where(e => e.State == state); | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 var qres = from x in q | 
					
						
							|  |  |  |  |                            orderby x.JointCheckCode descending | 
					
						
							|  |  |  |  |                            select new | 
					
						
							|  |  |  |  |                            { | 
					
						
							|  |  |  |  |                                x.JointCheckId, | 
					
						
							|  |  |  |  |                                x.JointCheckCode, | 
					
						
							|  |  |  |  |                                x.UnitId, | 
					
						
							|  |  |  |  |                                x.ProposeUnitId, | 
					
						
							|  |  |  |  |                                x.CheckDate, | 
					
						
							|  |  |  |  |                                x.CheckType, | 
					
						
							|  |  |  |  |                                x.CheckName, | 
					
						
							|  |  |  |  |                                x.CheckMan, | 
					
						
							|  |  |  |  |                                x.State, | 
					
						
							|  |  |  |  |                                CheckManName = (from y in db.Sys_User where y.UserId == x.CheckMan select y.UserName).First(), | 
					
						
							|  |  |  |  |                                UnitName = UnitService.getUnitNamesUnitIds(x.UnitId), | 
					
						
							|  |  |  |  |                                ProposeUnitName = UnitService.getUnitNamesUnitIds(x.ProposeUnitId) | 
					
						
							|  |  |  |  |                            }; | 
					
						
							|  |  |  |  |                 List<Model.Check_JointCheck> res = new List<Model.Check_JointCheck>(); | 
					
						
							|  |  |  |  |                 var list = qres.Skip(startRowIndex* maximumRows).Take(maximumRows).ToList(); | 
					
						
							|  |  |  |  |                 foreach (var item in list) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Model.Check_JointCheck jc = new Model.Check_JointCheck(); | 
					
						
							|  |  |  |  |                     jc.JointCheckId = item.JointCheckId; | 
					
						
							|  |  |  |  |                     jc.JointCheckCode = item.JointCheckCode; | 
					
						
							|  |  |  |  |                     jc.UnitId = item.UnitId + "$" + item.UnitName; | 
					
						
							|  |  |  |  |                     jc.CheckDate = item.CheckDate; | 
					
						
							|  |  |  |  |                     jc.CheckType = item.CheckType; | 
					
						
							|  |  |  |  |                     jc.CheckName = item.CheckName; | 
					
						
							|  |  |  |  |                     jc.State = item.State; | 
					
						
							|  |  |  |  |                     jc.CheckMan = item.CheckMan + "$" + item.CheckManName + "$" + ConvertManAndID(jc.JointCheckId); | 
					
						
							|  |  |  |  |                     jc.ProposeUnitId = item.ProposeUnitId + "$" + item.ProposeUnitName; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                     res.Add(jc); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 return res; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static string ConvertManAndID(string id) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (id != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 List<Model.Check_JointCheckApprove> apporves = BLL.JointCheckApproveService.getCurrApproveForApi(id); | 
					
						
							|  |  |  |  |                 if (apporves != null) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     string names = ""; | 
					
						
							|  |  |  |  |                     string ids = ""; | 
					
						
							|  |  |  |  |                     foreach (var item in apporves) | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         names += item.ApproveIdea + ","; | 
					
						
							|  |  |  |  |                         ids += item.ApproveMan + ","; | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                     if (!string.IsNullOrEmpty(names)) | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         names = names.TrimEnd(','); | 
					
						
							|  |  |  |  |                         ids = ids.TrimEnd(','); | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                     return names + "$" + ids; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 //Model.Check_JointCheckApprove a = BLL.JointCheckApproveService.getCurrApproveByJoinCheckIdForApi(id); | 
					
						
							|  |  |  |  |                 //if (a != null) | 
					
						
							|  |  |  |  |                 //{ | 
					
						
							|  |  |  |  |                 //    if (a.ApproveMan != null) | 
					
						
							|  |  |  |  |                 //    { | 
					
						
							|  |  |  |  |                 //        var user = BLL.UserService.GetUserName(a.ApproveMan); | 
					
						
							|  |  |  |  |                 //        return user.UserName + "$" + user.UserId; | 
					
						
							|  |  |  |  |                 //    } | 
					
						
							|  |  |  |  |                 //} | 
					
						
							|  |  |  |  |                 //else | 
					
						
							|  |  |  |  |                 //{ | 
					
						
							|  |  |  |  |                 //    return ""; | 
					
						
							|  |  |  |  |                 //} | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return ""; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static void UpdateJointCheckForApi(Model.Check_JointCheck JointCheck) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Model.Check_JointCheck newJointCheck = db.Check_JointCheck.First(e => e.JointCheckId == JointCheck.JointCheckId); | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.JointCheckCode)) | 
					
						
							|  |  |  |  |                     newJointCheck.JointCheckCode = JointCheck.JointCheckCode; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.ProjectId)) | 
					
						
							|  |  |  |  |                     newJointCheck.ProjectId = JointCheck.ProjectId; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.CheckType)) | 
					
						
							|  |  |  |  |                     newJointCheck.CheckType = JointCheck.CheckType; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.CheckName)) | 
					
						
							|  |  |  |  |                     newJointCheck.CheckName = JointCheck.CheckName; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.UnitId)) | 
					
						
							|  |  |  |  |                     newJointCheck.UnitId = JointCheck.UnitId; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.ProposeUnitId)) | 
					
						
							|  |  |  |  |                     newJointCheck.ProposeUnitId = JointCheck.ProposeUnitId; | 
					
						
							|  |  |  |  |                 if (JointCheck.CheckDate.HasValue) | 
					
						
							|  |  |  |  |                     newJointCheck.CheckDate = JointCheck.CheckDate; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.State)) | 
					
						
							|  |  |  |  |                     newJointCheck.State = JointCheck.State; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.JointCheckMans1)) | 
					
						
							|  |  |  |  |                     newJointCheck.JointCheckMans1 = JointCheck.JointCheckMans1; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.JointCheckMans2)) | 
					
						
							|  |  |  |  |                     newJointCheck.JointCheckMans2 = JointCheck.JointCheckMans2; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.JointCheckMans3)) | 
					
						
							|  |  |  |  |                     newJointCheck.JointCheckMans3 = JointCheck.JointCheckMans3; | 
					
						
							|  |  |  |  |                 if (!string.IsNullOrEmpty(JointCheck.JointCheckMans4)) | 
					
						
							|  |  |  |  |                     newJointCheck.JointCheckMans4 = JointCheck.JointCheckMans4; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                 db.SubmitChanges(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2024-04-19 10:13:37 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据项目Id获取专项检查 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="projectId"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static List<Model.Check_JointCheck> GetDriverPlanByProjectId(string projectId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.Check_JointCheck where x.ProjectId == projectId select x).ToList(); | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2021-04-30 10:28:37 +08:00
										 |  |  |  |     } | 
					
						
							|  |  |  |  | } |