SGGL_SHJ/SGGL/BLL/CQMS/Train/CQMS_TrainPlanService.cs

303 lines
15 KiB
C#

using System.Collections.Generic;
using System.Linq;
namespace BLL
{
public class CQMS_TrainPlanService
{
/// <summary>
/// 获取质量培训信息
/// </summary>
/// <param name="UnitWorkId"></param>
/// <returns></returns>
public static Model.Train_TrainPlan GetTrainPlanByTrainPlanId(string TrainPlanId)
{
return Funs.DB.Train_TrainPlan.FirstOrDefault(e => e.TrainPlanId == TrainPlanId);
}
/// <summary>
/// 添加质量培训信息
/// </summary>
/// <param name="WPQ"></param>
public static void AddTrainPlan(Model.Train_TrainPlan TrainPlan)
{
Model.SGGLDB db = Funs.DB;
Model.Train_TrainPlan newTrainPlan = new Model.Train_TrainPlan();
newTrainPlan.TrainPlanId = TrainPlan.TrainPlanId;
newTrainPlan.ProjectId = TrainPlan.ProjectId;
newTrainPlan.PlanTrainPersons = TrainPlan.PlanTrainPersons;
newTrainPlan.TrainTypeId = TrainPlan.TrainTypeId;
newTrainPlan.TrainContent = TrainPlan.TrainContent;
newTrainPlan.PlanTrainDate = TrainPlan.PlanTrainDate;
newTrainPlan.HostMan = TrainPlan.PlanTrainPersons;
newTrainPlan.RealTrainDate = TrainPlan.RealTrainDate;
newTrainPlan.Place = TrainPlan.Place;
newTrainPlan.TeachHour = TrainPlan.TeachHour;
newTrainPlan.TrainPersonNum = TrainPlan.TrainPersonNum;
newTrainPlan.RealTrainPersons = TrainPlan.RealTrainPersons;
newTrainPlan.CompileMan = TrainPlan.CompileMan;
newTrainPlan.CompileDate = TrainPlan.CompileDate;
db.Train_TrainPlan.InsertOnSubmit(newTrainPlan);
db.SubmitChanges();
}
/// <summary>
/// 修改质量培训信息
/// </summary>
/// <param name="WPQ"></param>
public static void UpdateTrainPlan(Model.Train_TrainPlan TrainPlan)
{
Model.SGGLDB db = Funs.DB;
Model.Train_TrainPlan newTrainPlan = db.Train_TrainPlan.FirstOrDefault(e => e.TrainPlanId == TrainPlan.TrainPlanId);
if (newTrainPlan != null)
{
newTrainPlan.PlanTrainPersons = TrainPlan.PlanTrainPersons;
newTrainPlan.TrainTypeId = TrainPlan.TrainTypeId;
newTrainPlan.TrainContent = TrainPlan.TrainContent;
newTrainPlan.PlanTrainDate = TrainPlan.PlanTrainDate;
newTrainPlan.HostMan = TrainPlan.HostMan;
newTrainPlan.RealTrainDate = TrainPlan.RealTrainDate;
newTrainPlan.Place = TrainPlan.Place;
newTrainPlan.TeachHour = TrainPlan.TeachHour;
newTrainPlan.TrainPersonNum = TrainPlan.TrainPersonNum;
newTrainPlan.RealTrainPersons = TrainPlan.RealTrainPersons;
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除质量培训信息
/// </summary>
/// <param name="checkerId"></param>
public static void DeleteTrainPlanById(string TrainPlanId)
{
Model.SGGLDB db = Funs.DB;
Model.Train_TrainPlan TrainPlan = db.Train_TrainPlan.FirstOrDefault(e => e.TrainPlanId == TrainPlanId);
if (TrainPlan != null)
{
db.Train_TrainPlan.DeleteOnSubmit(TrainPlan);
db.SubmitChanges();
}
}
//<summary>
//获取培训对象
//</summary>
//<param name="state"></param>
//<returns></returns>
public static string ConvertPlanTrainPersons(object PlanTrainPersons)
{
string names = string.Empty;
if (PlanTrainPersons != null)
{
string[] strs = PlanTrainPersons.ToString().Split(',');
foreach (var item in strs)
{
names += BLL.CQMSTrainObjectService.GetTrainObjectNameById(item) + ",";
}
if (!string.IsNullOrEmpty(names))
{
names = names.Substring(0, names.Length - 1);
}
}
return names;
}
public static List<Model.Train_TrainPlan> getListDataForApi(string projectId, int startRowIndex, int maximumRows)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
IQueryable<Model.Train_TrainPlan> q = db.Train_TrainPlan;
if (!string.IsNullOrEmpty(projectId))
{
q = q.Where(e => e.ProjectId == projectId);
}
var qres = from x in q
orderby x.CompileDate descending
select new
{
x.TrainPlanId,
x.ProjectId,
x.PlanTrainPersons,
PlanTrainPersonsStr = ConvertPlanTrainPersons(x.PlanTrainPersons),
x.TrainTypeId,
TrainTypeName = (from y in db.Base_CQMSTrainType where y.TrainTypeId == x.TrainTypeId select y.TrainTypeName).First(),
x.TrainContent,
x.PlanTrainDate,
x.HostMan,
x.RealTrainDate,
x.Place,
x.TeachHour,
x.TrainPersonNum,
x.RealTrainPersons,
x.CompileDate,
x.CompileMan,
x.AttachUrl,
CompileManName = (from y in db.Person_Persons where y.PersonId == x.CompileMan select y.PersonName).First(),
};
List<Model.Train_TrainPlan> res = new List<Model.Train_TrainPlan>();
var list = qres.Skip(startRowIndex).Take(maximumRows).ToList();
foreach (var item in list)
{
Model.Train_TrainPlan cd = new Model.Train_TrainPlan();
cd.TrainPlanId = item.TrainPlanId;
cd.ProjectId = item.ProjectId;
cd.PlanTrainPersons = item.PlanTrainPersons + "$" + item.PlanTrainPersonsStr;
cd.TrainTypeId = item.TrainTypeId + "$" + item.TrainTypeName;
cd.TrainContent = item.TrainContent;
cd.PlanTrainDate = item.PlanTrainDate;
cd.HostMan = item.HostMan;
cd.RealTrainDate = item.RealTrainDate;
cd.Place = item.Place;
cd.TeachHour = item.TeachHour;
cd.TrainPersonNum = item.TrainPersonNum;
cd.RealTrainPersons = item.RealTrainPersons;
cd.CompileDate = item.CompileDate;
cd.CompileMan = item.CompileMan + "$" + item.CompileManName;
cd.AttachUrl = AttachFileService.getFileUrl(item.TrainPlanId);
res.Add(cd);
}
return res;
}
}
/// <summary>
/// 获取质量培训信息
/// </summary>
/// <param name="UnitWorkId"></param>
/// <returns></returns>
public static Model.Train_TrainPlan GetTraiPlanByTrainPlanIdForApi(string TrainPlanId)
{
//using (var db = new Model.SGGLDB(Funs.ConnString))
//{
// var q = db.Train_TrainPlan.FirstOrDefault(e => e.TrainPlanId == TrainPlanId);
// Model.Train_TrainPlan t = new Model.Train_TrainPlan();
// if (q != null)
// {
// t.TrainPlanId = q.TrainPlanId;
// t.ProjectId = q.ProjectId;
// t.TrainContent = q.TrainContent;
// t.PlanTrainDate = q.PlanTrainDate;
// t.RealTrainDate = q.RealTrainDate;
// t.Place = q.Place;
// t.TeachHour = q.TeachHour;
// t.CompileDate = q.CompileDate;
// t.TrainPersonNum = q.TrainPersonNum;
// t.PlanTrainPersons = q.PlanTrainPersons + "$" + ConvertPlanTrainPersons(q.PlanTrainPersons);
// t.TrainTypeId = q.TrainTypeId + "$" + (from y in db.Base_CQMSTrainType where y.TrainTypeId == q.TrainTypeId select y.TrainTypeName).First();
// t.RealTrainPersons = q.RealTrainPersons + "$" + Person_PersonsService.getPersonsNamesPersonIds(q.RealTrainPersons);
// t.HostMan = q.HostMan + "$" + BLL.Person_PersonsService.getPersonsNamesPersonIds(q.HostMan);
// t.CompileMan = q.CompileMan + "$" + BLL.Person_PersonsService.GetPersonsNameById(q.CompileMan);
// t.AttachUrl = AttachFileService.getFileUrl(q.TrainPlanId);
// }
// return t;
//}
using (var db = new Model.SGGLDB(Funs.ConnString))
{
IQueryable<Model.Train_TrainPlan> q = db.Train_TrainPlan;
if (!string.IsNullOrEmpty(TrainPlanId))
{
q = q.Where(e => e.TrainPlanId == TrainPlanId);
}
var qres = from x in q
orderby x.CompileDate descending
select new
{
x.TrainPlanId,
x.ProjectId,
x.PlanTrainPersons,
PlanTrainPersonsStr = ConvertPlanTrainPersons(x.PlanTrainPersons),
x.TrainTypeId,
TrainTypeName = (from y in db.Base_CQMSTrainType where y.TrainTypeId == x.TrainTypeId select y.TrainTypeName).First(),
x.TrainContent,
x.PlanTrainDate,
x.HostMan,
x.RealTrainDate,
x.Place,
x.TeachHour,
x.TrainPersonNum,
x.RealTrainPersons,
x.CompileDate,
x.CompileMan,
x.AttachUrl,
CompileManName = (from y in db.Person_Persons where y.PersonId == x.CompileMan select y.PersonName).First(),
};
Model.Train_TrainPlan res = new Model.Train_TrainPlan();
var list = qres.FirstOrDefault();
Model.Train_TrainPlan cd = new Model.Train_TrainPlan();
cd.TrainPlanId = list.TrainPlanId;
cd.ProjectId = list.ProjectId;
cd.PlanTrainPersons = list.PlanTrainPersons + "$" + list.PlanTrainPersonsStr;
cd.TrainTypeId = list.TrainTypeId + "$" + list.TrainTypeName;
cd.TrainContent = list.TrainContent;
cd.PlanTrainDate = list.PlanTrainDate;
cd.HostMan = list.HostMan + "$" + BLL.Person_PersonsService.getPersonsNamesPersonIds(list.HostMan);
cd.RealTrainDate = list.RealTrainDate;
cd.Place = list.Place;
cd.TeachHour = list.TeachHour;
cd.TrainPersonNum = list.TrainPersonNum;
cd.RealTrainPersons = list.RealTrainPersons + "$" + Person_PersonsService.getPersonsNamesPersonIds(list.RealTrainPersons);
cd.CompileDate = list.CompileDate;
cd.CompileMan = list.CompileMan + "$" + list.CompileManName;
cd.AttachUrl = AttachFileService.getFileUrl(list.TrainPlanId);
res = cd;
return res;
}
}
public static void AddTrainPlanForApi(Model.Train_TrainPlan TrainPlan)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.Train_TrainPlan newTrainPlan = new Model.Train_TrainPlan();
newTrainPlan.TrainPlanId = TrainPlan.TrainPlanId;
newTrainPlan.ProjectId = TrainPlan.ProjectId;
newTrainPlan.PlanTrainPersons = TrainPlan.PlanTrainPersons;
newTrainPlan.TrainTypeId = TrainPlan.TrainTypeId;
newTrainPlan.TrainContent = TrainPlan.TrainContent;
newTrainPlan.PlanTrainDate = TrainPlan.PlanTrainDate;
newTrainPlan.HostMan = TrainPlan.HostMan;
newTrainPlan.RealTrainDate = TrainPlan.RealTrainDate;
newTrainPlan.Place = TrainPlan.Place;
newTrainPlan.TeachHour = TrainPlan.TeachHour;
newTrainPlan.TrainPersonNum = TrainPlan.TrainPersonNum;
newTrainPlan.RealTrainPersons = TrainPlan.RealTrainPersons;
newTrainPlan.CompileMan = TrainPlan.CompileMan;
newTrainPlan.CompileDate = TrainPlan.CompileDate;
db.Train_TrainPlan.InsertOnSubmit(newTrainPlan);
db.SubmitChanges();
}
}
public static void UpdateTrainPlanForApi(Model.Train_TrainPlan TrainPlan)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
Model.Train_TrainPlan newTrainPlan = db.Train_TrainPlan.FirstOrDefault(e => e.TrainPlanId == TrainPlan.TrainPlanId);
if (newTrainPlan != null)
{
if (!string.IsNullOrEmpty(TrainPlan.PlanTrainPersons))
newTrainPlan.PlanTrainPersons = TrainPlan.PlanTrainPersons;
if (!string.IsNullOrEmpty(TrainPlan.TrainTypeId))
newTrainPlan.TrainTypeId = TrainPlan.TrainTypeId;
if (!string.IsNullOrEmpty(TrainPlan.TrainContent))
newTrainPlan.TrainContent = TrainPlan.TrainContent;
if (TrainPlan.PlanTrainDate.HasValue)
newTrainPlan.PlanTrainDate = TrainPlan.PlanTrainDate;
if (!string.IsNullOrEmpty(TrainPlan.HostMan))
newTrainPlan.HostMan = TrainPlan.HostMan;
if (TrainPlan.RealTrainDate.HasValue)
newTrainPlan.RealTrainDate = TrainPlan.RealTrainDate;
if (!string.IsNullOrEmpty(TrainPlan.Place))
newTrainPlan.Place = TrainPlan.Place;
if (TrainPlan.TeachHour.HasValue)
newTrainPlan.TeachHour = TrainPlan.TeachHour;
if (TrainPlan.TrainPersonNum.HasValue)
newTrainPlan.TrainPersonNum = TrainPlan.TrainPersonNum;
if (!string.IsNullOrEmpty(TrainPlan.RealTrainPersons))
newTrainPlan.RealTrainPersons = TrainPlan.RealTrainPersons;
db.SubmitChanges();
}
}
}
}
}