コード例 #1
0
        public IHttpActionResult PackageList(TaskWorkCondition condition)
        {
            condition.Status   = TaskWorkStatus.Holding;
            condition.TypeCode = FlowCode.Reimage_Package;

            int totalSize;
            var data = TaskWork.Query(condition, out totalSize).ToList();

            return(Ok(new { data, totalSize }));
        }
コード例 #2
0
        public static IQueryable <TaskWork> Query(TaskWorkCondition searchCondition, out int totalSize)
        {
            var predicate = PredicateBuilder.True <TaskWork>();

            if (!string.IsNullOrEmpty(searchCondition.Title))
            {
                predicate = predicate.And(e => e.Title.Contains(searchCondition.Title));
            }

            if (!string.IsNullOrEmpty(searchCondition.StoreCode))
            {
                predicate = predicate.And(e => e.StoreCode.Contains(searchCondition.StoreCode));
            }

            if (!string.IsNullOrEmpty(searchCondition.StoreNameZHCN))
            {
                var storeList     = StoreBasicInfo.Search(e => e.NameZHCN.Contains(searchCondition.StoreNameZHCN));
                var storeCodeList = storeList.Select(e => e.StoreCode).ToList();

                predicate = predicate.And(e => storeCodeList.Contains(e.StoreCode));
            }

            if (searchCondition.Status.HasValue)
            {
                predicate = predicate.And(e => e.Status == searchCondition.Status.Value);
            }

            if (!string.IsNullOrEmpty(searchCondition.TypeCode))
            {
                //var employeeList = Employee.Search(e => e.NameZHCN.Contains(searchCondition.SenderZHCN));
                //var employeeCodeList = employeeList.Select(e => e.Code).ToList();

                predicate = predicate.And(e => e.TypeCode.Contains(searchCondition.TypeCode));
            }

            if (!string.IsNullOrEmpty(searchCondition.ReceiverAccount))
            {
                predicate = predicate.And(e => e.ReceiverAccount == searchCondition.ReceiverAccount);
            }

            //从多少页开始取数据
            var list = Search(predicate, e => e.Num, searchCondition.PageIndex, searchCondition.PageSize,
                              out totalSize, true);

            return(list);
        }