首先在控制器要写两个public,一个返回视图,一个返回列表数据
//返回视图
public ActionResult ProductReportList()
{
//ViewBag拿值传递给视图页面
ViewBag.ValidTypes = DictionaryCollectionService.GetDictionaryByTypeForSelectList((int)Enumerator.Dictionary.ValidType);
ViewBag.FileTypes =
DictionaryCollectionService.GetDictionaryByTypeForSelectList((int)Enumerator.Dictionary.FileType);
//返回视图
return View();
}
//获取列表数据
public ActionResult GetProductReportList(SupplierFilePager pager)
{
InheritListAuthority(pager);
pager.StaffId = CurrentUser.GetCurUserInfo.StaffId;
List<SupplierFileView> viewList = ProductService.GetProductReportList(pager);
//返回数据
return Json(new { total = pager.total, rows = viewList },
JsonRequestBehavior.AllowGet);
}
然后,需要右键ProductReportList,添加视图,在视图页面写上你需要显示出来的东西
然后在服务层,新增一个方法GetProductReportList,上面是查询需要的条件,下面e点出来的就是列表所要显示的,int类型的字段转换成文字
public List<SupplierFileView> GetProductReportList(SupplierFilePager pager)
{
if (pager.EndCreateTime != null)
{
pager.EndCreateTime = pager.EndCreateTime.Value.AddDays(1);
}
List<SupplierFileView> viewList = SupplierFileViewDAL.GetModelsByPage(pager, e => (pager.FileName == null || e.FileName.Contains(pager.FileName))
&& (pager.ValidType == null || e.ValidType == pager.ValidType)
&& (pager.FileType == null || e.FileType == pager.FileType)
&& (pager.StartCreateTime == null || e.ValidityTime >= pager.StartCreateTime)
&& (pager.EndCreateTime == null || e.ValidityTime <= pager.EndCreateTime)
&& (pager.SupplierId == null || e.SupplierId == pager.SupplierId)
&& (string.IsNullOrEmpty(pager.ProductId) || e.ProductId.Contains(pager.ProductId.Trim()))
&& (string.IsNullOrEmpty(pager.SupplierName) || e.SupplierName.Contains(pager.SupplierName.Trim()))
);
DictionaryCollectionService service = DictionaryCollectionService.Instance();
viewList.ForEach(e => {
e.ValidTypeDesc = service.GetDictionaryNameByTypeAndDictionaryValue((int)Enumerator.Dictionary.ValidType, e.ValidType);
e.FileTypeDesc = service.GetDictionaryNameByTypeAndDictionaryValue((int)Enumerator.Dictionary.FileType, e.FileType);
});
return viewList;
}