using Newtonsoft.Json.Serialization; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BLL { public class CQMSConstructionLogApproveService { public static Model.SGGLDB db = Funs.DB; /// /// 获取质量巡检模板列表 /// /// /// /// public static DataTable getListData(string ConstructionLogId) { var res = from x in db.CQMS_ConstructionLogApprove where x.ConstructionLogId == ConstructionLogId && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.ConstructionLogApproveId, x.ConstructionLogId, ApproveMan = (from y in db.Sys_User where y.UserId == x.ApproveMan select y.UserName).First(), x.ApproveDate, x.IsAgree, x.ApproveIdea, x.ApproveType, }; return Funs.LINQToDataTable(res); } /// /// 根据质量巡检编号删除对应的所有质量巡检审批信息 /// /// 质量巡检编号 public static void DeleteConstructionLogApprovesByConstructionLogId(string ConstructionLogId) { Model.SGGLDB db = Funs.DB; var q = (from x in db.CQMS_ConstructionLogApprove where x.ConstructionLogId == ConstructionLogId select x).ToList(); db.CQMS_ConstructionLogApprove.DeleteAllOnSubmit(q); db.SubmitChanges(); } /// /// 获取登录人的通知信息 /// /// /// /// public static IQueryable getList(string userId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var res = from x in db.CQMS_ConstructionLogApprove join ca in db.CQMS_ConstructionLog on x.ConstructionLogId equals ca.ConstructionLogId where x.ApproveDate == null && x.ApproveType == "S" && x.ApproveMan == userId orderby x.ApproveDate select new { //x.ConstructionLogApproveId, x.ConstructionLogId, //x.ApproveDate, //x.IsAgree, //x.ApproveIdea, //x.ApproveType, }; return res.AsQueryable().Distinct(); } } /// /// 更新通知信息提醒 /// /// /// /// public static Model.CQMS_ConstructionLogApprove GetSee(string ConstructionLogId, string userId) { return db.CQMS_ConstructionLogApprove.FirstOrDefault(x => x.ConstructionLogId == ConstructionLogId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); } public static void See(string ConstructionLogId, string userId) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var res = db.CQMS_ConstructionLogApprove.FirstOrDefault(x => x.ConstructionLogId == ConstructionLogId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); if (res != null) { res.ApproveDate = DateTime.Now; db.SubmitChanges(); } } } /// /// 根据质量巡检编号获取一个质量巡检审批信息 /// /// 质量巡检编号 /// 一个质量巡检审批实体 public static Model.CQMS_ConstructionLogApprove GetConstructionLogApproveByConstructionLogId(string ConstructionLogId) { return db.CQMS_ConstructionLogApprove.FirstOrDefault(x => x.ConstructionLogId == ConstructionLogId && x.ApproveType != "S" && x.ApproveDate == null); } /// /// 修改质量巡检审批信息 /// /// 质量巡检审批实体 public static void UpdateConstructionLogApprove(Model.CQMS_ConstructionLogApprove approve) { Model.SGGLDB db = Funs.DB; Model.CQMS_ConstructionLogApprove newApprove = db.CQMS_ConstructionLogApprove.First(e => e.ConstructionLogApproveId == approve.ConstructionLogApproveId && e.ApproveDate == null); newApprove.ConstructionLogId = approve.ConstructionLogId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.SubmitChanges(); } /// /// 增加质量巡检审批信息 /// /// 质量巡检审批实体 public static void AddConstructionLogApprove(Model.CQMS_ConstructionLogApprove approve) { Model.SGGLDB db = Funs.DB; string newKeyID = SQLHelper.GetNewID(typeof(Model.CQMS_ConstructionLogApprove)); Model.CQMS_ConstructionLogApprove newApprove = new Model.CQMS_ConstructionLogApprove(); newApprove.ConstructionLogApproveId = newKeyID; newApprove.ConstructionLogId = approve.ConstructionLogId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.CQMS_ConstructionLogApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); } public static string AddConstructionLogApproveForApi(Model.CQMS_ConstructionLogApprove approve) { using (var db = new Model.SGGLDB(Funs.ConnString)) { string newKeyID = SQLHelper.GetNewID(typeof(Model.CQMS_ConstructionLogApprove)); Model.CQMS_ConstructionLogApprove newApprove = new Model.CQMS_ConstructionLogApprove(); newApprove.ConstructionLogApproveId = newKeyID; newApprove.ConstructionLogId = approve.ConstructionLogId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.CQMS_ConstructionLogApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); return newKeyID; } } /// /// 总包负责人审批信息 /// /// /// public static Model.CQMS_ConstructionLogApprove GetAudit(string ConstructionLogId) { return db.CQMS_ConstructionLogApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.ConstructionLogId == ConstructionLogId && x.ApproveType == BLL.Const.ConstructionLog_Audit); } public static Model.CQMS_ConstructionLogApprove GetComplie(string ConstructionLogId) { return db.CQMS_ConstructionLogApprove.FirstOrDefault(x => x.ConstructionLogId == ConstructionLogId && x.ApproveType == BLL.Const.ConstructionLog_Compile); } public static List GetListDataByCodeForApi(string code) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.CQMS_ConstructionLogApprove where x.ConstructionLogId == code && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.ConstructionLogApproveId, x.ConstructionLogId, x.ApproveMan, ApproveManName = (from y in db.Sys_User where y.UserId == x.ApproveMan select y.UserName).First(), x.ApproveDate, x.IsAgree, x.ApproveIdea, x.ApproveType, }; List res = new List(); var list = q.ToList(); foreach (var item in list) { Model.CQMS_ConstructionLogApprove approve = new Model.CQMS_ConstructionLogApprove(); approve.ConstructionLogApproveId = item.ConstructionLogApproveId; approve.ConstructionLogId = item.ConstructionLogId; approve.ApproveMan = item.ApproveMan + "$" + item.ApproveManName; approve.ApproveDate = item.ApproveDate; approve.IsAgree = item.IsAgree; approve.ApproveIdea = item.ApproveIdea; approve.ApproveType = item.ApproveType; res.Add(approve); } return res; } } public static Model.CQMS_ConstructionLogApprove getCurrApproveForApi(string ConstructionLogId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.CQMS_ConstructionLogApprove newApprove = db.CQMS_ConstructionLogApprove.FirstOrDefault(e => e.ConstructionLogId == ConstructionLogId && e.ApproveType != "S" && e.ApproveDate == null); if (newApprove != null) { Model.Sys_User user = BLL.UserService.GetUserByUserId(newApprove.ApproveMan); if (user != null) { newApprove.ApproveIdea = user.UserName; } } return newApprove; } } public static void UpdateConstructionLogApproveForApi(Model.CQMS_ConstructionLogApprove approve) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.CQMS_ConstructionLogApprove newApprove = db.CQMS_ConstructionLogApprove.FirstOrDefault(e => e.ConstructionLogApproveId == approve.ConstructionLogApproveId && e.ApproveDate == null); if (newApprove != null) { if (!string.IsNullOrEmpty(approve.ConstructionLogId)) { newApprove.ConstructionLogId = approve.ConstructionLogId; } if (!string.IsNullOrEmpty(approve.ApproveMan)) newApprove.ApproveMan = approve.ApproveMan; if (approve.ApproveDate.HasValue) newApprove.ApproveDate = approve.ApproveDate; if (!string.IsNullOrEmpty(approve.ApproveIdea)) newApprove.ApproveIdea = approve.ApproveIdea; if (approve.IsAgree.HasValue) newApprove.IsAgree = approve.IsAgree; if (!string.IsNullOrEmpty(approve.ApproveType)) newApprove.ApproveType = approve.ApproveType; db.SubmitChanges(); } } } } }