123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- using Org.BouncyCastle.Crypto;
- using SqlSugar;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using wms.sqlsugar.model.fj;
- using WMS.BZModels;
- using WMS.BZModels.Dto.FJ.WCSPalletizingDtos;
- using WMS.BZSqlSugar;
- using WMS.Info;
- using WMS.Util;
- namespace WMS.BZServices.FJ
- {
- public class WCSPalletizingService
- {
- private readonly Repository<WCSPalletizing> _WCSPalletizingRepository;
- private readonly Repository<BaseWarehouse> _wareHouserepository;
- public WCSPalletizingService(Repository<WCSPalletizing> wCSPalletizingRepository, Repository<BaseWarehouse> wareHouserepository)
- {
- _WCSPalletizingRepository = wCSPalletizingRepository;
- _wareHouserepository = wareHouserepository;
- }
- public PagedInfo<WCSPalletizingDto> GetPageList(Pagination pagination, WCSPalletizingQueryDto wcsPalletizingQueryDto)
- {
- var predicate = Expressionable.Create<WCSPalletizing>();
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.KeyWord), m => m.Code.ToString().Contains(wcsPalletizingQueryDto.KeyWord) || m.PalleCode.Contains(wcsPalletizingQueryDto.KeyWord) || m.TaskId.ToString().Contains(wcsPalletizingQueryDto.KeyWord)
- || m.ProMaterCode.Contains(wcsPalletizingQueryDto.KeyWord) || m.MatCodeList.Contains(wcsPalletizingQueryDto.KeyWord) || m.DeviceCode.ToString() == wcsPalletizingQueryDto.KeyWord);
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.TaskId), m => m.TaskId.ToString().Contains(wcsPalletizingQueryDto.TaskId));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.PalleCode), m => m.PalleCode.Contains(wcsPalletizingQueryDto.PalleCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.Code), m => m.Code.Contains(wcsPalletizingQueryDto.Code));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.ProMaterCode), m => m.ProMaterCode.Contains(wcsPalletizingQueryDto.ProMaterCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.PalletizingStation), m => m.PalletizingStation.Contains(wcsPalletizingQueryDto.PalletizingStation));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.CountQty), m => m.CountQty.ToString().Contains(wcsPalletizingQueryDto.CountQty));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.TpTypeCode), m => m.TpTypeCode.Contains(wcsPalletizingQueryDto.TpTypeCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.LayerCountQty), m => m.LayerCountQty.ToString().Contains(wcsPalletizingQueryDto.LayerCountQty));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.Finish), m => m.Finish.Equals(wcsPalletizingQueryDto.Finish));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.MatCodeList), m => m.MatCodeList.Contains(wcsPalletizingQueryDto.MatCodeList));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(wcsPalletizingQueryDto?.WarehouseCode), m => m.WarehouseCode.Equals(wcsPalletizingQueryDto.WarehouseCode));
- predicate = predicate.AndIF(wcsPalletizingQueryDto != null && wcsPalletizingQueryDto.AddTimeFrom.HasValue, m => m.AddTime >= wcsPalletizingQueryDto.AddTimeFrom);
- predicate = predicate.AndIF(wcsPalletizingQueryDto != null && wcsPalletizingQueryDto.AddTimeTo.HasValue, m => m.AddTime <= wcsPalletizingQueryDto.AddTimeTo);
- var list = _WCSPalletizingRepository.Queryable().Where(predicate.ToExpression()).ToPage<WCSPalletizing, WCSPalletizingDto>(pagination);
- var wareHouses = _wareHouserepository.Queryable().Where(o => o.IsStop == 0).ToList();
- list.Result.ForEach(o =>
- {
- o.WarehouseName = wareHouses.FirstOrDefault(v => v.Code == o.WarehouseCode)?.Name ?? "";
- });
- return list;
- }
- public void UpdateFinish(List<string> ids, string userId, int state)
- {
- if (!ids.Any())
- {
- throw new ArgumentException("没有选择任务!");
- }
- var list = _WCSPalletizingRepository.Queryable().Where(o => ids.Contains(o.Id.ToString())).ToList();
- if (!list.Any())
- {
- throw new ArgumentException("没有找到该任务!");
- }
- bool isfinish = state == 1;
- foreach (var id in list)
- {
- _WCSPalletizingRepository.UseTranAction(() =>
- {
- _WCSPalletizingRepository.AsUpdateable().With("WITH(ROWLOCK,UPDLOCK)").SetColumns(p => new WCSPalletizing()
- {
- Finish = isfinish,
- }).Where(p => p.Id == id.Id).ExecuteCommand();
- });
- }
- }
- public void UpdatePalleCode(List<string> ids, string userId, string palleCode)
- {
- if (!ids.Any())
- {
- throw new ArgumentException("没有选择任务!");
- }
- var list = _WCSPalletizingRepository.Queryable().Where(o => ids.Contains(o.Id.ToString())).ToList();
- if (!list.Any())
- {
- throw new ArgumentException("没有找到该任务!");
- }
- foreach (var id in list)
- {
- _WCSPalletizingRepository.UseTranAction(() =>
- {
- _WCSPalletizingRepository.AsUpdateable().With("WITH(ROWLOCK,UPDLOCK)").SetColumns(p => new WCSPalletizing()
- {
- PalleCode = palleCode,
- }).Where(p => p.Id == id.Id).ExecuteCommand();
- });
- }
- }
- public void PalletizingStation(List<string> Ids, string userId)
- {
- if (Ids == null || !Ids.Any())
- {
- throw new ArgumentException("没有选择跺型数据!");
- }
- var list = _WCSPalletizingRepository.Queryable().Where(o => Ids.Contains(o.Id.ToString())).ToList();
- if (!list.Any())
- {
- throw new ArgumentException("没有找到该任务!");
- }
- var listids = list.Select(o => o.Id).ToList();
- _WCSPalletizingRepository.UseTranAction(() =>
- {
- _WCSPalletizingRepository.AsUpdateable().With("WITH(ROWLOCK,UPDLOCK)").SetColumns(p => new WCSPalletizing()
- {
- PalletizingStation = null,
- }).Where(p => listids.Contains(p.Id)).ExecuteCommand();
- });
- }
- }
- }
|