package com.nanometer.smartlab.controller; import com.nanometer.smartlab.entity.SysWarehouse; import com.nanometer.smartlab.entity.SysWarehouseStatus; import com.nanometer.smartlab.service.SysWarehouseService; import com.nanometer.smartlab.service.SysWarehouseStatusService; import org.primefaces.model.LazyDataModel; import org.primefaces.model.SortOrder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @Controller @Scope("session") public class WarehouseStatusController extends BaseController{ private LazyDataModel dataModel; @Resource private SysWarehouseStatusService sysWarehouseStatusService; private String name; private Date startTime; private Date endTime; public LazyDataModel getDataModel() { if (this.dataModel == null) { this.dataModel = new LazyDataModel() { @Override public List load(int first, int pageSize, String sortField, SortOrder sortOrder, Map filters) { int count = sysWarehouseStatusService.getCount(name, startTime, endTime); this.setRowCount(count); return count != 0 ? sysWarehouseStatusService.selectList(name, startTime, endTime, first, pageSize) : new ArrayList<>(); } @Override public SysWarehouseStatus getRowData(String rowKey) { return sysWarehouseStatusService.getById(rowKey); } }; } return dataModel; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getStartTime() { return startTime; } public void setStartTime(Date startTime) { this.startTime = startTime; } public Date getEndTime() { return endTime; } public void setEndTime(Date endTime) { this.endTime = endTime; } }