123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- using SqlSugar;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using WMS.BZModels.Dto.HJ.TaskDtos;
- using WMS.BZModels;
- using WMS.Info;
- using WMS.BZSqlSugar;
- using wms.sqlsugar.model.pt;
- using WMS.BZModels.Dto.PT.SysConDtos;
- using System.Diagnostics;
- namespace WMS.BZServices.PT
- {
- public class SysConService
- {
- private readonly Repository<SysConfig> _sysconrepository;
- private readonly BillLogService _billLogService;
- public SysConService(Repository<SysConfig> sysconrepository, BillLogService billLogService)
- {
- _sysconrepository = sysconrepository;
- _billLogService = billLogService;
- }
- 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)
- );
- 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.stype != "Pinku");
- 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.default2 == "TunnelType");
- 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,
- 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)
- );
- 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,
- Default2= m.default2,
- Memo = m.Memo,
- AddTime = m.AddTime,
- EditTime = m.EditTime,
- }).MergeTable()
- .ToPage(pagination);
- return list;
- }
- public PagedInfo<PinKuDto> GetPinKuList(Pagination pagination, PinKuQueryDto pinkuQueryDto)
- {
- var predicate = Expressionable.Create<SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pinkuQueryDto?.KeyWord), m => m.code.Contains(pinkuQueryDto.KeyWord) || m.name.Contains(pinkuQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pinkuQueryDto?.Code), m => m.code.Contains(pinkuQueryDto.Code));
- predicate = predicate.And(m => m.default1 == "22PinKu");
- var list = _sysconrepository.Queryable().Where(predicate.ToExpression())
- .Select(m => new PinKuDto()
- {
- Id = m.Id.ToString(),
- WareHouseName = "盘条仓库",
- Code = m.code,
- Name = m.name,
- SContent = m.scontent,
- SType = "平库点位",
- Memo = m.Memo,
- Default2=m.default2,
- Default5=m.default5,
- Default6=m.default6,
- AddTime = m.AddTime,
- EditTime = m.EditTime,
- }).MergeTable()
- .ToPage(pagination);
- return list;
- }
- public PagedInfo<PinKuDto> GetProductPinKuList(Pagination pagination, PinKuQueryDto pinkuQueryDto)
- {
- var predicate = Expressionable.Create<SysConfig>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pinkuQueryDto?.KeyWord), m => m.code.Contains(pinkuQueryDto.KeyWord) || m.name.Contains(pinkuQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pinkuQueryDto?.Code), m => m.code.Contains(pinkuQueryDto.Code));
- predicate = predicate.And(m => m.default1 == "ProductPinKu");
- var list = _sysconrepository.Queryable().Where(predicate.ToExpression())
- .Select(m => new PinKuDto()
- {
- Id = m.Id.ToString(),
- WareHouseName = "盘条仓库",
- Code = m.code,
- Name = m.name,
- SContent = m.scontent,
- SType = "生产领料点位",
- Memo = m.Memo,
- Default2=m.default2,
- Default3=m.default3,
- Default5=m.default5,
- Default6=m.default6,
- 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 SaveProductPinKuStatus(LoginUserInfo loginUser, string keyValue, SysConfig entity)
- {
- try
- {
- if (string.IsNullOrWhiteSpace(entity.code))
- {
- throw new ArgumentException("点位编码不能为空");
- }
- var firstentity = _sysconrepository.Queryable().First(o => entity.code==o.code) ;
- if (firstentity==null)
- {
- throw new ArgumentException("没有找到该点位!");
- }
- var firstscontent=firstentity.scontent;
- var firstMemo = firstentity.Memo ;
- firstentity.scontent = entity.scontent;
- firstentity.Memo = entity.Memo;
- firstentity.EditWho = loginUser.UserNo;
- firstentity.EditTime = DateTime.Now;
- _billLogService.WriteLog(loginUser, entity, $"平库管理状态由:{firstscontent}改为:{entity.scontent},Memo:{firstMemo}改为:{entity.Memo}", "WMS.BZServices.PT.SysConService", "SaveProductPinKuStatus", new Stopwatch(), ELogType.Work, null);
- _sysconrepository.Update(firstentity);
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- 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 bool UpdatePinkuState(List<string> pinku, string Scontent, string userId)
- {
- if (!pinku.Any())
- {
- throw new ArgumentException("没有选择点位!");
- }
- var list = _sysconrepository.Queryable().Where(o => pinku.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 IEnumerable<dynamic> GetEquipList()
- {
- return _sysconrepository.Queryable().Where(o => o.stype == "Pinku" && (o.default1 == "ProductPinKu" || o.default1 == "22PinKu")).Select(o => o.code).Distinct().ToList().OrderBy(o => o).Select(o => new { id = o, text = o });
- }
- }
- }
|