using AutoMapper;
|
using Model.ModelDto.SysDto;
|
using SqlSugar;
|
using System;
|
using System.Collections.Generic;
|
using System.Security.Cryptography;
|
using System.Text;
|
using System.Text.RegularExpressions;
|
using System.Threading.Tasks;
|
using WMS.DAL;
|
using WMS.Entity.BllAsnEntity;
|
using WMS.Entity.Context;
|
using WMS.Entity.SysEntity;
|
using WMS.IBLL.ISysServer;
|
using WMS.IDAL.ISysInterface;
|
|
namespace WMS.BLL.SysServer
|
{
|
public class FunSettingServer : DbHelper<BllArrivalNoticeDetail>, IFunSettingServer
|
{
|
/// <summary>
|
/// 依赖注入
|
/// </summary>
|
private readonly IFunSettingRepository _setting;
|
private readonly IMapper _mapper;
|
private static readonly SqlSugarScope Db = DataContext.Db;
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="setting">功能设定</param>
|
/// <param name="mapper">automapper</param>
|
public FunSettingServer(IFunSettingRepository setting, IMapper mapper) : base(Db)
|
{
|
_setting = setting;//功能设定
|
_mapper = mapper;//automapper
|
}
|
|
|
/// <summary>
|
/// 获取功能设定信息列表
|
/// </summary>
|
/// <param name="FunSetName">功能名称</param>
|
/// <param name="IsEnable">开启状态</param>
|
/// <param name="GroupNo">组号</param>
|
/// <returns></returns>
|
public List<FunSettingDto> GetFunSettingList(string FunSetName, string IsEnable, string GroupNo)
|
{
|
|
List<FunSettingDto> settinglist = _setting.GetFunSettingList(FunSetName, IsEnable, GroupNo);
|
return settinglist;
|
}
|
|
/// <summary>
|
/// 根据id查询功能设定信息
|
/// </summary>
|
/// <param name="id">功能id</param>
|
/// <returns></returns>
|
public SysFunSetting GetFunSettingById(int id)
|
{
|
SysFunSetting settinglist = _setting.GetFunSettingById(id);
|
return settinglist;
|
}
|
|
/// <summary>
|
/// 根据编号查询功能设定信息
|
/// </summary>
|
/// <param name="FunSetNo">功能编号</param>
|
/// <returns></returns>
|
public int GetFunSettingByNo(string FunSetNo)
|
{
|
List<SysFunSetting> funSettings = _setting.GetFunSettingByNo(FunSetNo);
|
return funSettings.Count;
|
}
|
|
/// <summary>
|
/// 新增功能信息
|
/// </summary>
|
/// <param name="settingdto">功能设定dto</param>
|
/// <returns></returns>
|
/// <exception cref="Exception">捕获异常</exception>
|
public async Task<int> AddFunSettings(FunSettingDto settingdto)
|
{
|
//捕获异常
|
try
|
{
|
//映射模型
|
SysFunSetting setting = _mapper.Map<SysFunSetting>(settingdto);
|
//判断功能编号是否唯一
|
int count = GetFunSettingByNo(setting.FunSetNo);
|
int i = 0;
|
if (count > 0)
|
{
|
i = 3;
|
}
|
else if (count == 0)
|
{
|
//新增
|
i = await _setting.AddFunSettings(setting);
|
}
|
return i;
|
}
|
catch (Exception ex)
|
{
|
//抛出异常
|
throw new Exception("新增功能异常", ex);
|
}
|
}
|
|
/// <summary>
|
/// 删除功能信息
|
/// </summary>
|
/// <param name="funSetting">功能设定实体模型</param>
|
/// <returns></returns>
|
/// <exception cref="Exception">捕获异常</exception>
|
public async Task<int> DelFunSettings(SysFunSetting funSetting)
|
{
|
//捕获异常
|
try
|
{
|
//删除
|
int i = await _setting.DelFunSettings(funSetting);
|
return i;
|
}
|
catch (Exception ex)
|
{
|
//抛出异常
|
throw new Exception("删除功能异常", ex);
|
}
|
}
|
|
/// <summary>
|
/// 编辑功能信息
|
/// </summary>
|
/// <param name="setting">功能设定实体</param>
|
/// <returns></returns>
|
/// <exception cref="Exception">捕获异常</exception>
|
public async Task<int> ExitFunSettings(FunSettingDto settingdto)
|
{
|
//捕获异常
|
try
|
{
|
//映射模型
|
SysFunSetting setting = _mapper.Map<SysFunSetting>(settingdto);
|
//编辑
|
int i = await _setting.ExitFunSettings(setting);
|
return i;
|
}
|
catch (Exception ex)
|
{
|
//抛出异常
|
throw new Exception("编辑功能异常", ex);
|
}
|
}
|
|
/// <summary>
|
/// 修改任务优先级
|
/// </summary>
|
/// <param name="groupNo"></param>
|
/// <param name="url"></param>
|
/// <returns></returns>
|
/// <exception cref="Exception"></exception>
|
public async Task<string> ExitFunSettingsTask(string groupNo,string url)
|
{
|
try
|
{
|
//根据组号获取当前组功能信息
|
var list = Db.Queryable<SysFunSetting>().Where(a => a.IsDel == "0" && a.GroupNo == groupNo).ToList();
|
|
Db.BeginTran();
|
|
foreach (var item in list)
|
{
|
if (item.IsEnable == "NO")
|
{
|
item.IsEnable = "OFF";
|
}
|
else if (item.IsEnable == "OFF")
|
{
|
item.IsEnable = "NO";
|
}
|
Db.Updateable(item).ExecuteCommand();
|
}
|
|
Db.CommitTran();
|
|
var set = Db.Queryable<SysFunSetting>().Where(a => a.IsDel == "0" && a.IsEnable == "NO" && a.GroupNo == groupNo).First();
|
return set.FunSetName;
|
|
}
|
catch (Exception ex)
|
{
|
Db.RollbackTran();
|
throw new Exception("修改任务优先级异常", ex);
|
}
|
}
|
|
/// <summary>
|
/// 获取任务功能信息
|
/// </summary>
|
/// <param name="IsEnable"></param>
|
/// <param name="GroupNo"></param>
|
/// <returns></returns>
|
public SysFunSetting GetFunsettingTask(string IsEnable, string GroupNo)
|
{
|
try
|
{
|
var list = Db.Queryable<SysFunSetting>().Where(a => a.IsDel == "0" && a.IsEnable == IsEnable && a.GroupNo == GroupNo).First();
|
return list;
|
}
|
catch (Exception ex)
|
{
|
|
throw new Exception("获取任务功能信息失败", ex);
|
}
|
}
|
}
|
}
|