From 59d9ea33f503e363f2e2941c7c00cc9dd9d9d1c7 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Tue, 28 Nov 2023 11:00:42 +0800
Subject: [PATCH] 修改课题管理bug
---
src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java | 149 ++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 126 insertions(+), 23 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java b/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
index a836046..75989d8 100644
--- a/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
@@ -7,6 +7,7 @@
import com.nanometer.smartlab.util.Constants;
import com.nanometer.smartlab.util.FacesUtils;
import com.nanometer.smartlab.util.IDUtils;
+import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
@@ -25,6 +26,7 @@
import javax.annotation.Resource;
import javax.faces.context.FacesContext;
+import javax.faces.event.ActionListener;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@@ -67,6 +69,7 @@
private String cas;
private List<SysSupplier> supplierSelectList;
private List<Type> typeList;
+ private String productSn;
public List<Type> getTypeList() {
if (this.typeList == null) {
@@ -86,7 +89,7 @@
private Integer type;
public Integer getType() {
- return type;
+ return type == null?0:type;
}
public void setType(Integer type) {
@@ -126,7 +129,6 @@
public void query(){
- System.out.println("start====================");
List<SysReagent> list=this.sysReagentService.query();
Map<String,SysReagent> map=new HashMap<>();
List<SysReagent> list2 =new ArrayList<>();
@@ -520,15 +522,25 @@
Sheet sheet=wb.getSheetAt(0);
List<SysReagent> sysReagentsList = new ArrayList<>();
int totalRows = sheet.getPhysicalNumberOfRows();
+
Row row=null;
int totalCells=0;
String dangours = "";
+ totalCells=sheet.getRow(0).getLastCellNum();
+ if(totalCells>7){
+ FacesUtils.warn("导入表格格式不正确");
+ return;
+ }
for (int i = 1; i < totalRows; i++) {
SysReagent sysReagent = new SysReagent();
List<String> valuesList=new ArrayList<String>();
row=sheet.getRow(i);
- totalCells= row.getLastCellNum();
+ // totalCells= row.getLastCellNum();
+// if(totalCells>7){
+// FacesUtils.warn("导入表格格式不正确");
+// return;
+// }
for (int t = 0; t < totalCells; t++) {
String cellInfo="";
String groupId = "";
@@ -592,10 +604,42 @@
this.codeList.add(baseMeta);
}
valuesList.add(id);
+ }else if(t==5){
+ String id="";
+ if(!StringUtils.isBlank(cellInfo)){
+ SysSupplier sysSupplier=sysSupplierService.getSysSupplierByName(cellInfo);
+ if(sysSupplier==null){//新建供应商
+ FacesUtils.warn("未查询到供该应商信息-"+cellInfo);
+ return;
+ }
+ id=sysSupplier.getId();
+ }
+ valuesList.add(id);
+ }else if(t==6){
+ String id="";
+ if(!StringUtils.isBlank(cellInfo)){
+ groupId = "reagent_format";
+ id=getId(groupId,cellInfo);
+ if(StringUtils.isBlank(id)){
+ BaseMeta baseMeta = new BaseMeta();
+ baseMeta.setId(IDUtils.uuid());
+ baseMeta.setGroupId(groupId);
+ baseMeta.setMetaValue(cellInfo);
+ baseMeta.setMetaKey(cellInfo);
+ baseMetaService.insertBaseMeta(baseMeta);
+ id = baseMeta.getId();
+ this.codeList.add(baseMeta);
+ }
+ }
+ valuesList.add(id);
}else {
valuesList.add(cellInfo);
}
+ }
+ if (valuesList.size() != 8){
+ FacesUtils.warn("excel数据解析格式失败");
+ return;
}
System.out.println("value : "+valuesList);
sysReagent.setName(valuesList.get(0));//试剂名称
@@ -609,6 +653,12 @@
if(!valuesList.get(5).equals("")){
sysReagent.setPrice(BigDecimal.valueOf(Double.parseDouble(valuesList.get(5))));//含税单价
}
+ if(StringUtils.isNotBlank(valuesList.get(6))){
+ sysReagent.setSupplierId(valuesList.get(6));//供应商id
+ }
+ if(StringUtils.isNotBlank(valuesList.get(7))){
+ sysReagent.setReagentFormat(valuesList.get(7));//规格id
+ }
DangerousFlag d;
d = DangerousFlag.NORMAL;
sysReagent.setDangerousFlag(d);
@@ -616,16 +666,14 @@
sysReagentsList.add(sysReagent);
}
sysReagentService.insertSysReagentList2(sysReagentsList);
- System.out.println("=========导入结束=====");
FacesUtils.info("导入成功。");
} catch (Exception ex) {
ex.printStackTrace();
- FacesUtils.info("导入失败。");
+ FacesUtils.info("导入失败,"+ex.getMessage());
}
}
//导入
public void uploadFile(FileUploadEvent event) {
- System.out.println("=========导入开始=====");
this.codeList=baseMetaService.getAllBaseMeta();
this.sysSupplierList=sysSupplierService.getSysSupplierList();
try{
@@ -661,7 +709,7 @@
throw new Exception("导入文件格式不正确");
}*/
- for (int t = 0; t < totalCells; t++) {
+ for (int t = 0; t <= totalCells; t++) {
//System.out.println(row.getCell(t));
String cellInfo="";
String groupId = "";
@@ -747,11 +795,14 @@
}/*else if(t == 9){
valuesList.add(sysSupplierService.getSysSupplierIdByname(cellInfo));
}*/else{
- valuesList.add(cellInfo);
+ if(cellInfo!=null)
+ valuesList.add(cellInfo);
}
}
+/* if (valuesList.size() != 13){
+ break;
+ }*/
- System.out.println("value : "+valuesList);
sysReagent.setProductSn(valuesList.get(0));//产品编号
sysReagent.setName(valuesList.get(1));//试剂名称
sysReagent.setControlProducts(valuesList.get(2));//管制品
@@ -782,7 +833,6 @@
sysReagentsList.add(sysReagent);
}
sysReagentService.insertSysReagentList(sysReagentsList);
- System.out.println("=========导入结束=====");
FacesUtils.info("导入成功。");
} catch (Exception ex) {
ex.printStackTrace();
@@ -798,11 +848,12 @@
public List<SysReagent> load(int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, Object> filters) {
List<SysReagent> list = null;
try {
- int count = sysReagentService.getSysReagentTotalCount(name, cas, supplierId,type);
+ int count = sysReagentService.getSysReagentTotalCountNew(name, cas, supplierId,getType(),productSn);
this.setRowCount(count);
if (count > 0) {
- list = sysReagentService.getSysReagentList(name, cas, supplierId,type, first, pageSize);
+ list = sysReagentService.getSysReagentListNew(name, cas, supplierId,getType(), first, pageSize,productSn);
}
+ selectedList = new ArrayList<> ();
} catch (Exception e) {
logger.error(e);
}
@@ -811,22 +862,37 @@
@Override
public SysReagent getRowData(String rowKey) {
- Iterator<SysReagent> iterator = this.iterator();
- if (iterator != null) {
- SysReagent sr = null;
- while (iterator.hasNext()) {
- sr = iterator.next();
- if (rowKey.equals(sr.getId())) {
- return sr;
- }
- }
- }
- return null;
+// Iterator<SysReagent> iterator = this.iterator();
+// if (iterator != null) {
+// SysReagent sr = null;
+// while (iterator.hasNext()) {
+// sr = iterator.next();
+// if (rowKey.equals(sr.getId())) {
+// return sr;
+// }
+// }
+// }
+
+ return sysReagentService.getSysReagent(rowKey);
}
};
}
return dataModel;
+ }
+
+ public void export2Excel() {
+
+ List<Map> list = sysReagentService.selectAll(name, cas, supplierId,getType(), productSn);
+ try{
+ boolean isexport = sysReagentService.export2Excel(list,getType());
+ if (isexport){
+
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ FacesUtils.warn("导出失败");
+ }
}
public SysReagent getSysReagent() {
@@ -897,4 +963,41 @@
public void setDangerousFlagSelectList(List<DangerousFlag> dangerousFlagSelectList) {
this.dangerousFlagSelectList = dangerousFlagSelectList;
}
+
+ public String getProductSn() {
+ return productSn;
+ }
+
+ public void setProductSn(String productSn) {
+ this.productSn = productSn;
+ }
+
+ public void openUpdateSafetyNumDialog() {
+ if (this.selectedList == null
+ || this.selectedList.size() == 0) {
+ FacesUtils.warn("请选择数据。");
+ return;
+ }
+ if (this.selectedList.size() > 1) {
+ FacesUtils.warn("只能选择一个数据进行修改。");
+ return;
+ }
+ this.sysReagent = this.sysReagentService.getSysReagent(this.selectedList.get(0).getId());
+ if (this.sysReagent.getType() != 1) {
+ FacesUtils.warn("只能选择试剂设置安全库存。");
+ return;
+ }
+ RequestContext.getCurrentInstance().execute("PF('dialog-setSafetynum').show()");
+ }
+
+ public void updateSafetyNum(){
+ if (this.sysReagent.getSafetynum() == null) {
+ FacesUtils.warn("请输入安全库存。");
+ return;
+ }
+ sysReagentService.updateSafetyNum(this.sysReagent);
+ FacesUtils.warn("修改成功。");
+ RequestContext.getCurrentInstance().execute("PF('dialog-setSafetynum').hide()");
+
+ }
}
--
Gitblit v1.9.2