package com.data.datarepo.utils; import com.mysql.cj.jdbc.MysqlDataSource; import org.apache.commons.lang3.StringUtils; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.Date; public class EquipmentNo extends DataSourceOra{ public String getNewEquipmentNo(String equipmentType,String up_num) throws SQLException { // SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式 // String date = f.format(new Date(System.currentTimeMillis())); // String update=""; // String Number=""; // if(StringUtils.isEmpty(up_num)||"null".equals(up_num)){ // Number = "220000000000_"+equipmentType+"_" + date+"_" + "01"; // }else { // String[] upnums= up_num.split("_"); // update=upnums[2]; // if(date.equals(update)){ // int intNumber = Integer.parseInt(up_num.substring(up_num.length()-2)); // intNumber++; // Number = String.valueOf(intNumber); // for (int i = 0; i < 2; i++){ // Number = Number.length() < 2 ? "0" + Number : Number; // } // Number = "220000000000_"+equipmentType+"_" + date+"_" + Number; // }else{ // Number = "220000000000_"+equipmentType+"_" + date+"_" + "01"; // } // } SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式 String date = f.format(new Date(System.currentTimeMillis())); Connection connection = null; String selectSQL = "select UP_NUM from "+equipmentType+"_OLD where UP_NUM like '220000000000_"+equipmentType+"_"+date+"%' order by up_num desc"; PreparedStatement prepStmt = null; String update=""; String Number=""; try { // MysqlDataSource basicDS = DataSource.getInstance().getMySqlDS(); connection = this.getConn(); prepStmt = connection.prepareStatement(selectSQL); ResultSet rs = prepStmt.executeQuery(); // String[] upnums= up_num.split("_"); // update=upnums[2]; if(rs.next()){ String n =rs.getString("up_num"); int intNumber = Integer.parseInt(n.substring(n.length()-2)); intNumber++; Number = String.valueOf(intNumber); for (int i = 0; i < 2; i++){ Number = Number.length() < 2 ? "0" + Number : Number; } Number = "220000000000_"+equipmentType+"_" + date+"_" + Number; }else{ Number = "220000000000_"+equipmentType+"_" + date+"_" + "01"; } }catch (Exception e){ e.printStackTrace(); }finally { if (prepStmt != null) { prepStmt.close(); } if (connection != null) { connection.close(); } } return Number; } }