Esempio n. 1
0
        public IQueryable <InnerBoxExtraModel> GetInnerBoxesExtra(SearchInnerBoxExtraParam p, bool canCheckAll)
        {
            var result = from ibe in db.InnerBoxesExtra
                         join ib in db.InneBoxes on ibe.inner_box_id equals ib.inner_box_id
                         join o in db.OuterBoxes on ib.outer_box_id equals o.outer_box_id into ot
                         from ob in ot.DefaultIfEmpty()
                         where ibe.create_date >= p.beginDate && ibe.create_date <= p.endDate &&
                         ibe.account == p.account &&
                         (ibe.item_model.Contains(p.itemInfo) || ibe.item_name.Contains(p.itemInfo)) &&
                         (canCheckAll || (ibe.user_name + "A").Contains(p.userName)) &&
                         ((p.hasUsed == "所有") || (p.hasUsed == "已使用" && ob.bill_id != null) || (p.hasUsed == "未使用" && ob.bill_id == null)) &&
                         ((p.hasRelated == "所有") || (p.hasRelated == "已关联" && ib.outer_box_id != null) || (p.hasRelated == "未关联" && ib.outer_box_id == null)) &&
                         ib.box_number_long.Contains(p.innerBoxNumber) &&
                         (p.outerBoxNumber == "" || ob.box_number_long.Contains(p.outerBoxNumber))
                         orderby ibe.create_date descending
                         select new InnerBoxExtraModel()
            {
                ib             = ib,
                extra          = ibe,
                hasRelated     = ib.outer_box_id == null ? "未关联" : "已关联",
                hasUsed        = ob == null ? "未使用" : (ob.bill_id == null ? "未使用" : "已使用"),
                outerBoxNumber = ob == null ? "" : ob.box_number
            };

            return(result);
        }
Esempio n. 2
0
        public JsonResult GetInnerBoxexExtra(FormCollection fc)
        {
            SearchInnerBoxExtraParam p = new SearchInnerBoxExtraParam();

            MyUtils.SetFieldValueToModel(fc, p);

            p.endDate        = p.endDate.AddDays(1);
            p.account        = currentAccount;
            p.itemInfo       = p.itemInfo ?? "";
            p.userName       = currentUser.userName;
            p.innerBoxNumber = p.innerBoxNumber ?? "";
            p.outerBoxNumber = p.outerBoxNumber ?? "";

            var result = new BoxSv().GetInnerBoxesExtra(p, canCheckAll);
            int total  = result.Count();

            return(Json(new { suc = true, total = total, result = result.Skip((p.page - 1) * p.rows).Take(p.rows).ToList() }));
        }