123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236 |
- using SqlSugar;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using WMS.BZModels.Dto.SX.TaskDtos;
- using WMS.BZModels;
- using WMS.Info;
- using wms.sqlsugar.model.sx;
- using WMS.BZSqlSugar;
- using WMS.BZModels.Dto.SX.SysConDtos;
- using WMS.Util;
- using Org.BouncyCastle.Crypto;
- namespace WMS.BZServices.SX
- {
- public class SysConService
- {
- private readonly Repository<SysConfig> _sysconrepository;
- private readonly Repository<wms.sqlsugar.model.cp.SysConfig> _CPsysConfigRepository;
- public SysConService(Repository<SysConfig> sysconrepository, Repository<wms.sqlsugar.model.cp.SysConfig> cPsysConfigRepository)
- {
- _sysconrepository = sysconrepository;
- _CPsysConfigRepository = cPsysConfigRepository;
- }
- public PagedInfo<SysConDto> GetPageList(Pagination pagination, SysConQueryDto sysconQueryDto)
- {
- var predicate = Expressionable.Create<SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.KeyWord), m => m.Code.Contains(sysconQueryDto.KeyWord) || m.Name.Contains(sysconQueryDto.KeyWord) || m.SContent.Contains(sysconQueryDto.KeyWord)
- || m.SType.Contains(sysconQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.Code), m => m.Code.Contains(sysconQueryDto.Code));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.Name), m => m.Name.Contains(sysconQueryDto.Name));
- predicate = predicate.And(m => m.Default2 != "TunnelType" && m.Default2 != "PationType");
- var list = _sysconrepository.Queryable().Where(predicate.ToExpression())
- .ToPage<SysConfig, SysConDto>(pagination);
- return list;
- }
- public PagedInfo<TunnelDto> GetTunnelList(Pagination pagination, TunnelQueryDto tunnelQueryDto)
- {
- var predicate = Expressionable.Create<SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(tunnelQueryDto?.KeyWord), m => m.Default1.Contains(tunnelQueryDto.KeyWord) || m.Default1.Contains(tunnelQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(tunnelQueryDto?.Tunnel), m => m.Default1.Contains(tunnelQueryDto.Tunnel));
- predicate = predicate.And(m => m.SType == "InStop" || m.SType == "OutStop");
- var list = _sysconrepository.Queryable().Where(predicate.ToExpression())
- .Select(m => new TunnelDto()
- {
- Id = m.Id.ToString(),
- WareHouseName = "时效库",
- Code = m.Code,
- Name = m.Name,
- Tunnel = m.Default1,
- Floor = m.Default2,
- Statu = string.IsNullOrEmpty(m.SContent) ? "0" : "1",
- StatuName = string.IsNullOrEmpty(m.SContent) ? "启用" : "禁用",
- SType = m.SType,
- Memo = m.Memo,
- AddTime = m.AddTime,
- EditTime = m.EditTime,
- }).MergeTable()
- .ToPage(pagination);
- return list;
- }
- public PagedInfo<OutInPationDto> GetOutInPationList(Pagination pagination, OutInPationQueryDto pationQueryDto)
- {
- var predicate = Expressionable.Create<SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pationQueryDto?.KeyWord), m => m.Code.Contains(pationQueryDto.KeyWord) || m.Default2.Contains(pationQueryDto.KeyWord)
- || m.Name.Contains(pationQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pationQueryDto?.Pation), m => m.Code.Contains(pationQueryDto.Pation));
- predicate = predicate.And(m => m.Default2 == "PationType");
- var list = _sysconrepository.Queryable().Where(predicate.ToExpression())
- .Select(m => new OutInPationDto()
- {
- Id = m.Id.ToString(),
- WareHouseName = "时效库",
- Code = m.Code,
- Name = m.Name,
- Statu = string.IsNullOrEmpty(m.SContent) ? "0" : "1",
- StatuName = string.IsNullOrEmpty(m.SContent) ? "启用" : "禁用",
- SType = m.SType,
- Memo = m.Memo,
- AddTime = m.AddTime,
- EditTime = m.EditTime,
- }).MergeTable()
- .ToPage(pagination);
- return list;
- }
- public bool UpdatePationState(List<string> tunnels, string Scontent, string userId)
- {
- if (!tunnels.Any())
- {
- throw new ArgumentException("没有选择站台!");
- }
- var list = _sysconrepository.Queryable().Where(o => tunnels.Contains(o.Id.ToString())).ToList();
- if (!list.Any())
- {
- throw new ArgumentException("没有找到该站台!");
- }
- list.ForEach(o =>
- {
- o.SContent = Scontent;
- o.EditWho = userId;
- o.EditTime = DateTime.Now;
- });
- var result = _sysconrepository.UpdateRange(list.ToArray());
- return result;
- }
- public bool UpdateTunnelState(List<string> tunnels, string Scontent, string userId, string remark)
- {
- if (!tunnels.Any())
- {
- throw new ArgumentException("没有选择巷道!");
- }
- var list = _sysconrepository.Queryable().Where(o => tunnels.Contains(o.Id.ToString())).ToList();
- if (!list.Any())
- {
- throw new ArgumentException("没有找到该巷道!");
- }
- list.ForEach(o =>
- {
- o.SContent = Scontent;
- o.EditWho = userId;
- o.EditTime = DateTime.Now;
- o.Memo = remark;
- });
- var result = _sysconrepository.UpdateRange(list.ToArray());
- return result;
- }
- public void Save(LoginUserInfo loginUser, string keyValue, SysConfig entity)
- {
- try
- {
- if (string.IsNullOrWhiteSpace(entity.Code))
- {
- throw new ArgumentException("配置编码不能为空");
- }
- if (keyValue.IsEmpty() || keyValue == "undefined")
- {
- var mat = _sysconrepository.GetSingle(p => p.Code == entity.Code);
- if (mat != null)
- {
- throw new ArgumentException("编码已存在");
- }
- SysConfig item = new SysConfig()
- {
- AddWho = loginUser.UserNo,
- Code = entity.Code,
- EditWho = loginUser.UserNo,
- Name = entity.Name,
- SContent = entity.SContent,
- SType = entity.SType,
- Default1 = entity.Default1,
- Default2 = entity.Default2,
- Default3 = entity.Default3,
- Memo = entity.Memo
- };
- _sysconrepository.Insert(item);
- }
- else
- {
- entity.EditTime = DateTime.Now;
- entity.EditWho = loginUser.UserNo;
- _sysconrepository.AsUpdateable(entity).IgnoreColumns(it => it.AddTime).IgnoreColumns(it => it.AddWho).Where(it => it.Code == keyValue).ExecuteCommand();
- }
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- public void Delete(string ModuleNo)
- {
- try
- {
- _sysconrepository.Deleteable().Where(it => it.Code == ModuleNo).ExecuteCommand();
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- public PagedInfo<WMS.BZModels.Dto.CP.SysConDtos.SysConDto> GetPalletizingStationPageList(Pagination pagination, SysConQueryDto sysconQueryDto)
- {
- var predicate = Expressionable.Create<wms.sqlsugar.model.cp.SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.KeyWord), m => m.Code.Contains(sysconQueryDto.KeyWord) || m.Name.Contains(sysconQueryDto.KeyWord) || m.SContent.Contains(sysconQueryDto.KeyWord)
- || m.SType.Contains(sysconQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.Code), m => m.Code.Contains(sysconQueryDto.Code));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(sysconQueryDto?.Name), m => m.Name.Contains(sysconQueryDto.Name));
- predicate = predicate.And(m => m.SType == "PalletizingType");
- var list = _CPsysConfigRepository.Queryable().Where(predicate.ToExpression())
- .ToPage<wms.sqlsugar.model.cp.SysConfig, WMS.BZModels.Dto.CP.SysConDtos.SysConDto>(pagination);
- list.Result.ForEach(o => {
- if (o.AddWho != "禁用")
- o.AddWho = "启用";
- });
- return list;
- }
- public bool UpdatePalletizingStationState(string id, string Scontent, string userId)
- {
- if (string.IsNullOrEmpty(id))
- {
- throw new ArgumentException("没有选择码垛位!");
- }
- var first = _CPsysConfigRepository.Queryable().First(o => id.Equals(o.Id.ToString()));
- if (first == null)
- {
- throw new ArgumentException("没有找到该码垛位!");
- }
- var result = _CPsysConfigRepository.UpdateModelColumns(p => new wms.sqlsugar.model.cp.SysConfig
- {
- AddWho = Scontent,// 禁用 启用
- EditWho = userId,
- EditTime = DateTime.Now,
- }, it => it.Id.Equals(id));
- return result;
- }
- }
- }
|