生效失效速度优化
							parent
							
								
									8224648b19
								
							
						
					
					
						commit
						b465423508
					
				| 
						 | 
				
			
			@ -1068,13 +1068,26 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
		// System.out.println("end==="+new Date());
 | 
			
		||||
		availableTransOrderSB(ids, Boolean.FALSE, UserHolder.getUser()
 | 
			
		||||
				.getName());
 | 
			
		||||
		System.out.println("===生效完成===="+new Date());
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void availableTransOrderSB(List<Long> ids, Boolean equipment,
 | 
			
		||||
			String userName) {
 | 
			
		||||
		Long startTime = System.currentTimeMillis();
 | 
			
		||||
//		int i=1;//九江
 | 
			
		||||
//		int j=1;//非九江
 | 
			
		||||
		Order o = commonDao.get(Order.class, ids.get(0));
 | 
			
		||||
		Boolean is_yqft=Boolean.FALSE;
 | 
			
		||||
		if(o.getConsignor().getCode().equals("YQFT")){
 | 
			
		||||
			System.out.println("===生成一汽丰田费用===="+new Date());
 | 
			
		||||
			createYQFT_JJFee(o);
 | 
			
		||||
			createYQFT_FJJFee(o);
 | 
			
		||||
			is_yqft=Boolean.TRUE;
 | 
			
		||||
			System.out.println("===生成一汽丰田费用结束===="+new Date());
 | 
			
		||||
		}
 | 
			
		||||
		for (Long id : ids) {
 | 
			
		||||
			Order order = commonDao.get(Order.class, id);
 | 
			
		||||
			System.out.println(order.getRelateBill3()+"===生效===="+new Date());
 | 
			
		||||
			if (order.getStatus().equals("INPUT")
 | 
			
		||||
					|| order.getStatus().equals("CHECKED")
 | 
			
		||||
					|| order.getStatus().equals("AVAILABLE")) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1089,23 +1102,30 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
					order.setVolume(DoubleUtils.formatByPrecision(
 | 
			
		||||
							order.getVolumeTwo(), 7));
 | 
			
		||||
				}
 | 
			
		||||
				System.out.println("===1===="+new Date());
 | 
			
		||||
				orderPrescription(order);
 | 
			
		||||
				System.out.println("===2===="+new Date());
 | 
			
		||||
				publishEdiServerAvailableOrder(order);
 | 
			
		||||
				System.out.println("===3===="+new Date());
 | 
			
		||||
				if (order.getCash() > 0) {
 | 
			
		||||
					FeeType ft = getFeeType(SysCodeValue.YS_FYKM);
 | 
			
		||||
					feeManager.createFee(id, BillObjectType.ORDER, ft, "CASH",
 | 
			
		||||
							0, userName);
 | 
			
		||||
				}
 | 
			
		||||
				System.out.println("===4===="+new Date());
 | 
			
		||||
				if (order.getFee11() > 0) {
 | 
			
		||||
					feeManager.saveInputFee(id, BillObjectType.ORDER, null,
 | 
			
		||||
							"代收运费", order.getFee11());
 | 
			
		||||
				}
 | 
			
		||||
				createCusFee(order);
 | 
			
		||||
				feeManager.refreshBillFee(order.getId(), BillObjectType.ORDER,
 | 
			
		||||
						Boolean.TRUE);
 | 
			
		||||
				System.out.println("===6===="+new Date());
 | 
			
		||||
				if(!is_yqft){
 | 
			
		||||
					createCusFee(order);
 | 
			
		||||
					feeManager.refreshBillFee(order.getId(), BillObjectType.ORDER,
 | 
			
		||||
							Boolean.TRUE);
 | 
			
		||||
				}
 | 
			
		||||
				System.out.println("===7===="+new Date());
 | 
			
		||||
				if (!equipment) {
 | 
			
		||||
					operationHisManager
 | 
			
		||||
							.storeOperationHis(order.getId(), order
 | 
			
		||||
					operationHisManager.storeOperationHis(order.getId(), order
 | 
			
		||||
									.getRelateBill3(), null, null, "订单管理-订单维护",
 | 
			
		||||
									"生效", OperationHisUtil
 | 
			
		||||
											.operationHisStatus("INPUT"),
 | 
			
		||||
| 
						 | 
				
			
			@ -1114,30 +1134,31 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
									order.getQuantity(), order.getWeight(),
 | 
			
		||||
									order.getVolume(), 0, order
 | 
			
		||||
											.getDescription(), "TMS");
 | 
			
		||||
					System.out.println("===1===="+new Date());
 | 
			
		||||
				}
 | 
			
		||||
				if (order.getContractor().isBeSale()) {
 | 
			
		||||
					List<Legs> legs = this.commonDao.findByQuery(
 | 
			
		||||
							"from Legs l where l.order.id=:orderId",
 | 
			
		||||
							new String[] { "orderId" },
 | 
			
		||||
							new Object[] { order.getId() });
 | 
			
		||||
					if (legs.size() > 0) {
 | 
			
		||||
						List<Separate> ss = this.commonDao
 | 
			
		||||
								.findByQuery("from Separate s where s.order.id="
 | 
			
		||||
										+ order.getId());
 | 
			
		||||
						for (int i = ss.size(); i < (int) order.getQuantity(); i++) {
 | 
			
		||||
							Separate separate = new Separate();
 | 
			
		||||
							separate.setBoxNumber(i + 1);// 箱序号
 | 
			
		||||
							separate.setSeparateQty(1);
 | 
			
		||||
							separate.setContainerNo(order.getRelateBill3()
 | 
			
		||||
									+ "_" + (i + 1));// 分单号
 | 
			
		||||
							separate.setOperator(UserHolder.getUser().getName());
 | 
			
		||||
							separate.setOperatorDate(new Date());
 | 
			
		||||
							separate.setOrder(order);
 | 
			
		||||
							separate.setLegs1(legs.get(0));
 | 
			
		||||
							this.commonDao.store(separate);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
//				if (order.getContractor().isBeSale()) {
 | 
			
		||||
//					List<Legs> legs = this.commonDao.findByQuery(
 | 
			
		||||
//							"from Legs l where l.order.id=:orderId",
 | 
			
		||||
//							new String[] { "orderId" },
 | 
			
		||||
//							new Object[] { order.getId() });
 | 
			
		||||
//					if (legs.size() > 0) {
 | 
			
		||||
//						List<Separate> ss = this.commonDao
 | 
			
		||||
//								.findByQuery("from Separate s where s.order.id="
 | 
			
		||||
//										+ order.getId());
 | 
			
		||||
//						for (int i = ss.size(); i < (int) order.getQuantity(); i++) {
 | 
			
		||||
//							Separate separate = new Separate();
 | 
			
		||||
//							separate.setBoxNumber(i + 1);// 箱序号
 | 
			
		||||
//							separate.setSeparateQty(1);
 | 
			
		||||
//							separate.setContainerNo(order.getRelateBill3()
 | 
			
		||||
//									+ "_" + (i + 1));// 分单号
 | 
			
		||||
//							separate.setOperator(UserHolder.getUser().getName());
 | 
			
		||||
//							separate.setOperatorDate(new Date());
 | 
			
		||||
//							separate.setOrder(order);
 | 
			
		||||
//							separate.setLegs1(legs.get(0));
 | 
			
		||||
//							this.commonDao.store(separate);
 | 
			
		||||
//						}
 | 
			
		||||
//					}
 | 
			
		||||
//				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		Long endTime = System.currentTimeMillis();
 | 
			
		||||
| 
						 | 
				
			
			@ -1524,7 +1545,7 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
			this.createYDSPFJFee(order);
 | 
			
		||||
		} else if (cusCode.equals("YXZC")) {
 | 
			
		||||
			this.createYXZCFee(order);
 | 
			
		||||
		} else if (cusCode.equals("YQFT")) {
 | 
			
		||||
		} else if (cusCode.equals("YQFT")) {//一汽丰田
 | 
			
		||||
			this.createYQFTFee(order);
 | 
			
		||||
		} else if (cusCode.equals("YCCQ")) {
 | 
			
		||||
			this.createYCCQFee(order);
 | 
			
		||||
| 
						 | 
				
			
			@ -2319,6 +2340,7 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
	 */
 | 
			
		||||
	public void unAvailableOrder(List<Long> ids) {
 | 
			
		||||
		unAvailableOrderSB(ids, Boolean.FALSE, null, null, null);
 | 
			
		||||
		System.out.println("=====失效结束===="+new Date());
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void unAvailableOrderSB(List<Long> ids, Boolean equipment,
 | 
			
		||||
| 
						 | 
				
			
			@ -2326,6 +2348,7 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
		for (Order order : loadAllOrder(ids)) {
 | 
			
		||||
			if (OrderStatus.TRANS_AVAILABLE.equals(order.getStatus())) {
 | 
			
		||||
				// 失效订单直接返回录入中状态,待录入确认后重新包装和审核库存
 | 
			
		||||
				System.out.println(order.getRelateBill3()+"=====失效开始===="+new Date());
 | 
			
		||||
				deleteOpFee(order);
 | 
			
		||||
				order.setStatus(OrderStatus.AVAILABLE);
 | 
			
		||||
				List<OrderPackage> ops = new ArrayList<OrderPackage>();
 | 
			
		||||
| 
						 | 
				
			
			@ -2343,14 +2366,41 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
						commonDao.store(tempShip);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
//				List<Fee> fs = commonDao
 | 
			
		||||
//						.findByQuery("from Fee f where f.beShare=1 and f.billObject='ORDER' and f.billId="
 | 
			
		||||
//								+ order.getId() + " and f.operator='system'");
 | 
			
		||||
				List<Fee> fs = commonDao
 | 
			
		||||
						.findByQuery("from Fee f where f.beShare=1 and f.billObject='ORDER' and f.billId="
 | 
			
		||||
								+ order.getId() + " and f.operator='system'");
 | 
			
		||||
								+ order.getId());
 | 
			
		||||
				for (Fee f : fs) {
 | 
			
		||||
					this.commonDao.delete(f);
 | 
			
		||||
				}
 | 
			
		||||
				feeManager.refreshBillFee(order.getId(), BillObjectType.ORDER,
 | 
			
		||||
						Boolean.TRUE);
 | 
			
		||||
				order.setReceivefee(DoubleUtils.format3Fraction(0));
 | 
			
		||||
				order.setMatFee(DoubleUtils.format3Fraction(0));
 | 
			
		||||
				order.setPwdd(DoubleUtils.format3Fraction(0));
 | 
			
		||||
				order.setPayfee(DoubleUtils.format3Fraction(0));
 | 
			
		||||
				order.setProfit(DoubleUtils.format3Fraction(0));
 | 
			
		||||
				order.setFee1(0);
 | 
			
		||||
				order.setFee2(0);
 | 
			
		||||
				order.setFee3(0);
 | 
			
		||||
				order.setFee4(0);
 | 
			
		||||
				order.setFee11(0);
 | 
			
		||||
				if(order.getFee4()==0&&order.getConsignor().getCode().equals("DJKT")){
 | 
			
		||||
					//删除明细下的保险费
 | 
			
		||||
					List<OrderDetail> ods=this.commonDao.findByQuery("from OrderDetail od where od.order.id="+order.getId());
 | 
			
		||||
					for(OrderDetail od:ods){
 | 
			
		||||
						od.setFee1(0);
 | 
			
		||||
						od.setReceivedQuantity(0);
 | 
			
		||||
						this.commonDao.store(od);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				order.setFee5(0);
 | 
			
		||||
				order.setFee6(0);
 | 
			
		||||
				order.setFee7(0);
 | 
			
		||||
				order.setFee8(0);
 | 
			
		||||
				order.setFee9(0);
 | 
			
		||||
//				feeManager.refreshBillFee(order.getId(), BillObjectType.ORDER,
 | 
			
		||||
//						Boolean.TRUE);
 | 
			
		||||
				order.removeAllOrderLegs(legs);
 | 
			
		||||
				setUpdateInfo(order);
 | 
			
		||||
				// 向EDI-Server接口,发送订单失效消息;.....
 | 
			
		||||
| 
						 | 
				
			
			@ -2358,14 +2408,10 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
						InterfaceLogConstant.ORDER_INVALID, order.getId()));
 | 
			
		||||
 | 
			
		||||
				// 失效删除分单信息
 | 
			
		||||
				List<Separate> Separates = this.commonDao.findByQuery(
 | 
			
		||||
				List<Separate> separates = this.commonDao.findByQuery(
 | 
			
		||||
						"from Separate s where s.order.id=:id",
 | 
			
		||||
						new String[] { "id" }, new Object[] { order.getId() });
 | 
			
		||||
				if (Separates.size() > 0) {
 | 
			
		||||
					for (Separate s : Separates) {
 | 
			
		||||
						commonDao.delete(s);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				commonDao.deleteAll(separates);
 | 
			
		||||
 | 
			
		||||
			} else {
 | 
			
		||||
				throw new BusinessException("order.status.error");
 | 
			
		||||
| 
						 | 
				
			
			@ -2387,6 +2433,7 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
						order.getVolume(), 0, order.getDescription(), "TMS",
 | 
			
		||||
						Boolean.TRUE, platFormId, userId, userName);
 | 
			
		||||
			}
 | 
			
		||||
			System.out.println(order.getRelateBill3()+"=====失效结束===="+new Date());
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -8543,10 +8590,50 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
					Boolean.TRUE);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	void createYQFT_JJFee(Order order) {
 | 
			
		||||
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 | 
			
		||||
		int i=1;
 | 
			
		||||
		List<Order> orders = commonDao
 | 
			
		||||
				.findByQuery(" from Order o where   o.consignor.id=:id and to_char(o.planFromDate,'yyyy-MM-dd')=:planFromDate  and o.toCityCountiy.name='九江市' ",
 | 
			
		||||
						new String[] { "id", "planFromDate" },
 | 
			
		||||
						new Object[] { order.getConsignor().getId(),
 | 
			
		||||
								sdf.format(order.getPlanFromDate()) });
 | 
			
		||||
		double ysf = 1500.00 / orders.size();
 | 
			
		||||
		for (Order o : orders) {
 | 
			
		||||
			feeManager.saveInputFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
					null, "运输费", ysf);
 | 
			
		||||
			feeManager.refreshBillFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
					Boolean.TRUE);
 | 
			
		||||
		}
 | 
			
		||||
		
 | 
			
		||||
		
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	void createYQFT_FJJFee(Order order) {
 | 
			
		||||
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 | 
			
		||||
		int i=1;
 | 
			
		||||
		List<Order> orders = commonDao
 | 
			
		||||
				.findByQuery(" from Order o where   o.consignor.id=:id and to_char(o.planFromDate,'yyyy-MM-dd')=:planFromDate  and o.toCityCountiy.name!='九江市' ",
 | 
			
		||||
						new String[] { "id", "planFromDate" },
 | 
			
		||||
						new Object[] { order.getConsignor().getId(),
 | 
			
		||||
								sdf.format(order.getPlanFromDate()) });
 | 
			
		||||
		double ysf = 900.00 / orders.size();
 | 
			
		||||
		for (Order o : orders) {
 | 
			
		||||
			feeManager.saveInputFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
					null, "运输费", ysf);
 | 
			
		||||
			feeManager.refreshBillFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
					Boolean.TRUE);
 | 
			
		||||
		}
 | 
			
		||||
		
 | 
			
		||||
		
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	void createYQFTFee(Order order) {
 | 
			
		||||
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 | 
			
		||||
		int i=1;
 | 
			
		||||
		System.out.println("===费用结算"+i+++"==="+new Date());
 | 
			
		||||
		if (order.getToCityCountiy().getName().equals("九江市")) {
 | 
			
		||||
			Long piao = (Long) commonDao
 | 
			
		||||
					.findByQuery(
 | 
			
		||||
| 
						 | 
				
			
			@ -8555,21 +8642,26 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
							new Object[] { order.getConsignor().getId(),
 | 
			
		||||
									sdf.format(order.getPlanFromDate()),
 | 
			
		||||
									order.getToName() }).get(0);
 | 
			
		||||
			double ysf = 1500 / piao;
 | 
			
		||||
			System.out.println("==="+i+++"==="+new Date());
 | 
			
		||||
			double ysf = 1500.00 / piao;
 | 
			
		||||
			List<Order> Orders = commonDao
 | 
			
		||||
					.findByQuery(
 | 
			
		||||
							" from Order o where   o.consignor.id=:id and to_char(o.planFromDate,'yyyy-MM-dd')=:planFromDate  and o.toCityCountiy.name='九江市' ",
 | 
			
		||||
							new String[] { "id", "planFromDate" },
 | 
			
		||||
							new Object[] { order.getConsignor().getId(),
 | 
			
		||||
									sdf.format(order.getPlanFromDate()) });
 | 
			
		||||
			System.out.println("==="+i+++"==="+new Date());
 | 
			
		||||
			if (Orders.size() > 0) {
 | 
			
		||||
				for (Order o : Orders) {
 | 
			
		||||
					feeManager.saveInputFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
							null, "运输费", ysf);
 | 
			
		||||
					System.out.println("==="+i+++"==="+new Date());
 | 
			
		||||
					feeManager.refreshBillFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
							Boolean.TRUE);
 | 
			
		||||
					System.out.println("==="+i+++"==="+new Date());
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			
 | 
			
		||||
		} else {
 | 
			
		||||
			Long piao = (Long) commonDao
 | 
			
		||||
					.findByQuery(
 | 
			
		||||
| 
						 | 
				
			
			@ -8578,7 +8670,8 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
							new Object[] { order.getConsignor().getId(),
 | 
			
		||||
									sdf.format(order.getPlanFromDate()),
 | 
			
		||||
									order.getToName() }).get(0);
 | 
			
		||||
			double ysf = 900 / piao;
 | 
			
		||||
			System.out.println(piao+"2==="+i+++"==="+new Date());
 | 
			
		||||
			double ysf = 900.00 / piao;
 | 
			
		||||
			List<Order> Orders = commonDao
 | 
			
		||||
					.findByQuery(
 | 
			
		||||
							" from Order o where   o.consignor.id=:id and to_char(o.planFromDate,'yyyy-MM-dd')=:planFromDate  and o.toCityCountiy.name!='九江市' ",
 | 
			
		||||
| 
						 | 
				
			
			@ -8589,8 +8682,10 @@ public class DefaultOrderManager extends DefaultBaseManager implements
 | 
			
		|||
				for (Order o : Orders) {
 | 
			
		||||
					feeManager.saveInputFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
							null, "运输费", ysf);
 | 
			
		||||
					System.out.println("4==="+i+++"==="+new Date());
 | 
			
		||||
					feeManager.refreshBillFee(o.getId(), BillObjectType.ORDER,
 | 
			
		||||
							Boolean.TRUE);
 | 
			
		||||
					System.out.println("5==="+i+++"==="+new Date());
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,37 +0,0 @@
 | 
			
		|||
/images/
 | 
			
		||||
/index.html
 | 
			
		||||
/north.html
 | 
			
		||||
/south.html
 | 
			
		||||
/WEB-INF/
 | 
			
		||||
/css/
 | 
			
		||||
/fullLogin.html
 | 
			
		||||
/loadReport.html
 | 
			
		||||
/reportError.html
 | 
			
		||||
/richtext/
 | 
			
		||||
/runqianReport4Applet.jar
 | 
			
		||||
/scripts/
 | 
			
		||||
/setupLicense.html
 | 
			
		||||
/setupLicenseError.html
 | 
			
		||||
/setupLicenseExpired.html
 | 
			
		||||
/0A28F8F478484F023BE40A2C81BDB213.cache.html
 | 
			
		||||
/548CDF11D6FE9011F3447CA200D7FB7F.cache.png
 | 
			
		||||
/5FD9B3A562360A2F37F2BFEC788DF8CE.gwt.rpc
 | 
			
		||||
/6A78DAF7318804B41125967BB0F3E42F.cache.html
 | 
			
		||||
/6DD3558FBD8478C9D2F453FA4EC17188.gwt.rpc
 | 
			
		||||
/6FE682106BFF7C3B2AB310C462A073DC.cache.html
 | 
			
		||||
/907DFFE9188944362B4742BAEC2F7B81.cache.html
 | 
			
		||||
/9DA92932034707C17CFF15F95086D53F.cache.png
 | 
			
		||||
/A7CD51F9E5A7DED5F85AD1D82BA67A8A.cache.png
 | 
			
		||||
/ApplicationWindow.css
 | 
			
		||||
/ApplicationWindow.html
 | 
			
		||||
/F02AAC2312918BD524C42F2F3ABD31E1.cache.html
 | 
			
		||||
/GwtExt.css
 | 
			
		||||
/ReportCenter.css
 | 
			
		||||
/ReportCenter.html
 | 
			
		||||
/STMS.css
 | 
			
		||||
/STMS.html
 | 
			
		||||
/clear.cache.gif
 | 
			
		||||
/com.dev.stms.STMS.nocache.js
 | 
			
		||||
/gwt-hosted.html
 | 
			
		||||
/history.html
 | 
			
		||||
/hosted.html
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							
		Loading…
	
		Reference in New Issue