From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Mon, 01 Jul 2024 10:58:35 +0800
Subject: [PATCH] change
---
src/main/java/com/nanometer/smartlab/controller/HazardousWasteController.java | 377 ++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 355 insertions(+), 22 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/HazardousWasteController.java b/src/main/java/com/nanometer/smartlab/controller/HazardousWasteController.java
index bafb722..71eff66 100644
--- a/src/main/java/com/nanometer/smartlab/controller/HazardousWasteController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/HazardousWasteController.java
@@ -2,18 +2,27 @@
import com.nanometer.smartlab.entity.HazardousWaste;
+import com.nanometer.smartlab.entity.SysLaboratory;
+import com.nanometer.smartlab.entity.SysUser;
+import com.nanometer.smartlab.entity.dto.HazardousWasteUser;
+import com.nanometer.smartlab.entity.enumtype.Waster;
import com.nanometer.smartlab.service.HazardousWasteService;
+import com.nanometer.smartlab.service.SysUserService;
+import com.nanometer.smartlab.util.Constants;
+import com.nanometer.smartlab.util.FacesUtils;
+import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
+import org.primefaces.context.RequestContext;
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.Date;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import javax.faces.event.ActionListener;
+import java.text.SimpleDateFormat;
+import java.util.*;
@Controller
@Scope("session")
@@ -25,11 +34,96 @@
private Date startTime;
private Date endTime;
+ private String status;
+ private String applyPerson;
+ private Long projectId;
+ private String department;
+ private String tid;
+ private List<String> statusList = new ArrayList<> ();
+ private boolean isSearch = false;
+ private boolean isAnalysSearch = false;
+ private LazyDataModel<HazardousWaste> analysisDataModel;
+ private HazardousWaste selectedOne;
+ /**
+ * 选中的list
+ */
+ private List<HazardousWaste> selectedList;
- private boolean isSearch;
+ private HazardousWaste hazardousWaste=new HazardousWaste();
+
+ private int action;
+ @Autowired
+ private SysUserService sysUserService;
+
+ private List<SysUser> userSelectList;
@Resource
private HazardousWasteService hazardousWasteService;
+
+ public List<SysUser> getUserSelectList() {
+ if (userSelectList == null) {
+ this.initUserSelectList();
+ }
+ return userSelectList;
+ }
+
+ private void initUserSelectList() {
+ this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null,null,null));
+ }
+
+ public SysUser getSelectedUserById(Long userId) {
+ SysUser sysUser=this.sysUserService.getSysUser(userId);
+ if(sysUser==null){
+ return new SysUser();
+ }
+ return sysUser;
+ }
+
+ public void addHazardousWaste(){
+ this.hazardousWaste = new HazardousWaste();
+ this.action = Constants.ACTION_ADD;
+ RequestContext.getCurrentInstance().execute("PF('wastedialog').show()");
+ }
+
+ public void editHazardousWaste(){
+ if (this.selectedList == null || this.selectedList.size() == 0) {
+ FacesUtils.warn("请选择数据。");
+ return;
+ }
+ if (this.selectedList.size() > 1) {
+ FacesUtils.warn("只能选择一个数据进行修改。");
+ return;
+ }
+ this.hazardousWaste=this.hazardousWasteService.selectById(this.selectedList.get(0).getId());
+ this.action = Constants.ACTION_EDIT;
+ RequestContext.getCurrentInstance().execute("PF('wastedialog').show()");
+ }
+
+ public void onSaveBtnClick(){
+ try {
+ Long userId = this.hazardousWaste.getApplyPerson();
+ SysUser sysUser = sysUserService.getSysUser(userId);
+ this.hazardousWaste.setUnit(sysUser.getCompany());
+ String userName = getUserName();
+ if (this.action == Constants.ACTION_ADD) {
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+ this.hazardousWaste.setCreator(userName);
+ this.hazardousWaste.setTid(sdf.format(new Date()));
+ this.hazardousWaste.setStatus("待确认");
+ hazardousWasteService.insertInfo(this.hazardousWaste);
+ FacesUtils.info("新建成功。");
+ RequestContext.getCurrentInstance().execute("PF('wastedialog').hide()");
+ } else {
+ this.hazardousWaste.setUpdator(userName);
+ hazardousWasteService.updateWaste(this.hazardousWaste);
+ FacesUtils.info("修改成功。");
+ RequestContext.getCurrentInstance().execute("PF('wastedialog').hide()");
+ }
+ }catch (Exception e){
+ logger.error("操作失败。", e);
+ FacesUtils.warn("操作失败。");
+ }
+ }
public LazyDataModel<HazardousWaste> getDataModel() {
if (this.dataModel == null) {
@@ -40,16 +134,26 @@
List<HazardousWaste> list = null;
try {
- int pageCount = hazardousWasteService.countAll(startTime,endTime);
-
- this.setRowCount(pageCount);
- if (pageCount > 0)
- list = hazardousWasteService.selectAll(startTime,endTime, isSearch ? 0 : first, pageSize);
+ if (getUser().getWaster() != null){
+ if (getUser().getWaster().equals(Waster.MANAGE)){
+ int pageCount = hazardousWasteService.countAll(startTime,endTime,status,applyPerson,projectId,department,tid);
+ this.setRowCount(pageCount);
+ if (pageCount > 0)
+ list = hazardousWasteService.selectAll(startTime,endTime,status,applyPerson,projectId,department,tid,first, pageSize);
+ }else if (getUser().getProjectId()!=null){
+ int pageCount = hazardousWasteService.countAll(startTime,endTime,status,applyPerson,getUser().getProjectId(),department,tid);
+ this.setRowCount(pageCount);
+ if (pageCount > 0)
+ list = hazardousWasteService.selectAll(startTime,endTime,status,applyPerson,getUser().getProjectId(),department,tid,first, pageSize);
+ }
+ }else {
+ this.setRowCount(0);
+ }
//查询更换模式
if (isSearch) {
isSearch = false;
}
-
+ selectedOne = null;
} catch (Exception e) {
logger.error("error occured.", e);
}
@@ -58,15 +162,15 @@
@Override
public HazardousWaste getRowData(String rowKey) {
- Iterator<HazardousWaste> iterator = this.iterator();
- HazardousWaste su = null;
- while (iterator.hasNext()) {
- su = iterator.next();
- if ( su.getId().equals(Long.parseLong(rowKey))) {
- return su;
- }
- }
- return null;
+// Iterator<HazardousWaste> iterator = this.iterator();
+// HazardousWaste su = null;
+// while (iterator.hasNext()) {
+// su = iterator.next();
+// if ( su.getId().equals(Long.parseLong(rowKey))) {
+// return su;
+// }
+// }
+ return hazardousWasteService.selectById(Long.parseLong(rowKey));
}
};
}
@@ -77,10 +181,68 @@
this.isSearch = true;
}
-
-
public void setDataModel(LazyDataModel<HazardousWaste> dataModel) {
this.dataModel = dataModel;
+ }
+
+ public LazyDataModel<HazardousWaste> getAnalysisDataModel() {
+ if (this.analysisDataModel == null) {
+ this.analysisDataModel = new LazyDataModel<HazardousWaste>() {
+
+ public List<HazardousWaste> load
+ (int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, Object> filters) {
+
+ List<HazardousWaste> list = null;
+ try {
+ if (getUser().getWaster() != null){
+ if (getUser().getWaster().equals(Waster.MANAGE)){
+ int pageCount = hazardousWasteService.countStatistics(startTime,endTime,status,applyPerson,projectId,department);
+ this.setRowCount(pageCount);
+ if (pageCount > 0)
+ list = hazardousWasteService.selectStatistics(startTime,endTime,status,applyPerson,projectId,department,first, pageSize);
+ }else if (getUser().getProjectId()!=null){
+ int pageCount = hazardousWasteService.countStatistics(startTime,endTime,status,applyPerson,getUser().getProjectId(),department);
+ this.setRowCount(pageCount);
+ if (pageCount > 0)
+ list = hazardousWasteService.selectStatistics(startTime,endTime,status,applyPerson,getUser().getProjectId(),department,first, pageSize);
+ }
+ }else {
+ this.setRowCount(0);
+ }
+
+ //查询更换模式
+ if (isAnalysSearch) {
+ isAnalysSearch = false;
+ }
+ } catch (Exception e) {
+ logger.error("error occured.", e);
+ }
+ return list;
+ }
+
+ @Override
+ public HazardousWaste getRowData(String rowKey) {
+// Iterator<HazardousWaste> iterator = this.iterator();
+// HazardousWaste su = null;
+// while (iterator.hasNext()) {
+// su = iterator.next();
+// if ( su.getId().equals(Long.parseLong(rowKey))) {
+// return su;
+// }
+// }
+ return null;
+ }
+ };
+ }
+ return analysisDataModel;
+ }
+
+ public void modelAnalysisChange() {
+ this.isAnalysSearch = true;
+ }
+
+ public void setAnalysisDataModel(LazyDataModel<HazardousWaste> dataModel) {
+ this.analysisDataModel = dataModel;
}
public Date getStartTime() {
@@ -106,4 +268,175 @@
public void setSearch(boolean search) {
isSearch = search;
}
+
+ public String getStatus() {
+ return status;
+ }
+
+ public void setStatus(String status) {
+ this.status = status;
+ }
+
+ public String getApplyPerson() {
+ return applyPerson;
+ }
+
+ public void setApplyPerson(String applyPerson) {
+ this.applyPerson = applyPerson;
+ }
+
+ public Long getProjectId() {
+ return projectId;
+ }
+
+ public void setProject(Long projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getDepartment() {
+ return department;
+ }
+
+ public void setDepartment(String department) {
+ this.department = department;
+ }
+
+ public List<String> getStatusList() {
+ statusList = new ArrayList<> ();
+ statusList.add("全部");
+ statusList.add("待确认");
+ statusList.add("已确认");
+ statusList.add("已拒绝");
+ statusList.add("已取消");
+ return statusList;
+ }
+
+
+ public void export2Excel() {
+ List<Map> list = new ArrayList<>();
+ if (getUser().getWaster() != null){
+ if (getUser().getWaster().equals(Waster.MANAGE)){
+ list = hazardousWasteService.exportList(startTime,endTime,status,applyPerson,projectId,department,tid);
+ }else if (getUser().getProjectId()!=null){
+ list = hazardousWasteService.exportList(startTime,endTime,status,applyPerson,getUser().getProjectId(),department,tid);
+ }
+ }
+
+ try{
+ hazardousWasteService.export2Excel(list);
+ }catch (Exception e){
+ e.printStackTrace();
+ FacesUtils.warn("导出失败");
+ }
+ }
+
+ public void exportStatistics2Excel(){
+ List<Map> list = new ArrayList<>();
+ if (getUser().getWaster() != null){
+ if (getUser().getWaster().equals(Waster.MANAGE)){
+ list = hazardousWasteService.exportStatisticsList(startTime,endTime,status,applyPerson,projectId,department);
+ }else if (getUser().getProjectId()!=null){
+ list = hazardousWasteService.exportStatisticsList(startTime,endTime,status,applyPerson,getUser().getProjectId(),department);
+ }
+ }
+ try{
+ hazardousWasteService.exportStatistics2Excel(list);
+ }catch (Exception e){
+ e.printStackTrace();
+ FacesUtils.warn("导出失败");
+ }
+ }
+
+ public void cancelOne(){
+ //待确认状态的才能取消
+ if (this.selectedList == null || this.selectedList.size() == 0) {
+ FacesUtils.warn("请选择数据。");
+ return;
+ }
+ if (this.selectedList.size() > 1) {
+ FacesUtils.warn("只能选择一个数据进行修改。");
+ return;
+ }
+ HazardousWaste hwaste=this.selectedList.get(0);
+ if (!"待确认".equals(hwaste.getStatus())) {
+ FacesUtils.warn("非待确认不能取消");
+ return;
+ }
+ try {
+ hwaste.setStatus("已取消");
+ hazardousWasteService.updateWaste(hwaste);
+ FacesUtils.warn("操作成功");
+ } catch (Exception e) {
+ e.printStackTrace();
+ FacesUtils.warn("操作失败");
+ }
+ }
+
+ public void recoverOne(){
+ if (this.selectedList == null || this.selectedList.size() == 0) {
+ FacesUtils.warn("请选择数据。");
+ return;
+ }
+ if (this.selectedList.size() > 1) {
+ FacesUtils.warn("只能选择一个数据进行修改。");
+ return;
+ }
+ HazardousWaste hwaste=this.selectedList.get(0);
+ if (!"已取消".equals(hwaste.getStatus())) {
+ FacesUtils.warn("非已取消不能恢复");
+ return;
+ }
+ try {
+ hwaste.setStatus("待确认");
+ hazardousWasteService.updateWaste(hwaste);
+ FacesUtils.warn("操作成功");
+ } catch (Exception e) {
+ e.printStackTrace();
+ FacesUtils.warn("操作失败");
+ }
+ }
+
+ public String getTid() {
+ return tid;
+ }
+
+ public void setTid(String tid) {
+ this.tid = tid;
+ }
+
+ public HazardousWaste getSelectedOne() {
+ return selectedOne;
+ }
+
+ public void setSelectedOne(HazardousWaste selectedOne) {
+ this.selectedOne = selectedOne;
+ }
+
+ public List<HazardousWaste> getSelectedList() {
+ return selectedList;
+ }
+
+ public void setSelectedList(List<HazardousWaste> selectedList) {
+ this.selectedList = selectedList;
+ }
+
+ public HazardousWaste getHazardousWaste() {
+ return hazardousWaste;
+ }
+
+ public void setHazardousWaste(HazardousWaste hazardousWaste) {
+ this.hazardousWaste = hazardousWaste;
+ }
+
+ public int getAction() {
+ return action;
+ }
+
+ public void setAction(int action) {
+ this.action = action;
+ }
+
+ public void setUserSelectList(List<SysUser> userSelectList) {
+ this.userSelectList = userSelectList;
+ }
}
--
Gitblit v1.9.2