| | |
| | | { |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 分页 |
| | | /// </summary> |
| | | /// <param name="options"></param> |
| | | /// <returns></returns> |
| | | public override PageGridData<DtStockInfo> GetPageData(PageDataOptions options) |
| | | { |
| | | var data = base.GetPageData(options); |
| | |
| | | return data; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 批量删除 |
| | | /// </summary> |
| | | /// <param name="keys"></param> |
| | | /// <returns></returns> |
| | | public override WebResponseContent DeleteData(object[] keys) |
| | | { |
| | | List<DtStockInfo_Hty> stockInfos = new List<DtStockInfo_Hty>(); |
| | | foreach (var item in keys) |
| | | try |
| | | { |
| | | var stock = BaseDal.QueryFirstNavAsync(x => x.Id == item.ObjToInt()).Result; |
| | | var stockHty = stock.Adapt<DtStockInfo_Hty>(); |
| | | stockInfos.Add(stockHty); |
| | | } |
| | | var hty = BaseDal.Db.InsertNav(stockInfos) |
| | | .Include(x => x.StockInfoDetails) |
| | | .ExecuteCommand(); |
| | | |
| | | return base.DeleteData(keys); |
| | | List<DtStockInfo_Hty> stockInfos = new List<DtStockInfo_Hty>(); |
| | | List<DtLocationInfo> locationInfos = new List<DtLocationInfo>(); |
| | | foreach (var item in keys) |
| | | { |
| | | var stock = BaseDal.QueryFirstNavAsync(x => x.Id == item.ObjToInt()).Result; |
| | | var stockHty = stock.Adapt<DtStockInfo_Hty>(); |
| | | stockInfos.Add(stockHty); |
| | | |
| | | var location = SqlSugarHelper.DbWMS.Queryable<DtLocationInfo>().FirstAsync(x => x.Id == stock.LocationId).Result; |
| | | location.LocationStatus = (int)LocationEnum.Free; |
| | | locationInfos.Add(location); |
| | | } |
| | | |
| | | var hty = BaseDal.Db.InsertNav(stockInfos) |
| | | .Include(x => x.StockInfoDetails) |
| | | .ExecuteCommand(); |
| | | |
| | | var locationd = SqlSugarHelper.DbWMS.Updateable(locationInfos).ExecuteCommandHasChange(); |
| | | return base.DeleteData(keys); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | |
| | | // 根据传入库存类型获取不同巷道的库存 |
| | | public async Task<Dictionary<string, int>> GetLocationByStockType(bool stockType,string areaCode) |
| | | { |
| | | var stockInfos = await BaseDal.Db.Queryable<DtStockInfo>().Where(x => x.IsFull == stockType && x.AreaCode == areaCode) |
| | | .Includes(x => x.LocationInfo).ToListAsync(); |
| | | |
| | | var result = stockInfos |
| | | .GroupBy(x => x.LocationInfo.RoadwayNo) |
| | | .ToDictionary(x => x.Key, x => x.Count()); |
| | | return result; |
| | | } |
| | | } |