using SqlSugar; using wms.sqlsugar.model.pt; using WMS.BZModels; using WMS.BZModels.Dto.PT.RfidDtos; using WMS.Info; using WMS.BZSqlSugar; namespace WMS.BZServices.PT { public class RfidService { private readonly Repository _contrepository; public RfidService(Repository contrepository) { _contrepository = contrepository; } public PagedInfo GetPageList(Pagination pagination, RfidQueryDto rfidQueryDto) { if (pagination.sord.ToUpper() != "ASC") { pagination.sidx = pagination.sidx + " DESC"; } if (pagination.sidx.IsEmpty()) { pagination.sidx = "AddTime DESC"; } var predicate = Expressionable.Create(); predicate = predicate.AndIF(!string.IsNullOrEmpty(rfidQueryDto?.KeyWord), m => m.ContBarCode.Contains(rfidQueryDto.KeyWord)); predicate = predicate.AndIF(!string.IsNullOrEmpty(rfidQueryDto?.ContBarCode), m => m.ContBarCode.Contains(rfidQueryDto.ContBarCode)); predicate = predicate.AndIF(!string.IsNullOrEmpty(rfidQueryDto?.Name), m => m.Name.Contains(rfidQueryDto.Name)); var list = _contrepository.Queryable().Where(predicate.ToExpression()) //.OrderBy(pagination.sidx) .ToPage(pagination); return list; } public void Save(LoginUserInfo loginUser, string keyValue, BaseContinfo entity) { try { if (string.IsNullOrWhiteSpace(entity.ContBarCode)) { throw new ArgumentException("仓库编码不能为空"); } if (keyValue.IsEmpty() || keyValue == "undefined") { var mat = _contrepository.GetSingle(p => p.ContBarCode == entity.ContBarCode); if (mat != null) { throw new ArgumentException("仓库编码已存在"); } BaseContinfo item = new BaseContinfo() { WarehouseId = 1668442390064664576, AddWho = loginUser.UserNo, ContBarCode = entity.ContBarCode, EditWho = loginUser.UserNo, Name = entity.Name, IsStop = 0, TypeCode = "ContainerType_RFID", PrintQty = 1, WeightQty = entity.WeightQty }; _contrepository.Insert(item); } else { entity.EditTime = DateTime.Now; entity.EditWho = loginUser.UserNo; _contrepository.AsUpdateable(entity).IgnoreColumns(it => it.AddTime).IgnoreColumns(it => it.AddWho).IgnoreColumns(it => it.TypeCode).IgnoreColumns(it => it.PrintQty).Where(it => it.ContBarCode == keyValue).ExecuteCommand(); } } catch (Exception ex) { throw ex; } } public void Delete(string ModuleNo) { try { _contrepository.Deleteable().Where(it => it.ContBarCode == ModuleNo).ExecuteCommand(); } catch (Exception ex) { throw ex; } } } }