From c3510da29a7974c6af7ff3de1ade3db429d6f848 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期三, 18 八月 2021 14:27:59 +0800
Subject: [PATCH] 申购管理申请履历显示所有历史单据,提交时如有无效试剂耗材报错

---
 src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java |   96 ++++++++++++++++++++++++++++--------------------
 1 files changed, 56 insertions(+), 40 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java b/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java
index 645d012..3fbd9b8 100644
--- a/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java
@@ -269,28 +269,21 @@
                         try {
                             if(allOpeOrder != null && allOpeOrder.size() > 0)
                             {
-                            		int count = allOpeOrder.size();
-                            		this.setRowCount(count);
-                            		//list = queryByPage();
-									list = supplierOpeOrderService.getSupplierOpeOrderList(orderCode,applyCode,status,orderTime,orderEndTime,first,pageSize);
-									for(int i=0;i<list.size();i++){
-										System.out.println(list.get(i));
-										/*if(list.get(i).getSecondUserName()!=null&&!list.get(i).getSecondUserName().equals("")){
-											String name=list.get(i).getApproveUserName();
-											list.get(i).setApproveUserName(list.get(i).getSecondUserName());
-											list.get(i).setSecondUserName(name);
-										}*/
-										if(list.get(i).getBeforeApproveUserId()!=null&&!list.get(i).getBeforeApproveUserId().equals("")){
-											String name=list.get(i).getApproveUserName();
-											list.get(i).setFirst(list.get(i).getFirName());
-											list.get(i).setSecond(name);
-										}else {
-											list.get(i).setFirst(list.get(i).getApproveUserName());
-											list.get(i).setSecond(list.get(i).getSecondUserName());
-										}
+                            	int count = allOpeOrder.size();
+                            	this.setRowCount(count);
+
+                            	list = supplierOpeOrderService.getSupplierOpeOrderList(orderCode,applyCode,status,orderTime,orderEndTime,first,pageSize);
+                            	for (int i=0;i<list.size();i++) {
+									if (list.get(i).getBeforeApproveUserId() != null && !list.get(i).getBeforeApproveUserId().equals("")) {
+										String name = list.get(i).getApproveUserName();
+										list.get(i).setFirst(list.get(i).getFirName());
+										list.get(i).setSecond(name);
+									} else {
+										list.get(i).setFirst(list.get(i).getApproveUserName());
+										list.get(i).setSecond(list.get(i).getSecondUserName());
 									}
-								for (SupplierOrder supplierOrder:list
-									 ) {
+								}
+								for (SupplierOrder supplierOrder:list) {
 									if(supplierOrder.getIds()!=null&&!supplierOrder.getIds().equals("")){
 										List ids = Arrays.asList(supplierOrder.getIds().split(","));
 										supplierOrder.setApplyIds(ids);
@@ -313,6 +306,7 @@
 									}
 								}
                             }
+                            selectedList = new ArrayList<> ();
                         } catch (Exception e) {
                             logger.error(e);
                         }
@@ -321,17 +315,36 @@
 
                     @Override
                     public SupplierOrder getRowData(String rowKey) {
-                        Iterator<SupplierOrder> iterator = this.iterator();
-                        if (iterator != null) {
-                        		SupplierOrder ss = null;
-                            while (iterator.hasNext()) {
-                                ss = iterator.next();
-                                if (rowKey.equals(ss.getId())) {
-                                    return ss;
-                                }
-                            }
-                        }
-                        return null;
+						SupplierOrder supplierOrder = supplierOpeOrderService.selectById(rowKey);
+						if (supplierOrder.getBeforeApproveUserId() != null && !supplierOrder.getBeforeApproveUserId().equals("")) {
+							String name = supplierOrder.getApproveUserName();
+							supplierOrder.setFirst(supplierOrder.getFirName());
+							supplierOrder.setSecond(name);
+						} else {
+							supplierOrder.setFirst(supplierOrder.getApproveUserName());
+							supplierOrder.setSecond(supplierOrder.getSecondUserName());
+						}
+
+						if(supplierOrder.getIds()!=null&&!supplierOrder.getIds().equals("")){
+							List ids = Arrays.asList(supplierOrder.getIds().split(","));
+							supplierOrder.setApplyIds(ids);
+							Double a=0.00;
+							BigDecimal total=BigDecimal.valueOf(a);
+							for (int j=0;j<ids.size();j++) {
+								OpeApply app=opeApplyService.getOpeApply(ids.get(j).toString());
+								if(app.getStockFlag()!=0){//判断申购试剂是否缺货
+									if(app.getApplyPrice()!=null){//判断试剂是否有实际售价
+										BigDecimal b=app.getApplyPrice().multiply(BigDecimal.valueOf(app.getNum()));
+										total=b.add(total);
+									}else{
+										BigDecimal c=app.getReagent().getPrice().multiply(BigDecimal.valueOf(app.getNum()));
+										total=c.add(total);
+									}
+								}
+							}
+							supplierOrder.setTotalPrice(total.doubleValue());
+						}
+                        return supplierOrder;
                     }
     			};
     		}
@@ -462,7 +475,8 @@
 				}else {
 					dataRow.createCell(22).setCellValue(String.valueOf(company.getMetaValue()));
 				}
-
+				dataRow.createCell(23).setCellValue(String.valueOf(dataList.get(i).getStatus().getText()));
+				dataRow.createCell(24).setCellValue(String.valueOf(dataList.get(i).getOrderStatus().getText()));
 			}
 
 		return hssfWorkbook;
@@ -776,13 +790,12 @@
                     if( opeApply != null)
                     {
                     	if(opeApply.getStockFlag()!=0){
-							SysUser user1=null;
-							if(opeApply.getBeforeApproveUserId()!=null&&!opeApply.getBeforeApproveUserId().equals("")){
-								user1=sysUserService.getSysUserForSuppllier(opeApply.getBeforeApproveUserId());
-							}else {
-								user1 = sysUserService.getSysUserForSuppllier(opeApply.getApproveUserId());
-							}
-
+//							SysUser user1=null;
+//							if(opeApply.getBeforeApproveUserId()!=null&&!opeApply.getBeforeApproveUserId().equals("")){
+//								user1=sysUserService.getSysUserForSuppllier(opeApply.getBeforeApproveUserId());
+//							}else {
+//								user1 = sysUserService.getSysUserForSuppllier(opeApply.getApproveUserId());
+//							}
 							//opeApply.setOwnerDepartment(user1.getDepartment());
 							//System projectUser=
 							opeApply.setOwnerDepartment(sysUserService.getSysUserForSuppllier(opeApply.getApplyUserId()).getDepartment());
@@ -819,6 +832,7 @@
 							{
 								tempMap.put(opeApply.getReagent().getId(), opeApply.getNum());
 							}
+							opeApply.setOrderStatus(order.getStatus());
 							realDataList.add(opeApply);
 						}
 
@@ -869,6 +883,8 @@
             headerList.add("申购人");
             headerList.add("部门");
             headerList.add("单位");
+            headerList.add("申购单状态");
+            headerList.add("订单状态");
 			HSSFWorkbook hssfWorkbook =exportExcelNew(headerList, realDataList);
 			hssfWorkbook.write(out);
 			out.flush();

--
Gitblit v1.9.2