Basf_EProject/EProject/BLL/SendEmail/Email_SendTemplateService.cs

311 lines
13 KiB
C#

using Model;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Text;
namespace BLL.Email_Send
{
public static class Email_SendTemplateService
{
#region
/// <summary>
/// 邮件模板添加
/// </summary>
/// <param name="eProject"></param>
public static void AddSendEmail(Model.Email_SendTemplate Email_SendTemplate)
{
Model.Email_SendTemplate newsendTemplate = new Model.Email_SendTemplate();
newsendTemplate.EmailId = Guid.NewGuid().ToString();
newsendTemplate.EmailParamsID = Email_SendTemplate.EmailParamsID;
newsendTemplate.EailTiaoJian = Email_SendTemplate.EailTiaoJian;
newsendTemplate.EmailUserYN = Email_SendTemplate.EmailUserYN;
newsendTemplate.EmailTitle = Email_SendTemplate.EmailTitle;
newsendTemplate.EmailContext = Email_SendTemplate.EmailContext;
newsendTemplate.CreateName = Email_SendTemplate.CreateName;
newsendTemplate.CreateTime = Email_SendTemplate.CreateTime;
newsendTemplate.UpdateName = Email_SendTemplate.UpdateName;
newsendTemplate.UpdateTime = Email_SendTemplate.UpdateTime;
newsendTemplate.EmailDesc = Email_SendTemplate.EmailDesc;
Funs.DB.Email_SendTemplate.InsertOnSubmit(newsendTemplate);
Funs.DB.SubmitChanges();
}
#endregion
#region
/// <summary>
/// 邮件模板修改
/// </summary>
/// <param name="Email_SendTemplate"></param>
public static void UpdateEmail_SendTemplate(Model.Email_SendTemplate Email_SendTemplate)
{
Model.Email_SendTemplate newsendTemplate = Funs.DB.Email_SendTemplate.FirstOrDefault(x => x.EmailId == Email_SendTemplate.EmailId);
newsendTemplate.EmailParamsID = Email_SendTemplate.EmailParamsID;
newsendTemplate.EailTiaoJian = Email_SendTemplate.EailTiaoJian;
newsendTemplate.EmailUserYN = Email_SendTemplate.EmailUserYN;
newsendTemplate.EmailTitle = Email_SendTemplate.EmailTitle;
newsendTemplate.EmailContext = Email_SendTemplate.EmailContext;
newsendTemplate.UpdateName = Email_SendTemplate.UpdateName;
newsendTemplate.UpdateTime = Email_SendTemplate.UpdateTime;
newsendTemplate.EmailDesc = Email_SendTemplate.EmailDesc;
Funs.DB.SubmitChanges();
}
#endregion
#region
/// <summary>
/// 根据主键获取邮件设置
/// </summary>
/// <param name="EmailID">邮件设置Id</param>
/// <returns></returns>
public static Model.Email_SendTemplate GetEmail_SendTemplate(string EmailID)
{
return Funs.DB.Email_SendTemplate.FirstOrDefault(x => x.EmailId == EmailID);
}
#endregion
#region
/// <summary>
/// 获取邮件模板列表
/// </summary>
/// <returns></returns>
public static List<Model.Email_SendTemplate> GetEmail_SendTemplateList()
{
return (from x in Funs.DB.Email_SendTemplate orderby x.CreateTime descending select x).ToList();
}
#endregion
#region EProject
/// <summary>
/// 根据主键删除EProject
/// </summary>
/// <param name="EmailId"></param>
public static void DeleteEproejctById(string EmailId)
{
Model.Email_SendTemplate Email_SendTemplate = Funs.DB.Email_SendTemplate.FirstOrDefault(e => e.EmailId == EmailId);
if (Email_SendTemplate != null)
{
Funs.DB.Email_SendTemplate.DeleteOnSubmit(Email_SendTemplate);
Funs.DB.SubmitChanges();
}
}
#endregion
#region EmailNotifier查询EProject
/// <summary>
/// 根据EmailNotifier查询EProject
/// </summary>
/// <param name="EmailId"></param>
public static List<Email_SendTemplate> GetEmailNotifierList(string EmailNotifier)
{
return (from x in Funs.DB.Email_SendTemplate orderby x.CreateTime descending select x).Where(o => o.EmailParamsID == EmailNotifier).ToList();
}
#endregion
#region EmailNotifier查询EProject
/// <summary>
/// 根据EmailNotifier查询EProject
/// </summary>
/// <param name="EmailId"></param>
public static Email_SendTemplate GetEmailNotifier(string EmailNotifier)
{
return Funs.DB.Email_SendTemplate.FirstOrDefault(x => x.EmailParamsID == EmailNotifier);
}
#endregion
#region
/// <summary>
/// 事物提交
/// </summary>
/// <param name="model"></param>
/// <param name="PlanDetailList"></param>
/// <param name="ManHoursPlanList"></param>
/// <returns></returns>
public static bool Add(Model.Email_SendTemplate Email_SendTemplate, List<Model.Email_ToPeople> peopleList)
{
bool result = true;
if (Email_SendTemplate == null)
return false;
Funs.DB.Connection.Close();
Funs.DB.Connection.Open();
Funs.DB.CommandTimeout = 30000;
using (DbTransaction tran = Funs.DB.Connection.BeginTransaction())
{
Funs.DB.Transaction = tran;
try
{
Model.Email_SendTemplate newsendTemplate = new Email_SendTemplate();
newsendTemplate.EmailId = Email_SendTemplate.EmailId;
newsendTemplate.EmailParamsID = Email_SendTemplate.EmailParamsID;
newsendTemplate.EailTiaoJian = Email_SendTemplate.EailTiaoJian;
newsendTemplate.EmailUserYN = Email_SendTemplate.EmailUserYN;
newsendTemplate.EmailTitle = Email_SendTemplate.EmailTitle;
newsendTemplate.EmailContext = Email_SendTemplate.EmailContext;
newsendTemplate.CreateName = Email_SendTemplate.CreateName;
newsendTemplate.CreateTime = Email_SendTemplate.CreateTime;
newsendTemplate.UpdateName = Email_SendTemplate.UpdateName;
newsendTemplate.UpdateTime = Email_SendTemplate.UpdateTime;
newsendTemplate.EmailDesc = Email_SendTemplate.EmailDesc;
Funs.DB.Email_SendTemplate.InsertOnSubmit(newsendTemplate);
if (newsendTemplate != null)
{
var list = (from x in Funs.DB.Email_ToPeople where x.EmtempID == newsendTemplate.EmailId select x).ToList();
if (list != null || list.Count > 0)
{
Funs.DB.Email_ToPeople.DeleteAllOnSubmit(list);
}
}
if (peopleList != null)
{
Funs.DB.Email_ToPeople.InsertAllOnSubmit(peopleList);
}
Funs.DB.SubmitChanges();
tran.Commit();
result = true;
}
catch
{
tran.Rollback();//回滚事务
// db.Connection.Close();
result = false;
}
}
Funs.DB.Connection.Close();
return result;
}
#endregion
#region
/// <summary>
/// 事物提交
/// </summary>
/// <param name="model"></param>
/// <param name="PlanDetailList"></param>
/// <param name="ManHoursPlanList"></param>
/// <returns></returns>
public static bool Update(Model.Email_SendTemplate Email_SendTemplate, List<Model.Email_ToPeople> peopleList)
{
bool result = true;
if (Email_SendTemplate == null)
return false;
Funs.DB.Connection.Close();
Funs.DB.Connection.Open();
Funs.DB.CommandTimeout = 30000;
using (DbTransaction tran = Funs.DB.Connection.BeginTransaction())
{
Funs.DB.Transaction = tran;
try
{
Model.Email_SendTemplate newsendTemplate = Funs.DB.Email_SendTemplate.FirstOrDefault(x => x.EmailId == Email_SendTemplate.EmailId);
newsendTemplate.EmailParamsID = Email_SendTemplate.EmailParamsID;
newsendTemplate.EailTiaoJian = Email_SendTemplate.EailTiaoJian;
newsendTemplate.EmailUserYN = Email_SendTemplate.EmailUserYN;
newsendTemplate.EmailTitle = Email_SendTemplate.EmailTitle;
newsendTemplate.EmailContext = Email_SendTemplate.EmailContext;
newsendTemplate.CreateName = Email_SendTemplate.CreateName;
newsendTemplate.CreateTime = Email_SendTemplate.CreateTime;
newsendTemplate.UpdateName = Email_SendTemplate.UpdateName;
newsendTemplate.UpdateTime = Email_SendTemplate.UpdateTime;
newsendTemplate.EmailDesc = Email_SendTemplate.EmailDesc;
if (newsendTemplate != null)
{
// var list = (from x in Funs.DB.Em_toPeople where x.EmuserID == newsendTemplate.EmailId select x).ToList();
var list = (from x in Funs.DB.Email_ToPeople where x.EmtempID == newsendTemplate.EmailId select x).ToList();
if (list == null || list.Count == 0)
{ }
else
{
Funs.DB.Email_ToPeople.DeleteAllOnSubmit(list);
Funs.DB.SubmitChanges();
}
}
if (peopleList != null)
{
Funs.DB.Email_ToPeople.InsertAllOnSubmit(peopleList);
Funs.DB.SubmitChanges();
}
Funs.DB.SubmitChanges();
tran.Commit();
result = true;
}
catch(Exception e)
{
string ss = e.Message;
tran.Rollback();//回滚事务
// db.Connection.Close();
result = false;
}
}
Funs.DB.Connection.Close();
return result;
}
#endregion
#region
/// <summary>
/// 事物提交
/// </summary>
/// <param name="model"></param>
/// <param name="PlanDetailList"></param>
/// <param name="ManHoursPlanList"></param>
/// <returns></returns>
public static bool Delete(string EmailId)
{
bool result = true;
if (EmailId == null)
return false;
Funs.DB.Connection.Close();
Funs.DB.Connection.Open();
Funs.DB.CommandTimeout = 30000;
using (DbTransaction tran = Funs.DB.Connection.BeginTransaction())
{
Funs.DB.Transaction = tran;
try
{
Model.Email_SendTemplate newsendTemplate = Funs.DB.Email_SendTemplate.FirstOrDefault(x => x.EmailId == EmailId);
Funs.DB.Email_SendTemplate.DeleteOnSubmit(newsendTemplate);
Funs.DB.SubmitChanges();
if (newsendTemplate != null)
{
// var list = (from x in Funs.DB.Em_toPeople where x.EmuserID == newsendTemplate.EmailId select x).ToList();
var list = (from x in Funs.DB.Email_ToPeople where x.EmtempID == EmailId select x).ToList();
if (list == null || list.Count == 0)
{ }
else {
Funs.DB.Email_ToPeople.DeleteAllOnSubmit(list);
}
}
Funs.DB.SubmitChanges();
tran.Commit();
result = true;
}
catch
{
tran.Rollback();//回滚事务
// db.Connection.Close();
result = false;
}
}
Funs.DB.Connection.Close();
return result;
}
#endregion
}
}