@ -1,23 +1,32 @@
package com.chint.plm.SearchSapResult ;
import java.awt.Component ;
import java.awt.Window ;
import java.awt.event.ComponentEvent ;
import java.awt.event.ComponentListener ;
import java.sql.ResultSet ;
import java.time.LocalDateTime ;
import java.time.format.DateTimeFormatter ;
import java.util.ArrayList ;
import java.util.List ;
import javax.swing.JFrame ;
import org.casic.javafx.control.DateTimePicker ;
import com.chint.plm.createEcn.CreateEcnFrame ;
import com.chint.plm.fxUtil.KFXPanel ;
import com.chint.plm.fxUtil.KFXPanelController ;
import com.connor.chint.sap2.util.ChintPreferenceUtil ;
import com.connor.chint.sap2.util.SAPUtil ;
import com.connor.chint.sap2.util.SqlUtil ;
import com.connor.plm.CostListManagement.pojo.QuotationMX ;
import com.teamcenter.rac.aif.AbstractAIFApplication ;
import com.teamcenter.rac.aifrcp.AIFUtility ;
import com.teamcenter.rac.kernel.TCSession ;
import com.teamcenter.rac.util.MessageBox ;
import edu.emory.mathcs.backport.java.util.Arrays ;
import javafx.beans.property.ObjectProperty ;
import javafx.beans.property.SimpleIntegerProperty ;
import javafx.beans.property.SimpleStringProperty ;
@ -25,261 +34,282 @@ import javafx.collections.FXCollections;
import javafx.collections.ObservableList ;
import javafx.event.ActionEvent ;
import javafx.fxml.FXML ;
import javafx.geometry.Pos ;
import javafx.scene.control.Button ;
import javafx.scene.control.CheckBox ;
import javafx.scene.control.ComboBox ;
import javafx.scene.control.ScrollPane ;
import javafx.scene.control.SingleSelectionModel ;
import javafx.scene.control.TableCell ;
import javafx.scene.control.TableColumn ;
import javafx.scene.control.TableView ;
import javafx.scene.control.TextField ;
import javafx.scene.control.TitledPane ;
import javafx.scene.control.cell.PropertyValueFactory ;
import javafx.scene.layout.BorderPane ;
import javafx.scene.layout.GridPane ;
import javafx.scene.layout.StackPane ;
public class SearchSapController extends KFXPanelController {
@FXML
private TitledPane tp_result ;
@FXML
private Button bt_closeAll ;
@FXML
private TitledPane mxtjPane ;
@FXML
private GridPane bt_cx ; // 按钮的pane
@FXML
private Button bt_close ; // 关闭
@FXML
private Button bt_czcx ; // 重置查询
@FXML
private StackPane stackPane ;
// table的列
@FXML
private TableColumn < SumTableBean , String > tc_xh ;
@FXML
private TableColumn < SumTableBean , String > tc_zrws ;
@FXML
private TableColumn < SumTableBean , String > tc_rwh ;
@FXML
private TableColumn < SumTableBean , String > tc_fqsj ;
@FXML
private TableColumn < SumTableBean , String > tc_fqr ;
@FXML
private TableColumn < SumTableBean , String > tc_status ;
@FXML
private TableColumn < SumTableBean , Object > tc_log ;
@FXML
private TableColumn < SumTableBean , String > tc_sapState ;
@FXML
private TableColumn < SumTableBean , String > tc_plm ;
@FXML
private TableColumn < SumTableBean , Object > tc_result ;
@FXML
private TitledPane tp_sxtj ; // 筛选条件pane
@FXML
private TitledPane rwtjPane ; // 任务条件pane
@FXML
private GridPane gridPane ; // 第一个pane插入日期控件
@FXML
private TextField tx_bh ; // 文本 任务编号
@FXML
private ComboBox < String > cb_factory ; // 工厂下拉
@FXML
private TextField tx_wbs ; // wbs号
@FXML
private ComboBox < String > cb_status ; // 数据状态
@FXML
private TextField tx_user ; // 发起人
@FXML
private ComboBox < String > cb_sapState ; // sap处理结果
@FXML
private TextField tx_projectName ; // 项目名称
@FXML
private CheckBox bt_errTask ; // 查询错误任务
@FXML
private CheckBox bt_errMsg ; // 单个BOM错误信息
// 明细条件
@FXML
private ComboBox < String > tx_sapStatus ; // sap数据状态
@FXML
private TextField tx_pcode ; // 父物料编码
@FXML
private TextField tx_wbsMx ; // wbs
@FXML
private TextField tx_sapReturn ; // sap返回信息
@FXML
private TextField tx_batchNum ; // 批次号
@FXML
private Button bt_wy ; // 按钮尾页
@FXML
private Button bt_syy ; // 上一页
@FXML
private Button bt_xyy ; // 下一页
@FXML
private Button bt_sy ; // 首页
@FXML
private Button bt_search ;
@FXML
private TableView < SumTableBean > tableView ;
// 全部关闭
@FXML
void clossAll ( ActionEvent event ) {
frame . dispose ( ) ;
}
String getCombText ( Object comb ) {
String textVal = "" ;
if ( comb instanceof TextField ) {
textVal = ( ( TextField ) comb ) . getText ( ) ;
} else if ( comb instanceof ComboBox ) {
SingleSelectionModel < ? > selectionModel = ( ( ComboBox < ? > ) comb ) . getSelectionModel ( ) ;
if ( selectionModel . getSelectedIndex ( ) > = 0 ) {
textVal = ( ( ComboBox < ? > ) comb ) . getSelectionModel ( ) . getSelectedItem ( ) . toString ( ) ;
}
} else if ( comb instanceof CheckBox ) {
boolean selected = ( ( CheckBox ) comb ) . isSelected ( ) ;
}
return textVal ;
}
private int pageNum ; // 分页显示当前第几页
private List < List < SumTableBean > > tableBeans = new ArrayList < List < SumTableBean > > ( ) ;
// 查询操作
@FXML
private TitledPane tp_result ;
@FXML
private Button bt_closeAll ;
@FXML
private TitledPane mxtjPane ;
@FXML
private GridPane bt_cx ; // 按钮的pane
@FXML
private Button bt_close ; //关闭
@FXML
private Button bt_czcx ; //重置查询
@FXML
private StackPane stackPane ;
//table的列
@FXML
private TableColumn < SumTableBean , String > tc_xh ;
@FXML
private TableColumn < SumTableBean , String > tc_zrws ;
@FXML
private TableColumn < SumTableBean , String > tc_rwh ;
@FXML
private TableColumn < SumTableBean , String > tc_fqsj ;
@FXML
private TableColumn < SumTableBean , String > tc_fqr ;
@FXML
private TableColumn < SumTableBean , String > tc_status ;
@FXML
private TableColumn < SumTableBean , Object > tc_log ;
@FXML
private TableColumn < SumTableBean , String > tc_sapState ;
@FXML
private TableColumn < SumTableBean , String > tc_plm ;
@FXML
private TableColumn < SumTableBean , Object > tc_result ;
@FXML
private TitledPane tp_sxtj ; //筛选条件pane
@FXML
private TitledPane rwtjPane ; //任务条件pane
@FXML
private GridPane gridPane ; //第一个pane插入日期控件
@FXML
private TextField tx_bh ; //文本 任务编号
@FXML
private ComboBox < String > cb_factory ; //工厂下拉
@FXML
private TextField tx_wbs ; //wbs号
@FXML
private ComboBox < String > cb_status ; //数据状态
@FXML
private TextField tx_user ; //发起人
@FXML
private ComboBox < String > cb_sapState ; //sap处理结果
@FXML
private TextField tx_projectName ; //项目名称
@FXML
private CheckBox bt_errTask ; //查询错误任务
@FXML
private CheckBox bt_errMsg ; // 单个BOM错误信息
//明细条件
@FXML
private ComboBox < String > tx_sapStatus ; //sap数据状态
@FXML
private TextField tx_pcode ; //父物料编码
@FXML
private TextField tx_wbsMx ; //wbs
@FXML
private TextField tx_sapReturn ; //sap返回信息
@FXML
private TextField tx_batchNum ; //批次号
@FXML
private Button bt_wy ; //按钮尾页
@FXML
private Button bt_syy ; //上一页
@FXML
private Button bt_xyy ; //下一页
@FXML
private Button bt_sy ; //首页
@FXML
private Button bt_search ;
@FXML
private TableView < SumTableBean > tableView ;
//全部关闭
@FXML
void clossAll ( ActionEvent event ) {
frame . dispose ( ) ;
}
String getCombText ( Object comb ) {
String textVal = "" ;
if ( comb instanceof TextField ) {
textVal = ( ( TextField ) comb ) . getText ( ) ;
} else if ( comb instanceof ComboBox ) {
SingleSelectionModel < ? > selectionModel = ( ( ComboBox < ? > ) comb ) . getSelectionModel ( ) ;
if ( selectionModel . getSelectedIndex ( ) > = 0 ) {
textVal = ( ( ComboBox < ? > ) comb ) . getSelectionModel ( ) . getSelectedItem ( ) . toString ( ) ;
}
} else if ( comb instanceof CheckBox ) {
boolean selected = ( ( CheckBox ) comb ) . isSelected ( ) ;
}
return textVal ;
}
private int pageNum ; //分页显示当前第几页
private List < List < SumTableBean > > tableBeans = new ArrayList < List < SumTableBean > > ( ) ;
//查询操作
@FXML
void searchAction ( ActionEvent event ) {
//拼接查询语句
StringBuilder sql = new StringBuilder ( "select \"CODE\",\"USER\",STARTTIME,\"NUMBER\",SAPRESULT,DATASTATUS,PLMRESULT,LOGURL from CHINT_BOM_TO_SAP_SUM where 1=1" ) ;
String code = getCombText ( tx_bh ) ;
if ( ! code . isEmpty ( ) ) {
sql . append ( " and \"CODE\" = '" ) . append ( code ) . append ( "'" ) ;
}
String factory = getCombText ( cb_factory ) ;
if ( ! factory . isEmpty ( ) ) {
sql . append ( " and factory = '" ) . append ( factory ) . append ( "'" ) ;
}
String wbsno = getCombText ( tx_wbs ) ;
if ( ! wbsno . isEmpty ( ) ) {
sql . append ( " and wbsno = '" ) . append ( wbsno ) . append ( "'" ) ;
}
String datastatus = getCombText ( cb_status ) ;
if ( ! datastatus . isEmpty ( ) ) {
sql . append ( " and datastatus = '" ) . append ( datastatus ) . append ( "'" ) ;
}
String user = getCombText ( tx_user ) ;
System . out . println ( "user==>" + user ) ;
if ( ! user . isEmpty ( ) ) {
sql . append ( " and \"USER\" = '" ) . append ( user ) . append ( "'" ) ;
}
String sapresult = getCombText ( cb_sapState ) ;
if ( ! sapresult . isEmpty ( ) ) {
sql . append ( " and sapresult = '" ) . append ( sapresult ) . append ( "'" ) ;
}
String projectno = getCombText ( tx_projectName ) ;
if ( ! projectno . isEmpty ( ) ) {
sql . append ( " and projectno = '" ) . append ( projectno ) . append ( "'" ) ;
}
ObjectProperty < LocalDateTime > dateTimeProperty = dateTimeStart . dateTimeProperty ( ) ;
if ( dateTimeProperty ! = null & & dateTimeProperty . get ( ) ! = null ) {
String startTime = dateTimeProperty . get ( ) . format ( DateTimeFormatter . ofPattern ( "yyyy-MM-dd HH:mm:ss" ) ) ;
sql . append ( " and starttime >= to_date('" ) . append ( startTime ) . append ( "','yyyy-mm-ddhh24:mi:ss') " ) ; //to_date(?,'yyyy-mm-ddhh24:mi:ss')
System . out . println ( "startTime==>" + startTime ) ;
}
ObjectProperty < LocalDateTime > dateTimeProperty2 = dateTimeEnd . dateTimeProperty ( ) ;
if ( dateTimeProperty2 ! = null & & dateTimeProperty2 . get ( ) ! = null ) {
String endTime = dateTimeProperty2 . get ( ) . format ( DateTimeFormatter . ofPattern ( "yyyy-MM-dd HH:mm:ss" ) ) ;
sql . append ( " and starttime <= to_date('" ) . append ( endTime ) . append ( "','yyyy-mm-ddhh24:mi:ss') " ) ; //to_date(?,'yyyy-mm-ddhh24:mi:ss')
System . out . println ( "endTime==>" + endTime ) ;
}
//拼接DETAILS表的SQL信息
StringBuilder detailSql = new StringBuilder ( "" ) ;
String batchNum = getCombText ( tx_batchNum ) ;
if ( ! batchNum . isEmpty ( ) ) {
detailSql . append ( " and batchnumber = '" ) . append ( batchNum ) . append ( "'" ) ;
}
String wbsnoDetail = getCombText ( tx_wbsMx ) ;
if ( ! wbsnoDetail . isEmpty ( ) ) {
detailSql . append ( " and wbsno = '" ) . append ( wbsnoDetail ) . append ( "'" ) ;
}
String message = getCombText ( tx_sapReturn ) ;
if ( ! message . isEmpty ( ) ) {
detailSql . append ( " and message like '%" ) . append ( message ) . append ( "%'" ) ;
}
String productmaterialno = getCombText ( tx_pcode ) ;
if ( ! productmaterialno . isEmpty ( ) ) {
detailSql . append ( " and productmaterialno like '%" ) . append ( productmaterialno ) . append ( "%'" ) ;
}
String status = getCombText ( tx_sapStatus ) ;
if ( ! status . isEmpty ( ) ) {
if ( status . equals ( "成功" ) ) {
status = "S" ;
} else {
status = "E" ;
}
detailSql . append ( " and status = '" ) . append ( status ) . append ( "'" ) ;
}
String [ ] prefs = ChintPreferenceUtil . getPreferences ( "database_tc" , session ) ;
SqlUtil . getTCDataConnection ( prefs ) ;
try {
sql . append ( " order by \"CODE\" asc " ) ;
System . out . println ( "read==>" + sql ) ;
ResultSet read = SqlUtil . read ( sql . toString ( ) ) ;
int i = 1 ;
List < SumTableBean > beanList = null ;
while ( read . next ( ) ) {
//分页 20 查询结果放入表格
System . out . println ( "read==>" + read . getInt ( 4 ) ) ;
SumTableBean sumBean = new SumTableBean ( new SimpleIntegerProperty ( i ) ,
new SimpleStringProperty ( String . valueOf ( read . getInt ( 1 ) ) ) , new SimpleStringProperty ( read . getString ( 2 ) ) ,
new SimpleStringProperty ( read . getString ( 3 ) ) , new SimpleStringProperty ( String . valueOf ( read . getInt ( 4 ) ) ) ,
new SimpleStringProperty ( read . getString ( 5 ) ) , new SimpleStringProperty ( read . getString ( 6 ) ) ,
new SimpleStringProperty ( read . getString ( 7 ) ) , bt_errMsg . isSelected ( ) , detailSql , prefs , code ,
read . getString ( 8 ) ) ;
if ( i % 20 = = 1 ) {
beanList = new ArrayList < SumTableBean > ( ) ;
tableBeans . add ( beanList ) ;
}
beanList . add ( sumBean ) ;
i = i + 1 ;
}
if ( tableBeans . size ( ) = = 0 ) {
MessageBox . post ( "未查询到传递记录." , "提示" , 2 ) ;
beanList = new ArrayList < SumTableBean > ( ) ;
tableBeans . add ( beanList ) ;
}
pageNum = 0 ;
System . out . println ( "beanList==>" + beanList . size ( ) ) ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( 0 ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
} finally {
SqlUtil . freeAll ( ) ;
}
void searchAction ( ActionEvent event ) {
// 拼接查询语句
StringBuilder sql = new StringBuilder (
"select \"CODE\",\"USER\",STARTTIME,\"NUMBER\",SAPRESULT,DATASTATUS,PLMRESULT,LOGURL from CHINT_BOM_TO_SAP_SUM where 1=1" ) ;
String code = getCombText ( tx_bh ) ;
if ( ! code . isEmpty ( ) ) {
sql . append ( " and \"CODE\" = '" ) . append ( code ) . append ( "'" ) ;
}
String factory = getCombText ( cb_factory ) ;
if ( ! factory . isEmpty ( ) ) {
sql . append ( " and factory = '" ) . append ( factory ) . append ( "'" ) ;
}
String wbsno = getCombText ( tx_wbs ) ;
if ( ! wbsno . isEmpty ( ) ) {
sql . append ( " and wbsno = '" ) . append ( wbsno ) . append ( "'" ) ;
}
String datastatus = getCombText ( cb_status ) ;
if ( ! datastatus . isEmpty ( ) ) {
sql . append ( " and datastatus = '" ) . append ( datastatus ) . append ( "'" ) ;
}
String user = getCombText ( tx_user ) ;
System . out . println ( "user==>" + user ) ;
if ( ! user . isEmpty ( ) ) {
sql . append ( " and \"USER\" = '" ) . append ( user ) . append ( "'" ) ;
}
String sapresult = getCombText ( cb_sapState ) ;
if ( ! sapresult . isEmpty ( ) ) {
sql . append ( " and sapresult = '" ) . append ( sapresult ) . append ( "'" ) ;
}
String projectno = getCombText ( tx_projectName ) ;
if ( ! projectno . isEmpty ( ) ) {
sql . append ( " and projectno = '" ) . append ( projectno ) . append ( "'" ) ;
}
if ( bt_errTask . isSelected ( ) ) {
sql . append ( " and SAPRESULT = '部分失败' " ) ;
}
ObjectProperty < LocalDateTime > dateTimeProperty = dateTimeStart . dateTimeProperty ( ) ;
if ( dateTimeProperty ! = null & & dateTimeProperty . get ( ) ! = null ) {
String startTime = dateTimeProperty . get ( ) . format ( DateTimeFormatter . ofPattern ( "yyyy-MM-dd HH:mm:ss" ) ) ;
sql . append ( " and starttime >= to_date('" ) . append ( startTime ) . append ( "','yyyy-mm-ddhh24:mi:ss') " ) ; // to_date(?,'yyyy-mm-ddhh24:mi:ss')
System . out . println ( "startTime==>" + startTime ) ;
}
ObjectProperty < LocalDateTime > dateTimeProperty2 = dateTimeEnd . dateTimeProperty ( ) ;
if ( dateTimeProperty2 ! = null & & dateTimeProperty2 . get ( ) ! = null ) {
String endTime = dateTimeProperty2 . get ( ) . format ( DateTimeFormatter . ofPattern ( "yyyy-MM-dd HH:mm:ss" ) ) ;
sql . append ( " and starttime <= to_date('" ) . append ( endTime ) . append ( "','yyyy-mm-ddhh24:mi:ss') " ) ; // to_date(?,'yyyy-mm-ddhh24:mi:ss')
System . out . println ( "endTime==>" + endTime ) ;
}
// 拼接DETAILS表的SQL信息
StringBuilder detailSql = new StringBuilder ( "" ) ;
String batchNum = getCombText ( tx_batchNum ) ;
if ( ! batchNum . isEmpty ( ) ) {
detailSql . append ( " and batchnumber = '" ) . append ( batchNum ) . append ( "'" ) ;
}
String wbsnoDetail = getCombText ( tx_wbsMx ) ;
if ( ! wbsnoDetail . isEmpty ( ) ) {
detailSql . append ( " and wbsno = '" ) . append ( wbsnoDetail ) . append ( "'" ) ;
}
String message = getCombText ( tx_sapReturn ) ;
if ( ! message . isEmpty ( ) ) {
detailSql . append ( " and message like '%" ) . append ( message ) . append ( "%'" ) ;
}
String productmaterialno = getCombText ( tx_pcode ) ;
if ( ! productmaterialno . isEmpty ( ) ) {
detailSql . append ( " and productmaterialno like '%" ) . append ( productmaterialno ) . append ( "%'" ) ;
}
String status = getCombText ( tx_sapStatus ) ;
if ( ! status . isEmpty ( ) ) {
if ( status . equals ( "成功" ) ) {
status = "S" ;
} else {
status = "E" ;
}
detailSql . append ( " and status = '" ) . append ( status ) . append ( "'" ) ;
}
String [ ] prefs = ChintPreferenceUtil . getPreferences ( "database_tc" , session ) ;
SqlUtil . getTCDataConnection ( prefs ) ;
try {
tableBeans . clear ( ) ;
sql . append ( " order by \"CODE\" asc " ) ;
System . out . println ( "read==>" + sql ) ;
ResultSet read = SqlUtil . read ( sql . toString ( ) ) ;
int i = 1 ;
List < SumTableBean > beanList = null ;
while ( read . next ( ) ) {
// 分页 20 查询结果放入表格
System . out . println ( "read==>" + read . getInt ( 4 ) ) ;
SumTableBean sumBean = new SumTableBean ( new SimpleIntegerProperty ( i ) ,
new SimpleStringProperty ( String . valueOf ( read . getInt ( 1 ) ) ) ,
new SimpleStringProperty ( read . getString ( 2 ) ) , new SimpleStringProperty ( read . getString ( 3 ) ) ,
new SimpleStringProperty ( String . valueOf ( read . getInt ( 4 ) ) ) ,
new SimpleStringProperty ( read . getString ( 5 ) ) , new SimpleStringProperty ( read . getString ( 6 ) ) ,
new SimpleStringProperty ( read . getString ( 7 ) ) , bt_errMsg . isSelected ( ) , detailSql , prefs , code ,
read . getString ( 8 ) ) ;
if ( i % 20 = = 1 ) {
beanList = new ArrayList < SumTableBean > ( ) ;
tableBeans . add ( beanList ) ;
}
beanList . add ( sumBean ) ;
i = i + 1 ;
}
if ( tableBeans . size ( ) = = 0 ) {
MessageBox . post ( "未查询到传递记录." , "提示" , 2 ) ;
beanList = new ArrayList < SumTableBean > ( ) ;
tableBeans . add ( beanList ) ;
}
pageNum = 0 ;
System . out . println ( "beanList==>" + beanList . size ( ) ) ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( 0 ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
} finally {
SqlUtil . freeAll ( ) ;
}
// if(bt_errMsg)
}
private SapResultFrame frame ;
private DateTimePicker dateTimeStart ;
private DateTimePicker dateTimeEnd ;
protected AbstractAIFApplication app ;
private TCSession session ;
}
@FXML
private ScrollPane scrollPane ;
@FXML
private BorderPane resultBorder ;
@FXML
private BorderPane topBorder ;
private SapResultFrame frame ;
private DateTimePicker dateTimeStart ;
private DateTimePicker dateTimeEnd ;
protected AbstractAIFApplication app ;
private TCSession session ;
@Override
public void initData ( KFXPanel paramKFXPanel ) throws Exception {
// TODO Auto-generated method stub
frame = ( SapResultFrame ) paramKFXPanel . getParentDialog ( ) ;
addWindListener ( frame ) ;
frame . setExtendedState ( JFrame . MAXIMIZED_BOTH ) ;
System . out . println ( "frame==>" + frame ) ;
this . app = AIFUtility . getCurrentApplication ( ) ;
this . session = ( TCSession ) app . getSession ( ) ;
dateTimeStart = new DateTimePicker ( ) ;
@ -288,7 +318,7 @@ public class SearchSapController extends KFXPanelController {
gridPane . add ( dateTimeEnd , 1 , 4 ) ;
initCombox ( ) ;
// 表格列绑定bean对象
// 表格列绑定bean对象
tc_xh . setSortable ( false ) ;
tc_zrws . setSortable ( false ) ;
tc_rwh . setSortable ( false ) ;
@ -299,27 +329,65 @@ public class SearchSapController extends KFXPanelController {
tc_sapState . setSortable ( false ) ;
tc_plm . setSortable ( false ) ;
tc_result . setSortable ( false ) ;
// 列绑定bean对象
tc_xh . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "num" ) ) ;
tc_zrws . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "cTaskNum" ) ) ; // cTaskNum
tc_rwh . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "taskNo" ) ) ;
tc_fqsj . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "startTime" ) ) ;
tc_fqr . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "user" ) ) ;
// 列绑定bean对象
tc_xh . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "num" ) ) ;
tc_zrws . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "cTaskNum" ) ) ; // cTaskNum
tc_rwh . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "taskNo" ) ) ;
tc_fqsj . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "startTime" ) ) ;
tc_fqr . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "user" ) ) ;
tc_status . setCellValueFactory ( new PropertyValueFactory < > ( "dataStatus" ) ) ;
tc_log . setCellValueFactory ( new PropertyValueFactory < SumTableBean , Object > ( "logDownload" ) ) ;
tc_sapState . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "sapResult" ) ) ;
tc_plm . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "plmResult" ) ) ;
tc_result . setCellValueFactory ( new PropertyValueFactory < SumTableBean , Object > ( "details" ) ) ;
tc_log . setCellValueFactory ( new PropertyValueFactory < SumTableBean , Object > ( "logDownload" ) ) ;
tc_sapState . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "sapResult" ) ) ;
tc_plm . setCellValueFactory ( new PropertyValueFactory < SumTableBean , String > ( "plmResult" ) ) ;
tc_result . setCellValueFactory ( new PropertyValueFactory < SumTableBean , Object > ( "details" ) ) ;
tc_xh . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.05 ) ) ;
tc_zrws . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.08 ) ) ;
tc_rwh . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.12 ) ) ;
tc_fqsj . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tc_fqr . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tc_status . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.15 ) ) ;
tc_log . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tc_sapState . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tc_plm . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tc_result . prefWidthProperty ( ) . bind ( tableView . widthProperty ( ) . multiply ( 0.1 ) ) ;
tp_result . setCollapsible ( false ) ;
mxtjPane . setCollapsible ( false ) ;
tp_sxtj . setCollapsible ( false ) ;
rwtjPane . setCollapsible ( false ) ;
tc_sapState . setCellFactory ( column - > {
return new TableCell < SumTableBean , String > ( ) {
@Override
protected void updateItem ( String item , boolean empty ) {
super . updateItem ( item , empty ) ;
if ( item ! = null & & ! empty & & ! item . isEmpty ( ) ) {
// double contrastPrice = Double.parseDouble(item);
if ( item . equals ( "未返回" ) ) {
// 不做格式
setStyle ( "-fx-background-color: #ffff99;" ) ;
} else if ( item . equals ( "部分失败" ) ) {
setStyle ( "-fx-background-color: #FF6600;" ) ;
} else {
setStyle ( "-fx-background-color: #A9D08E;" ) ;
}
setText ( getItem ( ) ) ;
setAlignment ( Pos . CENTER ) ; // 设置单元格内容居中对齐
} else {
setStyle ( "" ) ;
setText ( empty ? null : getItem ( ) ) ;
setAlignment ( Pos . CENTER ) ; // 设置单元格内容居中对齐
}
}
} ;
} ) ;
// tableView.setMaxHeight(pageNum);
}
//初始化下拉框内容
// 初始化下拉框内容
private void initCombox ( ) {
// TODO Auto-generated method stub
List < String > factoryList = new ArrayList < String > ( ) ;
@ -343,42 +411,116 @@ public class SearchSapController extends KFXPanelController {
tx_sapStatus . getItems ( ) . addAll ( sapStatusList ) ;
}
//跳转首页
@FXML
void firstBtnAction ( ActionEvent event ) {
pageNum = 0 ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( 0 ) ) ;
// 跳转首页
@FXML
void firstBtnAction ( ActionEvent event ) {
pageNum = 0 ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( 0 ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
}
//跳转上一页
@FXML
void lastBtnAction ( ActionEvent event ) {
if ( pageNum > 0 ) {
pageNum = pageNum - 1 ;
}
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
}
// 跳转上一页
@FXML
void lastBtnAction ( ActionEvent event ) {
if ( pageNum > 0 ) {
pageNum = pageNum - 1 ;
}
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
}
//跳转下一页
@FXML
void nextBtnAction ( ActionEvent event ) {
if ( pageNum < tableBeans . size ( ) - 1 ) {
pageNum = pageNum + 1 ;
}
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
}
// 跳转下一页
@FXML
void nextBtnAction ( ActionEvent event ) {
if ( pageNum < tableBeans . size ( ) - 1 ) {
pageNum = pageNum + 1 ;
}
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
}
//跳转尾页
@FXML
void tailBtnAction ( ActionEvent event ) {
pageNum = tableBeans . size ( ) - 1 ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
}
// 跳转尾页
@FXML
void tailBtnAction ( ActionEvent event ) {
pageNum = tableBeans . size ( ) - 1 ;
ObservableList < SumTableBean > data = FXCollections . observableArrayList ( tableBeans . get ( pageNum ) ) ;
tableView . getItems ( ) . clear ( ) ;
tableView . setItems ( data ) ;
}
}
/ * *
* @param frame
* @function 添 加 页 面 的 监 听
* /
private void addWindListener ( SapResultFrame frame ) {
// TODO Auto-generated method stub
frame . addComponentListener ( new ComponentListener ( ) {
@Override
public void componentShown ( ComponentEvent e ) {
// TODO Auto-generated method stub
}
@Override
public void componentResized ( ComponentEvent e ) {
// TODO Auto-generated method stub
// System.out.println("==============");
Component component = e . getComponent ( ) ;
System . out . println ( "component==>" + component ) ;
double width = component . getSize ( ) . getWidth ( ) ;
// // double width = primaryStage.getWidth();
System . out . println ( "width==>" + width ) ;
scrollPane . setPrefWidth ( width * 0.98 ) ;
topBorder . setPrefWidth ( width * 0.98 ) ;
tp_sxtj . setPrefWidth ( width * 0.98 ) ;
resultBorder . setPrefWidth ( width * 0.98 ) ;
gridPane . setPrefWidth ( width * 0.98 ) ;
tableView . setPrefWidth ( width * 0.97 ) ;
// refTable.setPrefWidth(width * 0.97);
}
@Override
public void componentMoved ( ComponentEvent e ) {
// TODO Auto-generated method stub
}
@Override
public void componentHidden ( ComponentEvent e ) {
// TODO Auto-generated method stub
}
} ) ;
}
@FXML
void resetClick ( ActionEvent event ) {
tx_bh . setText ( "" ) ;
cb_sapState . getSelectionModel ( ) . clearSelection ( ) ;
cb_factory . getSelectionModel ( ) . clearSelection ( ) ;
tx_user . setText ( "" ) ;
tx_wbs . setText ( "" ) ;
tx_projectName . setText ( "" ) ;
tx_pcode . setText ( "" ) ;
tx_wbsMx . setText ( "" ) ;
tx_batchNum . setText ( "" ) ;
tx_sapReturn . setText ( "" ) ;
cb_status . getSelectionModel ( ) . clearSelection ( ) ;
tx_sapStatus . getSelectionModel ( ) . clearSelection ( ) ;
bt_errTask . setSelected ( false ) ;
bt_errMsg . setSelected ( false ) ;
dateTimeStart . clearTimeProperty ( ) ;
dateTimeEnd . clearTimeProperty ( ) ;
}
@FXML
void closeClick ( ActionEvent event ) {
frame . dispose ( ) ;
}
}