Exemplo n.º 1
0
        public List <CK4C_ITEM> GetByParam(CK4CItemGetByParamInput input)
        {
            Expression <Func <CK4C_ITEM, bool> > queryFilterCk4C = PredicateHelper.True <CK4C_ITEM>();

            if (!string.IsNullOrEmpty(input.CompanyCode))
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.COMPANY_ID == input.CompanyCode);
            }

            if (!string.IsNullOrEmpty(input.NppbkcId))
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.NPPBKC_ID == input.NppbkcId);
            }

            if (input.PeriodMonth.HasValue && input.PeriodYear.HasValue)
            {
                queryFilterCk4C =
                    queryFilterCk4C.And(
                        c => c.CK4C.REPORTED_MONTH == input.PeriodMonth && c.CK4C.REPORTED_YEAR == input.PeriodYear);
            }

            if (input.Lack1Level == Core.Enums.Lack1Level.Plant)
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.PLANT_ID == input.ReceivedPlantId);
            }

            if (input.IsHigherFromApproved)
            {
                queryFilterCk4C =
                    queryFilterCk4C.And(c => (int)c.CK4C.STATUS >= (int)Enums.DocumentStatus.Approved);
            }

            if (input.IsCompletedOnly)
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.STATUS == Enums.DocumentStatus.Completed);
            }

            if (input.MaterialIdList.Count > 0)
            {
                queryFilterCk4C = queryFilterCk4C.And(c => input.MaterialIdList.Contains(c.FA_CODE));
            }
            queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.CK4C_ID_REVISED == null);
            return(_ck4CItemRepository.Get(queryFilterCk4C, null, "CK4C, UOM").ToList());
        }
Exemplo n.º 2
0
        public List <string> GetFaCodeListByParam(CK4CItemGetByParamInput input)
        {
            Expression <Func <CK4C_ITEM, bool> > queryFilterCk4C = PredicateHelper.True <CK4C_ITEM>();

            if (!string.IsNullOrEmpty(input.CompanyCode))
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.COMPANY_ID == input.CompanyCode);
            }

            if (!string.IsNullOrEmpty(input.NppbkcId))
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.NPPBKC_ID == input.NppbkcId);
            }

            if (input.PeriodMonth.HasValue && input.PeriodYear.HasValue)
            {
                queryFilterCk4C =
                    queryFilterCk4C.And(
                        c => c.CK4C.REPORTED_MONTH == input.PeriodMonth && c.CK4C.REPORTED_YEAR == input.PeriodYear);
            }

            if (input.Lack1Level == Core.Enums.Lack1Level.Plant)
            {
                queryFilterCk4C = queryFilterCk4C.And(c => c.CK4C.PLANT_ID == input.ReceivedPlantId);
            }

            if (input.IsHigherFromApproved)
            {
                queryFilterCk4C =
                    queryFilterCk4C.And(c => (int)c.CK4C.STATUS >= (int)Core.Enums.DocumentStatus.Approved);
            }

            var ck4CItemData = _ck4CItemRepository.Get(queryFilterCk4C, null, "CK4C").ToList();

            return(ck4CItemData.Select(c => c.FA_CODE).Distinct().ToList());
        }