📄 hexiaoshowlist.java
字号:
package edu.whut.cwts.pg.hexiao;
import java.util.*;
import java.sql.*;
public class HexiaoShowList {
public static ArrayList getHexiaoList(String highZddm, String lowZddm,
String dprdm, String syzt, String pzzl) throws SQLException {
// highZddm为登陆进去后本级的站点代码,lowZddm为它的直属下级代码,dprdm为打票人代码,syzt为使用状态;
ArrayList result = new ArrayList();
ConnectDB conndb = new ConnectDB();
int levelfirst = DepartmentCtrl.getLogicLevel(highZddm);// 获取本站点逻辑级别
int levelsecond = DepartmentCtrl.getLogicLevel(lowZddm);// 获取直属下级站点逻辑级别
String sql = "select * from pjztb where ";
// 由于国际航线中未达帐的不能核销,那么此处中的的票据号码需要做进一步的筛选
String sqlAdd = " and pzhm in (select pzhm from gjhc where dzbj = '1')";
if (levelfirst == 3) {// 选取打票员,jxzt为0,syzt为5,zddm为自身的票据
String jxzt = "0";
sql = sql + "dprdm='" + dprdm.trim() + "' and jxzt='" + jxzt.trim()
+ "' and syzt='" + syzt.trim() + "'and zddm='"
+ highZddm.trim() + "' and pzzl = '" + pzzl.trim() + "' ";
// sql = sql + "dprdm='123'";
// Assert.pl(sql);
}
if (levelfirst == 2) {
String jxzt = "1";
sql = sql + "jxzt='" + jxzt.trim() + "' and syzt='" + syzt.trim()
+ "' and zddm='" + lowZddm.trim() + "' and pzzl = '"
+ pzzl.trim() + "' ";
}
if (levelfirst == 1 && levelsecond == 2) {
String jxzt = "2";
String lowZddmSub1 = lowZddm.substring(0, 4);// 拆取直属下级代码前4位
sql = sql + "jxzt='" + jxzt.trim() + "' and syzt='" + syzt.trim()
+ "' and substring(zddm,1,4) ='" + lowZddmSub1.trim()
+ "' and pzzl = '" + pzzl.trim() + "' ";
}
if (levelfirst == 1 && levelsecond == 3) {
String jxzt = "1";
sql = sql + "jxzt='" + jxzt.trim() + "' and syzt='" + syzt.trim()
+ "' and zddm ='" + lowZddm.trim() + "' and pzzl = '"
+ pzzl.trim() + "' ";
}
if (levelfirst == 0 && levelsecond == 1) {
String jxzt = "3";
String lowZddmSub2 = lowZddm.substring(0, 2);// 拆取直属下级代码前2位
sql = sql + "jxzt='" + jxzt.trim() + "' and syzt='" + syzt.trim()
+ "' and substring(zddm,1,2) ='" + lowZddmSub2.trim()
+ "' and pzzl = '" + pzzl.trim() + "' ";
}
if (levelfirst == 0 && levelsecond == 3) {
String jxzt = "1";
sql = sql + "jxzt='" + jxzt.trim() + "' and syzt='" + syzt.trim()
+ "' and zddm ='" + lowZddm.trim() + "' and pzzl = '"
+ pzzl.trim() + "' ";
}
if (pzzl.equals("1")) {
sql = sql + sqlAdd;
}
Assert.pl(sql);
ResultSet rs = conndb.executeQuery(sql);
if (rs == null)
return null;
while (rs.next()) {
result.add(new Pzzt(rs.getString("pzzl"), rs.getString("pzhm"), rs
.getString("syzt"), rs.getString("jxzt"), rs
.getString("zfzt"), rs.getString("c_zpsj"), rs
.getString("c_zx_f"), rs.getString("zx_z_f"), rs
.getString("z_d_f"), rs.getString("d_r_f"), rs
.getString("r_d_jxsj"), rs.getString("d_z_jxsj"), rs
.getString("z_zx_jxsj"), rs.getString("zx_c_jxsj"), rs
.getString("dprdm"), rs.getString("zddm")));
}
conndb.close();
return result;
}
public static int hexiaoDo(String test, String highZddm, String lowZddm)
throws SQLException {
ConnectDB conndb = new ConnectDB();
int levelfirst = DepartmentCtrl.getLogicLevel(highZddm);// 获取本站点逻辑级别
int levelsecond = DepartmentCtrl.getLogicLevel(lowZddm);// 获取直属下级站点逻辑级别
String hexiaoTime = new java.util.Date().toLocaleString();// 核销日期
// String sql = "update pjztb set ";
ArrayList hexiaoList0 = new ArrayList();
ArrayList hexiaoList1 = new ArrayList();
int flagResult = 1; // 执行每一步的结果都与之相乘,其中只要有一项为0,则操作失败
String[] str_abc = test.split(";");// 我在页面上获取的字符串要将它按";"进行拆分,然后再按照","拆分
for (int j = 0; j < str_abc.length; j++) {
hexiaoList0.add(str_abc[j]);
}
for (int k = 0; k < hexiaoList0.size(); k++) {
String ssd = (String) hexiaoList0.get(k);
String[] str_abc1 = ssd.split(",");
hexiaoList1.add(new Pzqz(str_abc1[0], str_abc1[1], str_abc1[2]));
}
// Pzqz pdd= (Pzqz) hexiaoList1.get(0);
// System.out.println(pdd.getPzqh());System.out.println(pdd.getPzzh());System.out.println(pdd.getPzzl());
for (int i = 0; i < hexiaoList1.size(); i++) {
Pzqz pzqzHexiao = (Pzqz) hexiaoList1.get(i);
if (levelfirst == 3) // 选取打票员,jxzt为0,syzt为5,zddm为自身的票据 操作
{
String sql = "update pjztb set jxzt='1' , r_d_jxsj='"
+ hexiaoTime + "' where pzzl='" + pzqzHexiao.getPzzl()
+ "' and pzhm between '" + pzqzHexiao.getPzqh()
+ "' and '" + pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
if (levelfirst == 2) {
String sql = "update pjztb set jxzt='2' , d_z_jxsj='"
+ hexiaoTime + "' where pzzl='" + pzqzHexiao.getPzzl()
+ "' and pzhm between '" + pzqzHexiao.getPzqh()
+ "' and '" + pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
if (levelfirst == 1 && levelsecond == 2) {
String sql = "update pjztb set jxzt='3' , z_zx_jxsj='"
+ hexiaoTime + "' where pzzl='" + pzqzHexiao.getPzzl()
+ "' and pzhm between '" + pzqzHexiao.getPzqh()
+ "' and '" + pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
if (levelfirst == 1 && levelsecond == 3) {
String sql = "update pjztb set jxzt='3' , d_z_jxsj='"
+ hexiaoTime + "' , z_zx_jxsj='" + hexiaoTime
+ "' where pzzl='" + pzqzHexiao.getPzzl()
+ "' and pzhm between '" + pzqzHexiao.getPzqh()
+ "' and '" + pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
if (levelfirst == 0 && levelsecond == 1) {
String sql = "update pjztb set jxzt='4' , zx_c_jxsj='"
+ hexiaoTime + "' where pzzl='" + pzqzHexiao.getPzzl()
+ "' and pzhm between '" + pzqzHexiao.getPzqh()
+ "' and '" + pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
if (levelfirst == 0 && levelsecond == 3) {
String sql = "update pjztb set jxzt='4' , d_z_jxsj='"
+ hexiaoTime + "' , z_zx_jxsj='" + hexiaoTime
+ "' , zx_c_jxsj='" + hexiaoTime + "' where pzzl='"
+ pzqzHexiao.getPzzl() + "' and pzhm between '"
+ pzqzHexiao.getPzqh() + "' and '"
+ pzqzHexiao.getPzzh() + "'";
Assert.pl(sql);
int flag = conndb.executeUpdate(sql);
flagResult = flagResult * flag;
}
}
return flagResult;
}
/* public static long gethexiaoFsQuannian(String highZddm, String lowZddm,
String dprdm, String syzt, String pzzl)
{
ConnectDB conndb = new ConnectDB();
int levelfirst = DepartmentCtrl.getLogicLevel(highZddm);// 获取本站点逻辑级别
int levelsecond = DepartmentCtrl.getLogicLevel(lowZddm);// 获取直属下级站点逻辑级别
String sql = "select count(*) as quannianhexiaoTotal from pjztb where ";
// 由于国际航线中未达帐的不能核销,那么此处中的的票据号码需要做进一步的筛选
String sqlAdd = " and pzhm in (select pzhm from gjhc where dzbj = '1')";
}*/
public static void main(String args[]) {
/*
* try{ ArrayList list1=getHexiaoList("110202"," ","110202001","5","2");
* Pzzt pzzt11 =(Pzzt) list1.get(0); if(list1.size()==0)
* System.out.println("NO DATA"); else
* {System.out.println(list1.size());
* System.out.println(pzzt11.getZddm()); } } catch(SQLException e) {
* e.printStackTrace(); }
*/
/*
* int t = hexiaoDo(
* "0000001003,0000001005,2;1000000001,1000000002,1;1000000001,1000000002,1;1000000001,1000000002,1;",
* "110202", " ", "2"); System.out.println(t);
*/
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -