You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
4.3 KiB
C#
108 lines
4.3 KiB
C#
using CompressorXN_Log;
|
|
using CompressorXN_Model;
|
|
using CompressorXN_Model.ViewModel.Response;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace CompressorXN_Service
|
|
{
|
|
public class AgreementConfigService : DbContext
|
|
{
|
|
/// <summary>
|
|
/// 查询协议配置
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public List<T_Agreement_Config> QueryAgreements()
|
|
{
|
|
try
|
|
{
|
|
return db.Queryable<T_Agreement_Config>().Where(m => m.AgreementName != "template").OrderBy(m => m.AgreementName).ToList();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex, "执行AgreementConfigService下QueryAgreements时异常");
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据协议名称查询协议配置
|
|
/// </summary>
|
|
/// <param name="agreementName"></param>
|
|
/// <returns></returns>
|
|
public T_Agreement_Config QueryAgreementByAgreementName(string agreementName)
|
|
{
|
|
try
|
|
{
|
|
return db.Queryable<T_Agreement_Config>().First(m => m.AgreementName == agreementName);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex, "执行AgreementConfigService下QueryAgreement时异常");
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据协议名称查询协议配置
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public AgreementVM QueryAgreementByName(string agreementName)
|
|
{
|
|
try
|
|
{
|
|
AgreementVM agreementVM = new AgreementVM
|
|
{
|
|
AgreementConfig = new T_Agreement_Config(),
|
|
AgreementDetailRuleList = new List<T_Agreement_Detail_Rule>(),
|
|
AgreementHelpRuleList = new List<T_Agreement_Help_Rule>(),
|
|
AgreementAdditionalRuleList = new List<T_Agreement_Additional_Rule>()
|
|
};
|
|
agreementVM.AgreementConfig = db.Queryable<T_Agreement_Config>().First(m => m.AgreementName == agreementName);
|
|
agreementVM.AgreementDetailRuleList = db.Queryable<T_Agreement_Detail_Rule>().Where(m => m.AgreementName == agreementName).ToList();
|
|
agreementVM.AgreementHelpRuleList = db.Queryable<T_Agreement_Help_Rule>().Where(m => m.AgreementName == agreementName).OrderBy(m=>m.SortIndex).ToList();
|
|
agreementVM.AgreementAdditionalRuleList = db.Queryable<T_Agreement_Additional_Rule>().Where(m => m.AgreementName == agreementName).ToList();
|
|
return agreementVM;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex, "执行AgreementConfigService下QueryAgreementByName时异常");
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存协议
|
|
/// </summary>
|
|
/// <param name="agreementVM"></param>
|
|
/// <param name="agreementName">协议名称</param>
|
|
/// <returns></returns>
|
|
public bool SaveAgreement(AgreementVM agreementVM, string agreementName)
|
|
{
|
|
try
|
|
{
|
|
db.Ado.BeginTran();
|
|
db.Deleteable<T_Agreement_Config>().Where(m => m.AgreementName == agreementName).ExecuteCommand();
|
|
db.Deleteable<T_Agreement_Detail_Rule>().Where(m => m.AgreementName == agreementName).ExecuteCommand();
|
|
db.Deleteable<T_Agreement_Additional_Rule>().Where(m => m.AgreementName == agreementName).ExecuteCommand();
|
|
db.Deleteable<T_Agreement_Help_Rule>().Where(m => m.AgreementName == agreementName).ExecuteCommand();
|
|
|
|
db.Insertable(agreementVM.AgreementConfig).ExecuteCommand();
|
|
db.Insertable(agreementVM.AgreementDetailRuleList).ExecuteCommand();
|
|
db.Insertable(agreementVM.AgreementAdditionalRuleList).ExecuteCommand();
|
|
db.Insertable(agreementVM.AgreementHelpRuleList).ExecuteCommand();
|
|
|
|
db.Ado.CommitTran();
|
|
return true;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
db.Ado.RollbackTran();
|
|
LogHelper.Error(ex, "执行AgreementConfigService下SaveAgreement时异常");
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
}
|