public List <INVENTORY_MOVEMENT> GetMvt201(InvMovementGetUsageByParamInput input, bool isAssigned = false) { var mvtType201 = new List <string>() { EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage201), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage202), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage901), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage902), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.UsageZ01), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.UsageZ02) }; Expression <Func <INVENTORY_MOVEMENT, bool> > queryFilter = c => c.POSTING_DATE.HasValue && c.POSTING_DATE.Value.Year == input.PeriodYear && c.POSTING_DATE.Value.Month == input.PeriodMonth; if (input.PlantIdList.Count > 0) { queryFilter = queryFilter.And(c => input.PlantIdList.Contains(c.PLANT_ID)); } queryFilter = queryFilter.And(c => mvtType201.Contains(c.MVT)); var data = _repository.Get(queryFilter).ToList(); if (!isAssigned) { return(data); } else { return(null); } }
public List <INVENTORY_MOVEMENT> GetUsageByParam(InvMovementGetUsageByParamInput input) { var usageMvtType = new List <string>() { //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage201), //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage202), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage261), EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage262), //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage901), //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.Usage902), //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.UsageZ01), //EnumHelper.GetDescription(Core.Enums.MovementTypeCode.UsageZ02) }; //original irman Expression <Func <INVENTORY_MOVEMENT, bool> > queryFilter = c => c.POSTING_DATE.HasValue && c.POSTING_DATE.Value.Year == input.PeriodYear && c.POSTING_DATE.Value.Month == input.PeriodMonth; //var tempyear = input.PeriodMonth == 12 ? input.PeriodYear + 1 : input.PeriodYear; //var tempmonth = input.PeriodMonth == 12 ? 1 : input.PeriodMonth + 1; //Expression<Func<INVENTORY_MOVEMENT, bool>> queryFilter = c => c.POSTING_DATE.HasValue && c.POSTING_DATE.Value < new DateTime(tempyear, tempmonth, 1); if (input.PlantIdList.Count > 0) { queryFilter = queryFilter.And(c => input.PlantIdList.Contains(c.PLANT_ID)); } queryFilter = queryFilter.And(c => usageMvtType.Contains(c.MVT)); if (input.IsEtilAlcohol) { return(_repository.Get(queryFilter).ToList()); } var allOrderInZaapShiftRpt = _zaapShiftRptRepository.Get().Select(d => d.ORDR).Distinct().ToList(); //Expression<Func<INVENTORY_MOVEMENT, bool>> queryFilter2 = queryFilter; var result = _repository.Get(queryFilter).ToList(); //queryFilter = input.IsTisToTis // ? queryFilter.And(c => !allOrderInZaapShiftRpt.Contains(c.ORDR)) // : //queryFilter; // queryFilter.And(c => allOrderInZaapShiftRpt.Contains(c.ORDR)); if (input.IsTisToTis) { result = result.Where(c => !allOrderInZaapShiftRpt.Contains(c.ORDR)).ToList(); } else { result = result.Where(c => allOrderInZaapShiftRpt.Contains(c.ORDR)).ToList(); } return(result); }