using MyCode.Project.Domain.Config;
using MyCode.Project.Domain.Dtos.Request.Act;
using MyCode.Project.Domain.Message.Act.User;
using MyCode.Project.Domain.Message.Request.User;
using MyCode.Project.Domain.Message.Response.User;
using MyCode.Project.Domain.Model;
using MyCode.Project.Domain.Repositories;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Infrastructure.Constant;
using MyCode.Project.Infrastructure.Enumeration;
using MyCode.Project.Infrastructure.Exceptions;
using MyCode.Project.Infrastructure.Extensions;
using MyCode.Project.Repositories.Common;
using Senparc.CO2NET.Extensions;
using Senparc.NeuChar.NeuralSystems;
using System;
using Wolf.Infrastructure.Domain.Entities;
namespace MyCode.Project.Services.Implementation
{
///
/// 系统配置 相关服务
///
public class GlobalSwitchService : ServiceBase , IGlobalSwitchService
{
private ISysGlobalConfigRepository _sysGlobalConfigRepository;
public GlobalSwitchService(ISysGlobalConfigRepository sysGlobalConfigRepository)
{
_sysGlobalConfigRepository = sysGlobalConfigRepository;
}
public string PosAppVersionCode = "900201";
#region GetPosAppVersionConfig(获取版本号配置信息)
///
/// 获取版本号配置信息
///
///
public PosAppVersionConfigAct GetPosAppVersionConfig()
{
var config = _sysGlobalConfigRepository.Queryable().Where(t => t.Code == PosAppVersionCode).First();
PosAppVersionConfigAct result = new PosAppVersionConfigAct();
if (config == null)
{
//ValidBusiness("没有配置参数");
return result;
}
result.Id = config.ID;
if (!string.IsNullOrWhiteSpace(config.Value))
{
var temp = JsonHelper.ToObject< PosAppVersionConfig >(config.Value);
if (temp != null)
{
result.IfCheckVersion = temp.IfCheckVersion;
result.Version = temp.Version;
result.TaiGuoVersion = temp.TaiGuoVersion;
result.VersionName = temp.VersionName;
}
}
result.LastModificationTime = config.EditTime;
result.Note = config.Note;
return result;
}
#endregion
#region SavePosAppVersionConfig(保存版本配置信息)
///
/// 保存版本配置信息
///
///
public void SavePosAppVersionConfig(PosAppVersionConfigAct act)
{
int ifadd = 0;
var config = _sysGlobalConfigRepository.Queryable().Where(t => t.Code == PosAppVersionCode).First();
if (config == null)
{
config = new SysGlobalConfig();
config.ID = Guid.NewGuid();
config.MerchantID = this.MerchantId;
config.Code = PosAppVersionCode;
ifadd = 1;
}
PosAppVersionConfig value = new PosAppVersionConfig();
value.IfCheckVersion = act.IfCheckVersion;
value.Version = act.Version;
value.VersionName = act.VersionName;
value.TaiGuoVersion = act.TaiGuoVersion;
config.Value = value.ToJson();
config.Note = act.Note;
config.EditTime = DateTime.Now;
if (ifadd == 1)
{
_sysGlobalConfigRepository.Add(config);
}
else
{
_sysGlobalConfigRepository.Update(config);
}
}
#endregion
}
}