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 DriverRunApproveService { public static Model.SGGLDB db = Funs.DB; /// /// 获取开车保运管理模板列表 /// /// /// /// public static DataTable getListData(string DriverRunId) { var res = from x in db.DriverRun_DriverRunApprove where x.DriverRunId == DriverRunId && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.DriverRunApproveId, x.DriverRunId, 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 DeleteDriverRunApprovesByDriverRunId(string DriverRunId) { Model.SGGLDB db = Funs.DB; var q = (from x in db.DriverRun_DriverRunApprove where x.DriverRunId == DriverRunId select x).ToList(); db.DriverRun_DriverRunApprove.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.DriverRun_DriverRunApprove join ca in db.DriverRun_DriverRun on x.DriverRunId equals ca.DriverRunId where x.ApproveDate == null && x.ApproveType == "S" && x.ApproveMan == userId orderby x.ApproveDate select new { //x.DriverRunApproveId, x.DriverRunId, //x.ApproveDate, //x.IsAgree, //x.ApproveIdea, //x.ApproveType, ca.Code }; return res.AsQueryable().Distinct(); } } /// /// 更新通知信息提醒 /// /// /// /// public static Model.DriverRun_DriverRunApprove GetSee(string DriverRunId, string userId) { return db.DriverRun_DriverRunApprove.FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); } public static void See(string DriverRunId, string userId) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var res = db.DriverRun_DriverRunApprove.FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); if (res != null) { res.ApproveDate = DateTime.Now; db.SubmitChanges(); } } } /// /// 根据开车保运管理编号获取一个开车保运管理审批信息 /// /// 开车保运管理编号 /// 一个开车保运管理审批实体 public static Model.DriverRun_DriverRunApprove GetDriverRunApproveByDriverRunId(string DriverRunId) { return db.DriverRun_DriverRunApprove.FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType != "S" && x.ApproveDate == null); } /// /// 修改开车保运管理审批信息 /// /// 开车保运管理审批实体 public static void UpdateDriverRunApprove(Model.DriverRun_DriverRunApprove approve) { Model.SGGLDB db = Funs.DB; Model.DriverRun_DriverRunApprove newApprove = db.DriverRun_DriverRunApprove.First(e => e.DriverRunApproveId == approve.DriverRunApproveId && e.ApproveDate == null); newApprove.DriverRunId = approve.DriverRunId; 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 AddDriverRunApprove(Model.DriverRun_DriverRunApprove approve) { Model.SGGLDB db = Funs.DB; string newKeyID = SQLHelper.GetNewID(typeof(Model.DriverRun_DriverRunApprove)); Model.DriverRun_DriverRunApprove newApprove = new Model.DriverRun_DriverRunApprove(); newApprove.DriverRunApproveId = newKeyID; newApprove.DriverRunId = approve.DriverRunId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.DriverRun_DriverRunApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); } public static string AddDriverRunApproveForApi(Model.DriverRun_DriverRunApprove approve) { using (var db = new Model.SGGLDB(Funs.ConnString)) { string newKeyID = SQLHelper.GetNewID(typeof(Model.DriverRun_DriverRunApprove)); Model.DriverRun_DriverRunApprove newApprove = new Model.DriverRun_DriverRunApprove(); newApprove.DriverRunApproveId = newKeyID; newApprove.DriverRunId = approve.DriverRunId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.DriverRun_DriverRunApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); return newKeyID; } } /// /// 开车负责人审批信息 /// /// /// public static Model.DriverRun_DriverRunApprove GetAudit1(string DriverRunId) { return db.DriverRun_DriverRunApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == BLL.Const.DriverRun_Audit1); } /// /// 保运主任审批信息 /// /// /// public static Model.DriverRun_DriverRunApprove GetAudit2(string DriverRunId) { return db.DriverRun_DriverRunApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == BLL.Const.DriverRun_Audit2); } /// /// 分包负责人审批信息 /// /// /// public static Model.DriverRun_DriverRunApprove GetAudit3(string DriverRunId) { return db.DriverRun_DriverRunApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == BLL.Const.DriverRun_Audit3); } public static Model.DriverRun_DriverRunApprove GetComplie(string DriverRunId) { return db.DriverRun_DriverRunApprove.FirstOrDefault(x => x.DriverRunId == DriverRunId && x.ApproveType == BLL.Const.DriverRun_Compile); } public static List GetListDataByCodeForApi(string code) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.DriverRun_DriverRunApprove where x.DriverRunId == code && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.DriverRunApproveId, x.DriverRunId, ApproveMan = (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.DriverRun_DriverRunApprove approve = new Model.DriverRun_DriverRunApprove(); approve.DriverRunApproveId = item.DriverRunApproveId; approve.DriverRunId = item.DriverRunId; approve.ApproveMan = item.ApproveMan; approve.ApproveDate = item.ApproveDate; approve.IsAgree = item.IsAgree; approve.ApproveIdea = item.ApproveIdea; approve.ApproveType = item.ApproveType; res.Add(approve); } return res; } } public static Model.DriverRun_DriverRunApprove getCurrApproveForApi(string DriverRunId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.DriverRun_DriverRunApprove newApprove = db.DriverRun_DriverRunApprove.FirstOrDefault(e => e.DriverRunId == DriverRunId && 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 UpdateDriverRunApproveForApi(Model.DriverRun_DriverRunApprove approve) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.DriverRun_DriverRunApprove newApprove = db.DriverRun_DriverRunApprove.FirstOrDefault(e => e.DriverRunApproveId == approve.DriverRunApproveId && e.ApproveDate == null); if (newApprove != null) { if (!string.IsNullOrEmpty(approve.DriverRunId)) { newApprove.DriverRunId = approve.DriverRunId; } 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(); } } } } }