using NewPdaSqlServer.DB; using NewPdaSqlServer.Dto; using NewPdaSqlServer.entity; using SqlSugar; namespace NewPdaSqlServer.service; public class ErpKcManager : Repository { public bool QueryStocks(Inventory inventory) { List erpKc = GetErpInventory(inventory); // 检查返回结果是否为空 if (erpKc == null || erpKc.Count == 0) { throw new NotImplementedException("返回结果为空"); } else { var baseObjects = MapErpCABtoWomcab(erpKc); return UseTransaction(db => { return SaveData(db, baseObjects) ? 1 : 0; }) > 0; } } #region 1.获取即时库存 public List GetErpInventory(Inventory inventory) { return null; } #endregion private List MapErpCABtoWomcab(List dtoList) { var ErpMesKcList = new List(); foreach (var dto in dtoList) { var kc = new ErpMesKc { FNumber = dto.FMaterialId, FQty = Convert.ToDecimal(dto.FBASEQTY), FBaseUnit=dto.FBaseUnitId, FStockUnit=dto.FStockUnitId, FStockId=dto.FStockId, CreateDate=DateTime.Now, FBatchno=dto.FLot, FMtono=dto.FMtoNo, FStockStatus=dto.FStockStatusId, FStoreUrnom= Convert.ToDecimal(dto.FSTOREURNOM), FStoreUrnum= Convert.ToDecimal(dto.FSTOREURNUM), FStockOrgId = Convert.ToDecimal(dto.FStockOrgId) }; ErpMesKcList.Add(kc); } return ErpMesKcList; } // 插入或更新数据的方法 private bool SaveData(SqlSugarScope db, List kcc) { Db.Deleteable() .ExecuteCommand(); var save = base.InsertRange(kcc); if (save) return true; throw new NotImplementedException("插入失败"); } }