Send_80_info

package ccwp;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
//import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import ccwp.Ccw_push_record_temp_50;
public class Send_80_info {
private static String db_config="db_config.properties";
public static String DRIVERS=null;
public static String USER=null;
public static String URL=null;
public static String PASSWORD=null;
public static  long V_WAYBILLNO2;


static{
Properties props=new Properties();
InputStream inStr=null;
try{
inStr=ClassLoader.getSystemResourceAsStream(db_config);
props.load(inStr);
}catch (IOException e){
e.printStackTrace();
}
DRIVERS=props.getProperty("drivers");
URL=props.getProperty("url");
USER=props.getProperty("user");
PASSWORD=props.getProperty("pwd");

  
}

public static Connection getConnection(){
Connection con = null;
 try{   
   con =  DriverManager.getConnection(URL , USER , PASSWORD ) ;   
    }catch(SQLException se){   
   System.out.println("数据库连接失败!");   
   se.printStackTrace() ;   
    } 
 return con;}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Connection con = getConnection();
Statement statement = null;
String sql1=null;
String sql2=null;
String sql3="commit";
Ccw_push_record_temp_50 r=new Ccw_push_record_temp_50();
String V_WAYBILLNO=r.bno_from_recordtemp();
try {
statement=con.createStatement();
sql1="insert into tt_bar_record" +
"(" +
"BAR_RECORD_ID," +
"WAYBILL_NO," +
"ZONE_CODE," +
"OP_CODE," +
"OP_ATTACH_INFO," +
"COURIER_CODE," +
"BAR_OPR_CODE," +
"BAR_UPLOAD_TM," +
"OBJ_TYPE_CODE," +
"CONTNR_CODE," +
"PAY_FLG," +
"STAY_WHY_CODE," +
"SUBBILL_PIECE_QTY," +
"BAR_UPLOAD_TYPE_CODE," +
"WEIGHT_QTY," +
"FEE_AMT," +
"ACCOUNTANT_CODE," +
"OTHER_INFO," +
"OP_NAME," +
"ZONE_TYPE_CODE," +
"ENCRYPT_STRING," +
"BAR_SN," +
"SCHEDULE_CODE," +
"SIGN_TYPE_CODE," +
"SRC_CONTNR_CODE," +
"PHONE_ZONE," +
"PHONE," +
"STOP_OVER_FLG," +
"BATCH_CODE," +
"DEST_ZONE_CODE," +
"AUTOLOADING," +
"BAR_SCAN_TM," +
"BAR_SCAN_DT," +
"EXTEND_ATTACH_1," +
"EXTEND_ATTACH_2," +
"BAR_UPLOAD_OPR_CODE," +
"EXTEND_ATTACH_3," +
"EXTEND_ATTACH_4," +
"EXTEND_ATTACH_5," +
"EXTEND_ATTACH_6," +
"EXTEND_ATTACH_7," +
"BAR_UPLOAD_TM_STD," +
"BAR_SCAN_TM_STD" +
")" +
"values" +
"(" +
V_WAYBILLNO +
","+
V_WAYBILLNO +
","+
"'755A'," +
"'80'," +
"''," +
"'046154'," +
"'1000005565'," +
"sysdate," +
"20," +
"''," +
"0," +
"''," +
"0," +
"0," +
"'1.000'," +
"0.0000," +
"''," +
"'T4'," +
"'派件中'," +
"0," +
"'424'," +
"'V6.6.2'," +
"''," +
"0," +
"''," +
"'755'," +
"''," +
"0," +
"''," +
"''," +
"'1'," +
"sysdate," +
"sysdate," +
"''," +
"''," +
"'171403'," +
"''," +
"''," +
"''," +
"''," +
"sysdate," +
"sysdate," +
"sysdate" +
")";
V_WAYBILLNO2 = Long.parseLong(V_WAYBILLNO);
sql2="INSERT INTO tt_bar_record_log (record_id) SELECT bar_record_id FROM tt_bar_record WHERE waybill_no ='"+V_WAYBILLNO2+"'";
System.out.println(sql2);
statement.executeQuery(sql1);
statement.executeQuery(sql3);
statement.executeQuery(sql2);
statement.executeQuery(sql3);
}
catch (SQLException e) {
e.printStackTrace();
}
}
public long getBno(){
Connection con = getConnection();
Statement statement = null;
String sql1=null;
String sql2=null;
String sql3="commit";
Ccw_push_record_temp_50 r=new Ccw_push_record_temp_50();
String V_WAYBILLNO=r.bno_from_recordtemp();
try {
statement=con.createStatement();
sql1="insert into tt_bar_record" +
"(" +
"BAR_RECORD_ID," +
"WAYBILL_NO," +
"ZONE_CODE," +
"OP_CODE," +
"OP_ATTACH_INFO," +
"COURIER_CODE," +
"BAR_OPR_CODE," +
"BAR_UPLOAD_TM," +
"OBJ_TYPE_CODE," +
"CONTNR_CODE," +
"PAY_FLG," +
"STAY_WHY_CODE," +
"SUBBILL_PIECE_QTY," +
"BAR_UPLOAD_TYPE_CODE," +
"WEIGHT_QTY," +
"FEE_AMT," +
"ACCOUNTANT_CODE," +
"OTHER_INFO," +
"OP_NAME," +
"ZONE_TYPE_CODE," +
"ENCRYPT_STRING," +
"BAR_SN," +
"SCHEDULE_CODE," +
"SIGN_TYPE_CODE," +
"SRC_CONTNR_CODE," +
"PHONE_ZONE," +
"PHONE," +
"STOP_OVER_FLG," +
"BATCH_CODE," +
"DEST_ZONE_CODE," +
"AUTOLOADING," +
"BAR_SCAN_TM," +
"BAR_SCAN_DT," +
"EXTEND_ATTACH_1," +
"EXTEND_ATTACH_2," +
"BAR_UPLOAD_OPR_CODE," +
"EXTEND_ATTACH_3," +
"EXTEND_ATTACH_4," +
"EXTEND_ATTACH_5," +
"EXTEND_ATTACH_6," +
"EXTEND_ATTACH_7," +
"BAR_UPLOAD_TM_STD," +
"BAR_SCAN_TM_STD" +
")" +
"values" +
"(" +
V_WAYBILLNO +
","+
V_WAYBILLNO +
","+
"'755A'," +
"'80'," +
"''," +
"'046154'," +
"'1000005565'," +
"sysdate," +
"20," +
"''," +
"0," +
"''," +
"0," +
"0," +
"'1.000'," +
"0.0000," +
"''," +
"'T4'," +
"'派件中'," +
"0," +
"'424'," +
"'V6.6.2'," +
"''," +
"0," +
"''," +
"'755'," +
"''," +
"0," +
"''," +
"''," +
"'1'," +
"sysdate," +
"sysdate," +
"''," +
"''," +
"'171403'," +
"''," +
"''," +
"''," +
"''," +
"sysdate," +
"sysdate," +
"sysdate" +
")";
V_WAYBILLNO2 = Long.parseLong(V_WAYBILLNO);
sql2="INSERT INTO tt_bar_record_log (record_id) SELECT bar_record_id FROM tt_bar_record WHERE waybill_no ='"+V_WAYBILLNO2+"'";
System.out.println(sql2);
statement.executeQuery(sql1);
statement.executeQuery(sql3);
statement.executeQuery(sql2);
statement.executeQuery(sql3);
}
catch (SQLException e) {
e.printStackTrace();
}
return V_WAYBILLNO2;
}
}



/* * Vhost-user RDMA device : init and packets forwarding * * Copyright (C) 2025 KylinSoft Inc. and/or its affiliates. All rights reserved. * * Author: Xiong Weimin <xiongweimin@kylinos.cn> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. */ #ifndef __VHOST_RDMA_PKT_H__ #define __VHOST_RDMA_PKT_H__ #include <stdint.h> #include <rte_byteorder.h> #ifndef BIT #define BIT(x) (1 << (x)) #endif #define WR_MAX_QPT (8) #define OPCODE_NONE (-1) #define VHOST_NUM_OPCODE 256 enum vhost_rdma_wr_mask { WR_INLINE_MASK = BIT(0), WR_ATOMIC_MASK = BIT(1), WR_SEND_MASK = BIT(2), WR_READ_MASK = BIT(3), WR_WRITE_MASK = BIT(4), WR_LOCAL_OP_MASK = BIT(5), WR_READ_OR_WRITE_MASK = WR_READ_MASK | WR_WRITE_MASK, WR_READ_WRITE_OR_SEND_MASK = WR_READ_OR_WRITE_MASK | WR_SEND_MASK, WR_WRITE_OR_SEND_MASK = WR_WRITE_MASK | WR_SEND_MASK, WR_ATOMIC_OR_READ_MASK = WR_ATOMIC_MASK | WR_READ_MASK, }; struct vhost_rdma_wr_opcode_info { const char *name; enum vhost_rdma_wr_mask mask[WR_MAX_QPT]; }; extern struct vhost_rdma_wr_opcode_info vhost_rdma_wr_opcode_info[]; enum vhost_rdma_hdr_type { VHOST_RDMA_LRH, VHOST_RDMA_GRH, VHOST_RDMA_BTH, VHOST_RDMA_RETH, VHOST_RDMA_AETH, VHOST_RDMA_ATMETH, VHOST_RDMA_ATMACK, VHOST_RDMA_IETH, VHOST_RDMA_RDETH, VHOST_RDMA_DETH, VHOST_RDMA_IMMDT, VHOST_RDMA_PAYLOAD, NUM_HDR_TYPES }; enum vhost_rdma_hdr_mask { VHOST_LRH_MASK = BIT(VHOST_RDMA_LRH), VHOST_GRH_MASK = BIT(VHOST_RDMA_GRH), VHOST_BTH_MASK = BIT(VHOST_RDMA_BTH), VHOST_IMMDT_MASK = BIT(VHOST_RDMA_IMMDT), VHOST_RETH_MASK = BIT(VHOST_RDMA_RETH), VHOST_AETH_MASK = BIT(VHOST_RDMA_AETH), VHOST_ATMETH_MASK = BIT(VHOST_RDMA_ATMETH), VHOST_ATMACK_MASK = BIT(VHOST_RDMA_ATMACK), VHOST_IETH_MASK = BIT(VHOST_RDMA_IETH), VHOST_RDETH_MASK = BIT(VHOST_RDMA_RDETH), VHOST_DETH_MASK = BIT(VHOST_RDMA_DETH), VHOST_PAYLOAD_MASK = BIT(VHOST_RDMA_PAYLOAD), VHOST_REQ_MASK = BIT(NUM_HDR_TYPES + 0), VHOST_ACK_MASK = BIT(NUM_HDR_TYPES + 1), VHOST_SEND_MASK = BIT(NUM_HDR_TYPES + 2), VHOST_WRITE_MASK = BIT(NUM_HDR_TYPES + 3), VHOST_READ_MASK = BIT(NUM_HDR_TYPES + 4), VHOST_ATOMIC_MASK = BIT(NUM_HDR_TYPES + 5), VHOST_RWR_MASK = BIT(NUM_HDR_TYPES + 6), VHOST_COMP_MASK = BIT(NUM_HDR_TYPES + 7), VHOST_START_MASK = BIT(NUM_HDR_TYPES + 8), VHOST_MIDDLE_MASK = BIT(NUM_HDR_TYPES + 9), VHOST_END_MASK = BIT(NUM_HDR_TYPES + 10), VHOST_LOOPBACK_MASK = BIT(NUM_HDR_TYPES + 12), VHOST_READ_OR_ATOMIC = (VHOST_READ_MASK | VHOST_ATOMIC_MASK), VHOST_WRITE_OR_SEND = (VHOST_WRITE_MASK | VHOST_SEND_MASK), }; struct vhost_rdma_opcode_info { const char *name; int length; int offset[NUM_HDR_TYPES]; enum vhost_rdma_hdr_mask mask; }; extern struct vhost_rdma_opcode_info vhost_rdma_opcode[VHOST_NUM_OPCODE]; #define IB_OPCODE(transport, op) \ IB_OPCODE_ ## transport ## _ ## op = \ IB_OPCODE_ ## transport + IB_OPCODE_ ## op enum { /* transport types -- just used to define real constants */ IB_OPCODE_RC = 0x00, IB_OPCODE_UC = 0x20, IB_OPCODE_RD = 0x40, IB_OPCODE_UD = 0x60, /* per IBTA 1.3 vol 1 Table 38, A10.3.2 */ IB_OPCODE_CNP = 0x80, /* Manufacturer specific */ IB_OPCODE_MSP = 0xe0, /* operations -- just used to define real constants */ IB_OPCODE_SEND_FIRST = 0x00, IB_OPCODE_SEND_MIDDLE = 0x01, IB_OPCODE_SEND_LAST = 0x02, IB_OPCODE_SEND_LAST_WITH_IMMEDIATE = 0x03, IB_OPCODE_SEND_ONLY = 0x04, IB_OPCODE_SEND_ONLY_WITH_IMMEDIATE = 0x05, IB_OPCODE_RDMA_WRITE_FIRST = 0x06, IB_OPCODE_RDMA_WRITE_MIDDLE = 0x07, IB_OPCODE_RDMA_WRITE_LAST = 0x08, IB_OPCODE_RDMA_WRITE_LAST_WITH_IMMEDIATE = 0x09, IB_OPCODE_RDMA_WRITE_ONLY = 0x0a, IB_OPCODE_RDMA_WRITE_ONLY_WITH_IMMEDIATE = 0x0b, IB_OPCODE_RDMA_READ_REQUEST = 0x0c, IB_OPCODE_RDMA_READ_RESPONSE_FIRST = 0x0d, IB_OPCODE_RDMA_READ_RESPONSE_MIDDLE = 0x0e, IB_OPCODE_RDMA_READ_RESPONSE_LAST = 0x0f, IB_OPCODE_RDMA_READ_RESPONSE_ONLY = 0x10, IB_OPCODE_ACKNOWLEDGE = 0x11, IB_OPCODE_ATOMIC_ACKNOWLEDGE = 0x12, IB_OPCODE_COMPARE_SWAP = 0x13, IB_OPCODE_FETCH_ADD = 0x14, /* opcode 0x15 is reserved */ IB_OPCODE_SEND_LAST_WITH_INVALIDATE = 0x16, IB_OPCODE_SEND_ONLY_WITH_INVALIDATE = 0x17, /* real constants follow -- see comment about above IB_OPCODE() macro for more details */ /* RC */ IB_OPCODE(RC, SEND_FIRST), IB_OPCODE(RC, SEND_MIDDLE), IB_OPCODE(RC, SEND_LAST), IB_OPCODE(RC, SEND_LAST_WITH_IMMEDIATE), IB_OPCODE(RC, SEND_ONLY), IB_OPCODE(RC, SEND_ONLY_WITH_IMMEDIATE), IB_OPCODE(RC, RDMA_WRITE_FIRST), IB_OPCODE(RC, RDMA_WRITE_MIDDLE), IB_OPCODE(RC, RDMA_WRITE_LAST), IB_OPCODE(RC, RDMA_WRITE_LAST_WITH_IMMEDIATE), IB_OPCODE(RC, RDMA_WRITE_ONLY), IB_OPCODE(RC, RDMA_WRITE_ONLY_WITH_IMMEDIATE), IB_OPCODE(RC, RDMA_READ_REQUEST), IB_OPCODE(RC, RDMA_READ_RESPONSE_FIRST), IB_OPCODE(RC, RDMA_READ_RESPONSE_MIDDLE), IB_OPCODE(RC, RDMA_READ_RESPONSE_LAST), IB_OPCODE(RC, RDMA_READ_RESPONSE_ONLY), IB_OPCODE(RC, ACKNOWLEDGE), IB_OPCODE(RC, ATOMIC_ACKNOWLEDGE), IB_OPCODE(RC, COMPARE_SWAP), IB_OPCODE(RC, FETCH_ADD), IB_OPCODE(RC, SEND_LAST_WITH_INVALIDATE), IB_OPCODE(RC, SEND_ONLY_WITH_INVALIDATE), /* UC */ IB_OPCODE(UC, SEND_FIRST), IB_OPCODE(UC, SEND_MIDDLE), IB_OPCODE(UC, SEND_LAST), IB_OPCODE(UC, SEND_LAST_WITH_IMMEDIATE), IB_OPCODE(UC, SEND_ONLY), IB_OPCODE(UC, SEND_ONLY_WITH_IMMEDIATE), IB_OPCODE(UC, RDMA_WRITE_FIRST), IB_OPCODE(UC, RDMA_WRITE_MIDDLE), IB_OPCODE(UC, RDMA_WRITE_LAST), IB_OPCODE(UC, RDMA_WRITE_LAST_WITH_IMMEDIATE), IB_OPCODE(UC, RDMA_WRITE_ONLY), IB_OPCODE(UC, RDMA_WRITE_ONLY_WITH_IMMEDIATE), /* RD */ IB_OPCODE(RD, SEND_FIRST), IB_OPCODE(RD, SEND_MIDDLE), IB_OPCODE(RD, SEND_LAST), IB_OPCODE(RD, SEND_LAST_WITH_IMMEDIATE), IB_OPCODE(RD, SEND_ONLY), IB_OPCODE(RD, SEND_ONLY_WITH_IMMEDIATE), IB_OPCODE(RD, RDMA_WRITE_FIRST), IB_OPCODE(RD, RDMA_WRITE_MIDDLE), IB_OPCODE(RD, RDMA_WRITE_LAST), IB_OPCODE(RD, RDMA_WRITE_LAST_WITH_IMMEDIATE), IB_OPCODE(RD, RDMA_WRITE_ONLY), IB_OPCODE(RD, RDMA_WRITE_ONLY_WITH_IMMEDIATE), IB_OPCODE(RD, RDMA_READ_REQUEST), IB_OPCODE(RD, RDMA_READ_RESPONSE_FIRST), IB_OPCODE(RD, RDMA_READ_RESPONSE_MIDDLE), IB_OPCODE(RD, RDMA_READ_RESPONSE_LAST), IB_OPCODE(RD, RDMA_READ_RESPONSE_ONLY), IB_OPCODE(RD, ACKNOWLEDGE), IB_OPCODE(RD, ATOMIC_ACKNOWLEDGE), IB_OPCODE(RD, COMPARE_SWAP), IB_OPCODE(RD, FETCH_ADD), /* UD */ IB_OPCODE(UD, SEND_ONLY), IB_OPCODE(UD, SEND_ONLY_WITH_IMMEDIATE) }; struct vhost_rdma_pkt_info { struct vhost_rdma_dev *dev; /* device that owns packet */ struct vhost_rdma_qp *qp; /* qp that owns packet */ struct vhost_rdma_send_wqe *wqe; /* send wqe */ uint8_t *hdr; /* points to bth */ uint32_t mask; /* useful info about pkt */ uint32_t psn; /* bth psn of packet */ uint16_t pkey_index; /* partition of pkt */ uint16_t paylen; /* length of bth - icrc */ uint8_t port_num; /* port pkt received on */ uint8_t opcode; /* bth opcode of packet */ }; #endif 同上
最新发布
10-10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值