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, IFunSettingServer { /// /// 依赖注入 /// private readonly IFunSettingRepository _setting; private readonly IMapper _mapper; private static readonly SqlSugarScope Db = DataContext.Db; /// /// 构造函数 /// /// 功能设定 /// automapper public FunSettingServer(IFunSettingRepository setting, IMapper mapper) : base(Db) { _setting = setting;//功能设定 _mapper = mapper;//automapper } /// /// 获取功能设定信息列表 /// /// 功能名称 /// 开启状态 /// 组号 /// public List GetFunSettingList(string FunSetName, string IsEnable, string GroupNo) { List settinglist = _setting.GetFunSettingList(FunSetName, IsEnable, GroupNo); return settinglist; } /// /// 根据id查询功能设定信息 /// /// 功能id /// public SysFunSetting GetFunSettingById(int id) { SysFunSetting settinglist = _setting.GetFunSettingById(id); return settinglist; } /// /// 根据编号查询功能设定信息 /// /// 功能编号 /// public int GetFunSettingByNo(string FunSetNo) { List funSettings = _setting.GetFunSettingByNo(FunSetNo); return funSettings.Count; } /// /// 新增功能信息 /// /// 功能设定dto /// /// 捕获异常 public async Task AddFunSettings(FunSettingDto settingdto) { //捕获异常 try { //映射模型 SysFunSetting setting = _mapper.Map(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); } } /// /// 删除功能信息 /// /// 功能设定实体模型 /// /// 捕获异常 public async Task DelFunSettings(SysFunSetting funSetting) { //捕获异常 try { //删除 int i = await _setting.DelFunSettings(funSetting); return i; } catch (Exception ex) { //抛出异常 throw new Exception("删除功能异常", ex); } } /// /// 编辑功能信息 /// /// 功能设定实体 /// /// 捕获异常 public async Task ExitFunSettings(FunSettingDto settingdto) { //捕获异常 try { //映射模型 SysFunSetting setting = _mapper.Map(settingdto); //编辑 int i = await _setting.ExitFunSettings(setting); return i; } catch (Exception ex) { //抛出异常 throw new Exception("编辑功能异常", ex); } } /// /// 修改任务优先级 /// /// /// /// /// public async Task ExitFunSettingsTask(string groupNo,string url) { try { //根据组号获取当前组功能信息 var list = Db.Queryable().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().Where(a => a.IsDel == "0" && a.IsEnable == "NO" && a.GroupNo == groupNo).First(); return set.FunSetName; } catch (Exception ex) { Db.RollbackTran(); throw new Exception("修改任务优先级异常", ex); } } /// /// 获取任务功能信息 /// /// /// /// public SysFunSetting GetFunsettingTask(string IsEnable, string GroupNo) { try { var list = Db.Queryable().Where(a => a.IsDel == "0" && a.IsEnable == IsEnable && a.GroupNo == GroupNo).First(); return list; } catch (Exception ex) { throw new Exception("获取任务功能信息失败", ex); } } } }