123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- using SqlSugar;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using wms.dataservice.IDataSetvice;
- using wms.dto;
- using wms.dto.request;
- using wms.dto.request.hj.dto;
- using wms.sqlsugar;
- using wms.sqlsugar.model.hj;
- namespace wms.dataservice.DataService
- {
- public class HJDataService: IHJDataService
- {
- Repository<hjBaseWareLocation> _baseWareLocationrepository => new Repository<hjBaseWareLocation>();
- Repository<hjBillDocument> _billDocument => new Repository<hjBillDocument>();
- /// <summary>
- /// 二升位有出库任务的一升位有货(无任务)货位
- /// </summary>
- /// <param name="reqEntity"></param>
- /// <returns></returns>
- public List<hjBaseWareLocation> GetLocationDept1WithDept2Stock(ApplyStockOutRequest reqEntity)
- {
- //var list = _baseWareLocationrepository.Context.Queryable<hjBaseWareLocation, hjBaseWareLocation, hjBaseEquipment>((location1, location2, equipment) => new object[] {
- // JoinType.Inner,location1.ShelfCode == location2.ShelfCode && location1.LogicCol == location2.LogicCol && location1.LogicLayer == location2.LogicLayer && location1.ZoneId == location2.ZoneId,
- // JoinType.Inner,house.Id == equipment.WarehouseId && location1.Tunnel == equipment.Tunnel && equipment.EquipType == BaseDictionaryConst.EquipType_PlierCode
- // })
- // .Where((location1, zone, house, location2, equipment) => location1.Status == 1 && location1.IsDelete == 0 && location2.Status == 1 && location2.IsDelete == 0 && zone.IsDelete == 0 && zone.Status == 1 && house.IsDelete == 0 && house.Status == 1)
- // .Where((location1, zone, house, location2, equipment) => location1.LocationType == DictionaryConst.LocationTypeStorageCode && location1.LocationState == DictionaryConst.LocationStateStockCode && (string.IsNullOrEmpty(location1.LocationLock) || location1.LocationLock == DictionaryConst.LocationLockNoneCode))
- // .Where((location1, zone, house, location2, equipment) => location2.LocationType == DictionaryConst.LocationTypeStorageCode && location2.LocationState == DictionaryConst.LocationStateStockCode && location2.LocationLock == DictionaryConst.LocationLockStockOutCode)
- // .WhereIF(!string.IsNullOrEmpty(reqEntity.LocationType), (location1, zone, house, location2, equipment) => reqEntity.LocationType == location1.LocationType)
- // .WhereIF(!string.IsNullOrEmpty(reqEntity.Tunnel), (location1, zone, house, location2, equipment) => location1.Tunnel == reqEntity.Tunnel)
- // .WhereIF(!string.IsNullOrEmpty(reqEntity.Size), (location1, zone, house, location2, equipment) => int.Parse(location1.Size) >= int.Parse(reqEntity.Size))
- // .WhereIF(reqEntity.ZoneId > 0, (location1, zone, house, location2, equipment) => zone.Id == reqEntity.ZoneId)
- // .WhereIF(reqEntity.WarehouseId > 0, (location1, zone, house, location2, equipment) => zone.WarehouseId == reqEntity.WarehouseId)
- // .WhereIF(reqEntity.LocationId > 0, (location1, zone, house, location2, equipment) => location1.Id == reqEntity.LocationId)
- // .WhereIF(!string.IsNullOrEmpty(reqEntity.ShelfCode), (location1, zone, house, location2, equipment) => location1.ShelfCode == reqEntity.ShelfCode)
- // .WhereIF(reqEntity.IsExceptErrorPlier, (location1, zone, house, location2, equipment) => equipment.EquipState != BaseDictionaryConst.PlierRuningState_ErrorCode)
- //.Select((location1, zone, house, location2, equipment) => location1);
- // return list.ToList();
- return null;
- }
- public (List<DocumentsResponse>, int) GetPageDocumentsList(DocumentsRequest request)
- {
- int count = 0;
- var list = _billDocument.Context.Queryable<BillDocsinfo, BaseWarehouse>((document, house) => new object[]
- {
- JoinType.Left, document.WarehouseId == house.Id
- })
- .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, house) => document.DocsNo.Contains(request.DocsNo))
- .WhereIF(!string.IsNullOrEmpty(request.ReqNo), (document, house) => document.ReqNo.Contains(request.ReqNo))
- .WhereIF(!string.IsNullOrEmpty(request.StateCode), (document, house) => document.StateNum == int.Parse(request.StateCode))
- .WhereIF(!string.IsNullOrEmpty(request.TypeCode), (document, house) => document.TypeNum == int.Parse(request.TypeCode))
- .Select((document, house) => new DocumentsResponse()
- {
- Id = document.Id,
- WarehouseCode = house.Code,
- DocNo = document.DocsNo,
- ReqNo = document.ReqNo,
- TypeCode = document.TypeNum.ToString(),
- StateCode = document.StateNum.ToString(),
- DownQty = document.DownQty,
- //DownErrReason = document.DownErrReason,
- //Remark = document.Remark,
- AddWho = document.AddWho,
- EditWho = document.EditWho,
- AddTime = document.AddTime,
- EditTime = document.EditTime
- })
- .ToPageList(request.PageIndex, request.PageSize, ref count);
- //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
- return (list.ToList(), count);
- }
- public List<string> GetStockByEquip(string code)
- {
- var list = _baseWareLocationrepository.Context.Queryable<hjBaseWareLocation, hjBillContainer>((location, stock) => new object[]
- {
- JoinType.Inner, stock.ContGrpId == location.ContGrpID,
- })
- .Where((location, stock) => stock.ExecState == InvState.InvEcecState_BuildUp.GetHashCode())
- .WhereIF(!string.IsNullOrEmpty(code), (location, stock) => location.Code.Contains(code))
- .Select((location, stock) => stock.HWBarCode).ToList();
- return list;
- }
- public (List<DocumentsdetailList>, int) GetDocumentDetailListByDocsNo(DocumentsRequest request)
- {
- int count = 0;
- var list = _billDocument.Context.Queryable<hjBillDocument, hjBillBarcode, hjBaseMater, hjBillContainer, hjBaseWareLocation>((document, barcode, mater, container, location) => new object[]
- {
- JoinType.Inner, document.DocNo == barcode.InDocsNo,
- JoinType.Inner, barcode.MatId == mater.Id,
- JoinType.Inner, barcode.RFIDBarCode == container.RFIDBarCode,
- JoinType.Inner, container.ContGrpId == location.ContGrpID
- })
- .Where((document, barcode, mater, container, location) => container.ExecState == InvState.InvEcecState_In.GetHashCode() && location.LocationState == LocationState.LocationState_Full.GetHashCode()
- )
- .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, barcode, mater, container, location) => document.DocNo.Contains(request.DocsNo))
- .WhereIF(!string.IsNullOrEmpty(request.Rfid), (document, barcode, mater, container, location) => container.RFIDBarCode.Contains(request.Rfid))
- .WhereIF(!string.IsNullOrEmpty(request.location), (document, barcode, mater, container, location) => location.Code.Contains(request.location))
- .Select((document, barcode, mater, container, location) => new DocumentsdetailList()
- {
- WarehouseCode = location.WareCode,
- MatCode = mater.Code,
- MatName = mater.Name,
- Location = location.Code,
- RFIDBarCode = barcode.RFIDBarCode,
- HWSpec = barcode.HWSpec,
- IsFast = barcode.IsFast,
- Grade = barcode.Grade
- })
- .ToPageList(request.PageIndex, request.PageSize, ref count);
- //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
- return (list.ToList(), count);
- }
- }
- }
|