use of com.kendy.entity.ShangmaDetailInfo in project financial by greatkendy123.
the class ConsUtil method recovery_SM_Detail_Map.
// 撤销时当局恢复上码表的个人详情
public static void recovery_SM_Detail_Map() {
new Thread(new Runnable() {
@Override
public void run() {
Map<String, List<ShangmaDetailInfo>> map = new HashMap<>();
List<ShangmaDetailInfo> list = null;
List<ShangmaDetailInfo> srcList = null;
ShangmaDetailInfo info = null;
for (Map.Entry<String, List<ShangmaDetailInfo>> entry : DataConstans.SM_Detail_Map_Locked.entrySet()) {
srcList = entry.getValue();
if (srcList == null || srcList.size() == 0) {
list = new ArrayList<ShangmaDetailInfo>();
map.put(entry.getKey(), list);
} else {
list = new ArrayList<ShangmaDetailInfo>();
for (ShangmaDetailInfo detail : srcList) {
info = new ShangmaDetailInfo();
info.setShangmaDetailName(detail.getShangmaDetailName());
info.setShangmaJu(detail.getShangmaJu());
info.setShangmaPlayerId(detail.getShangmaPlayerId());
info.setShangmaShishou(detail.getShangmaShishou());
info.setShangmaSM(detail.getShangmaSM());
info.setShangmaPreSM(detail.getShangmaPreSM());
info.setShangmaHasPayed(detail.getShangmaHasPayed());
list.add(info);
}
map.put(entry.getKey(), list);
}
}
DataConstans.SM_Detail_Map = null;
DataConstans.SM_Detail_Map = map;
}
}).start();
}
use of com.kendy.entity.ShangmaDetailInfo in project financial by greatkendy123.
the class MyController method initialize.
/**
* 节点加载完后需要进行的一些初始化操作
* Initializes the controller class. This method is automatically called
* after the fxml file has been loaded.
*/
@SuppressWarnings("unchecked")
@Override
public void initialize(URL location, ResourceBundle resources) {
table_Profit = this.tableProfit;
// 第一次打开主窗口时设置当前俱乐部ID值
String clubIdValue = PropertiesUtil.readProperty("clubId");
currentClubId = lable_currentClubId;
if (clubIdValue != null)
lable_currentClubId.setText(clubIdValue);
// 第一次打开主窗口时显示所有股东
// //股东
String gudongs = PropertiesUtil.readProperty("gudong");
DataConstans.gudongList = new ArrayList<>();
if (!StringUtil.isBlank(gudongs)) {
for (String gudong : gudongs.split(",")) {
DataConstans.gudongList.add(gudong);
}
}
for (String gd : DataConstans.gudongList) gudongListView.getItems().add(gd);
// 模拟初始化第一个tableView
// kendy:绑定数据域
// 支付按钮
pay.setCellFactory(cellFactory);
// 绑定玩家信息表
bindCellValue(tuan, wanjiaId, wanjia, jifen, shishou, baoxian, chuHuishui, baohui, shuihouxian, heLirun, shouHuishui);
jifen.setCellFactory(getColorCellFactory(new TotalInfo()));
shishou.setCellFactory(getColorCellFactory(new TotalInfo()));
baoxian.setCellFactory(getColorCellFactory(new TotalInfo()));
shuihouxian.setCellFactory(getColorCellFactory(new TotalInfo()));
chuHuishui.setCellFactory(getColorCellFactory(new TotalInfo()));
// 绑定牌局表
bindCellValue(paiju, wanjiaName, zhangji, yicunJifen, heji);
// 支付按钮:单独出来
pay.setCellFactory(cellFactory);
pay.setStyle("-fx-alignment: CENTER;");
// 复制按钮:单独出来
copy.setCellFactory(cellFactoryCopy);
copy.setStyle("-fx-alignment: CENTER;");
zhangji.setCellFactory(getColorCellFactory(new WanjiaInfo()));
yicunJifen.setCellFactory(getColorCellFactory(new WanjiaInfo()));
heji.setCellFactory(getColorCellFactory(new WanjiaInfo()));
// 绑定实时金额表
tableCurrentMoneyInfo.setEditable(true);
bindCellValue(cmSuperIdSum, mingzi, shishiJine, cmiEdu);
cmSuperIdSum.setStyle("-fx-alignment: CENTER;-fx-font-weight: bold;");
shishiJine.setCellFactory(TextFieldTableCell.forTableColumn());
// shishiJine.setCellFactory(redAndEditCellFactory);
shishiJine.setOnEditCommit(new EventHandler<CellEditEvent<CurrentMoneyInfo, String>>() {
@Override
public void handle(CellEditEvent<CurrentMoneyInfo, String> t) {
String oldValue = t.getOldValue();
// 修改原值
CurrentMoneyInfo cmInfo = (CurrentMoneyInfo) t.getTableView().getItems().get(t.getTablePosition().getRow());
if (cmInfo != null && !StringUtil.isBlank(cmInfo.getMingzi())) {
// 更新到已存积分
boolean isChangedOK = MoneyService.changeYicunJifen(tablePaiju, cmInfo.getMingzi(), t.getNewValue());
if (isChangedOK) {
cmInfo.setShishiJine(t.getNewValue());
} else {
cmInfo.setShishiJine(t.getOldValue());
String ss = t.getTableView().getItems().get(t.getTablePosition().getRow()).getShishiJine();
tableCurrentMoneyInfo.refresh();
}
// 最后刷新实时金额表
MoneyService.flush_SSJE_table();
} else if (cmInfo != null) {
cmInfo.setShishiJine(null);
ShowUtil.show("空行不能输入", 1);
tableCurrentMoneyInfo.refresh();
}
}
});
// 绑定资金表
tableZijin.setEditable(true);
bindCellValue(zijinType, zijinAccount);
// zijinAccount.setCellFactory(TextFieldTableCell.forTableColumn());
zijinType.setCellFactory(zijinCellFactory);
zijinAccount.setCellFactory(getColorCellFactory(new ZijinInfo()));
// 绑定利润表
bindCellValue(profitType, profitAccount);
profitAccount.setCellFactory(getColorCellFactory(new ProfitInfo()));
// 绑定实时开销表
bindCellValue(kaixiaoType, kaixiaoMoney);
kaixiaoMoney.setCellFactory(getColorCellFactory(new KaixiaoInfo()));
// 绑定实时当局表
bindCellValue(type, money);
money.setCellFactory(getColorCellFactory(new DangjuInfo()));
// 绑定交收表
bindCellValue(jiaoshouType, jiaoshouMoney);
jiaoshouMoney.setCellFactory(getColorCellFactory(new JiaoshouInfo()));
// 绑定平帐表
bindCellValue(pingzhangType, pingzhangMoney);
pingzhangMoney.setCellFactory(getColorCellFactory(new PingzhangInfo()));
// 绑定团队表
bindCellValue(teamID, teamZJ, teamHS, teamBS, teamSum);
teamJiesuan.setCellFactory(cellFactoryJiesuan);
teamJiesuan.setStyle("-fx-alignment: CENTER;");
teamZJ.setCellFactory(getColorCellFactory(new TeamInfo()));
teamBS.setCellFactory(getColorCellFactory(new TeamInfo()));
teamHS.setCellFactory(getColorCellFactory(new TeamInfo()));
teamSum.setCellFactory(getColorCellFactory(new TeamInfo()));
// 绑定代理查询表(团队当天查询)
bindCellValue(proxyPlayerId, proxyPlayerName, proxyYSZJ, proxyZJ, proxyBaoxian, proxyHuishui, proxyHuiBao, proxyTableId);
proxyYSZJ.setCellFactory(getColorCellFactory(new ProxyTeamInfo()));
proxyZJ.setCellFactory(getColorCellFactory(new ProxyTeamInfo()));
proxyBaoxian.setCellFactory(getColorCellFactory(new ProxyTeamInfo()));
// 绑定代理查询中的合计表
bindCellValue(proxySumType, proxySum);
proxySum.setCellFactory(getColorCellFactory(new ProxySumInfo()));
// 绑定汇总信息表(当天每一局的团队汇总查询)
bindCellValue(zonghuiTabelId, zonghuiFuwufei, zonghuiBaoxian, zonghuiHuishui, zonghuiHuiBao);
zonghuiBaoxian.setCellFactory(getColorCellFactory(new ZonghuiInfo()));
zonghuiHuishui.setCellFactory(getColorCellFactory(new ZonghuiInfo()));
zonghuiHuiBao.setCellFactory(getColorCellFactory(new ZonghuiInfo()));
// 绑定汇总查询中的当天汇总表
bindCellValue(huizongType, huizongMoney);
huizongMoney.setCellFactory(getColorCellFactory(new DangtianHuizongInfo()));
// 绑定汇总查询中的开销表表
bindCellValue(zonghuiKaixiaoType, zonghuiKaixiaoMoney);
zonghuiKaixiaoMoney.setCellFactory(getColorCellFactory(new ZonghuiKaixiaoInfo()));
// 绑定会员查询中的会员当天战绩表
bindCellValue(memberJu, memberZJ);
memberZJ.setCellFactory(getColorCellFactory(new MemberZJInfo()));
// 绑定实时上码表
// ,shangmaShishou,shangmaJu
bindCellValue(shangmaLianheEdu, shangmaName, shangmaEdu, shangmaAvailableEdu, shangmaYCJF, shangmaYiSM, shangmaSumOfZJ, shangmaPlayerId);
tableShangma.setRowFactory(new Callback<TableView<ShangmaInfo>, TableRow<ShangmaInfo>>() {
@Override
public TableRow<ShangmaInfo> call(TableView<ShangmaInfo> param) {
return new TableRowControl(tableShangma);
}
});
// shangmaPlayerId.setCellFactory(shangmaLeftNameCellFactory);
// shangmaName.setCellFactory(shangmaLeftNameCellFactory);
// shangmaEdu.setCellFactory(shangmaLeftNameCellFactory);
// shangmaSumOfZJ.setCellFactory(shangmaLeftNameCellFactory);
// shangmaYiSM.setCellFactory(shangmaLeftNameCellFactory);
// shangmaYCJF.setCellFactory(shangmaLeftNameCellFactory);
shangmaLianheEdu.setCellFactory(getColorCellFactory(new ShangmaInfo()));
// red_NotEdit_CellFactory
shangmaAvailableEdu.setCellFactory(getColorCellFactory(new ShangmaInfo()));
shangmaYCJF.setCellFactory(getColorCellFactory(new ShangmaInfo()));
// 绑定外债信息表
bindCellValue(waizhaiType, waizhaiMoney);
waizhaiMoney.setCellFactory(getColorCellFactory(new WaizhaiInfo()));
// 绑定上码个人信息表
tableShangmaDetail.setEditable(true);
bindCellValue(shangmaDetailName, shangmaJu, shangmaSM, shangmaShishou);
shangmaDetailName.setCellFactory(ShangmaNameCellFactory);
shangmaJu.setCellFactory(ShangmaNameCellFactory);
shangmaSM.setCellFactory(ShangmaNameCellFactory);
shangmaShishou.setCellFactory(ShangmaNameCellFactory);
tableShangma.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {
@Override
public void changed(ObservableValue observable, Object oldValue, Object newValue) {
ShangmaInfo smInfo = (ShangmaInfo) newValue;
// 加载右边的个人详情
if (smInfo != null) {
String playerId = smInfo.getShangmaPlayerId();
if (!StringUtil.isBlank(playerId)) {
ShangmaService.loadSMDetailTable(playerId);
ShangmaService.loadSMNextDayTable(playerId);
}
} else
tableShangmaDetail.setItems(null);
}
});
// 绑定次日信息表
shangmaNextDayName.setCellValueFactory(new PropertyValueFactory<ShangmaDetailInfo, String>("shangmaDetailName"));
shangmaNextDayName.setCellFactory(ShangmaNameNextdayCellFactory);
shangmaNextDayName.setStyle("-fx-alignment: CENTER;");
shangmaNextDayJu.setCellValueFactory(new PropertyValueFactory<ShangmaDetailInfo, String>("shangmaJu"));
shangmaNextDayJu.setCellFactory(ShangmaNameNextdayCellFactory);
shangmaNextDayJu.setStyle("-fx-alignment: CENTER;");
shangmaNextDaySM.setCellValueFactory(new PropertyValueFactory<ShangmaDetailInfo, String>("shangmaSM"));
shangmaNextDaySM.setCellFactory(ShangmaNameNextdayCellFactory);
shangmaNextDaySM.setStyle("-fx-alignment: CENTER;");
// 绑定积查询表
bindCellValue(jfRank, jfPlayerName, jfValue);
// ////初始化实时金额表
MoneyService.iniitMoneyInfo(tableCurrentMoneyInfo);
// tableTotalInfo.setItems(tableTotalInfoList);
// tableKaixiao.setItems(FXCollections.observableArrayList(
// new KaixiaoInfo("测试列","12")
// ));
// //////////////////总汇表中的初始化
juTypeListView.getItems().add("合局");
LMLabel.setTextFill(Color.web("#CD3700"));
// 设置Label 的文本颜色。
indexLabel.setTextFill(Color.web("#0076a3"));
indexLabel.setFont(new Font("Arial", 30));
// //////////////////代理查询中的团队回水选择
TeamProxyService.initTeamProxy(tableProxyTeam, proxySumHBox, teamIDCombox, isZjManage, proxyDateLabel, tableProxySum, proxyHSRate, proxyHBRate, proxyFWF, hasTeamBaoxian);
// //////////////////代理查询中的团队回水选择
TeamProxyService.initTeamSelectAction(teamIDCombox, isZjManage, tableProxyTeam, proxySumHBox);
// //////////////////会员服务类
MemberService.initMemberQuery(memberListView, tableMemberZJ, memberDateStr, memberPlayerId, memberPlayerName, memberSumOfZJ, memberTotalZJ);
tabsAction();
// //////////////////实时上马系统
initShanagma();
// /////////////合并ID
CombineIDController.initCombineIdController(tableCurrentMoneyInfo);
// //////////积分查询
JifenService.initJifenService(jfTeamIDCombox);
// 是否启动测试模式
initAutoTestMode();
// 选择导入白名单的版本
initWhiteVersion();
try {
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("/com/kendy/dialog/LM_Tab_Fram.fxml").openStream());
// loader.setController(lmController);
lmController = loader.getController();
Tab tab1 = new Tab();
tab1.setText("联盟对账");
tab1.setClosable(false);
tab1.setContent(root);
tabs.getTabs().add(tab1);
} catch (IOException e) {
ErrorUtil.err("联盟tab加载失败", e);
}
try {
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("/com/kendy/dialog/Quota_Tab_Fram.fxml").openStream());
loader.setController(new QuotaController());
Tab quotaTab = new Tab();
quotaTab.setText("联盟配账");
quotaTab.setClosable(false);
quotaTab.setContent(root);
tabs.getTabs().add(quotaTab);
} catch (IOException e) {
ErrorUtil.err("联盟配账tab加载失败", e);
}
try {
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("/com/kendy/dialog/gudong_contribution.fxml").openStream());
loader.setController(new GDController());
Tab gdTab = new Tab();
gdTab.setText("股东贡献值");
gdTab.setClosable(false);
gdTab.setContent(root);
tabs.getTabs().add(gdTab);
} catch (IOException e) {
ErrorUtil.err("股东贡献值tab加载失败", e);
}
try {
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("/com/kendy/dialog/TG_toolaa.fxml").openStream());
Tab gdTab = new Tab();
gdTab.setText("托管工具");
gdTab.setClosable(false);
gdTab.setContent(root);
tabs.getTabs().add(gdTab);
tgController = (TGController) loader.getController();
} catch (IOException e) {
ErrorUtil.err("托管小工具tab加载失败", e);
}
try {
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("/com/kendy/dialog/SM_Auto.fxml").openStream());
Tab gdTab = new Tab();
gdTab.setText("自动上码配置");
gdTab.setClosable(false);
gdTab.setContent(root);
tabs.getTabs().add(gdTab);
smAutoController = (SMAutoController) loader.getController();
} catch (IOException e) {
ErrorUtil.err("托管小工具tab加载失败", e);
}
}
use of com.kendy.entity.ShangmaDetailInfo in project financial by greatkendy123.
the class ShangmaService method addNewRecord_nextday_HT.
/**
***************************************************新增次日上码*************************
*/
/**
* 新增玩家的次日数据
*
* @time 2018年2月5日
* @param table
* @param nextday
*/
public static void addNewRecord_nextday_HT(SMResultModel model, ShangmaNextday nextday) {
ShangmaInfo selectedSMInfo = model.getSelectedSMInfo();
String playerId = nextday.getPlayerId();
String playerName = nextday.getPlayerName();
String changci = nextday.getChangci();
String shangma = nextday.getShangma();
ShangmaDetailInfo shangmaDetailInfo = new ShangmaDetailInfo(playerId, playerName, changci, shangma);
// 先判断是否重复
ShangmaDetailInfo duplicateDetail = checkIfDuplicateInNextday_HT(playerId, changci);
if (duplicateDetail != null) {
log.info("新增时重复而续增次日上码值");
resetNextDayDetailInfo_HT(selectedSMInfo, duplicateDetail, shangma);
return;
}
// 以下为不重复项
// 1 保存到数据库
DBUtil.saveOrUpdate_SM_nextday(nextday);
// 2 保存到缓存
List<ShangmaDetailInfo> currentNextdayList = SM_NextDay_Map.getOrDefault(playerId, new ArrayList<>());
currentNextdayList.add(shangmaDetailInfo);
SM_NextDay_Map.put(playerId, currentNextdayList);
// 刷新左表对应记录
updateRowByPlayerId_HT(selectedSMInfo, shangma);
}
use of com.kendy.entity.ShangmaDetailInfo in project financial by greatkendy123.
the class ShangmaService method addNewShangma2DetailTable_HT.
/**
*******************************************新增当日上码*********************************
*/
/**
* 新增个人上码详情记录到详情表(后台)
* @param smInfo
* @param shangmaJu 第几局
* @param shangmaVal 上码值
*/
public static void addNewShangma2DetailTable_HT(SMResultModel model, String shangmaJu, String shangmaVal) {
// 判断是否重复
ShangmaInfo selectedSMInfo = model.getSelectedSMInfo();
String playerId = selectedSMInfo.getShangmaPlayerId();
String palyerName = selectedSMInfo.getShangmaName();
if (checkIfDuplicate(playerId, shangmaJu)) {
ShangmaDetailInfo detailInfo = updateDuplicateDetailInfo(playerId, shangmaJu);
if (detailInfo != null) {
log.info("新增时重复而续增今日上码值");
// 桌号重复时则续增值
addDuplicateSM_HT(selectedSMInfo, detailInfo, shangmaVal);
}
return;
}
// 以下不重复
// save SM_Detail_Map
List<ShangmaDetailInfo> SMDlist = DataConstans.SM_Detail_Map.getOrDefault(playerId, new ArrayList<>());
SMDlist.add(new ShangmaDetailInfo(palyerName, shangmaVal, "", playerId, shangmaJu, "", "否"));
DataConstans.SM_Detail_Map.put(playerId, SMDlist);
// 刷新左表对应记录
updateRowByPlayerId_HT(selectedSMInfo, shangmaVal);
}
use of com.kendy.entity.ShangmaDetailInfo in project financial by greatkendy123.
the class ShangmaService method updateShangDetailMap.
/**
* 导入战绩时更新上码系统的个人信息
*/
public static void updateShangDetailMap(TableView<WanjiaInfo> table) {
// final List<TeamHuishuiInfo> list = DataConstans.Dangju_Team_Huishui_List;
ObservableList<WanjiaInfo> obList = table.getItems();
Map<String, List<ShangmaDetailInfo>> detailMap = DataConstans.SM_Detail_Map;
List<ShangmaDetailInfo> detailList = null;
String playerId = "", preYSM, yiSM, tableId, ju;
if (obList != null && obList.size() > 0) {
// 遍历当局
for (WanjiaInfo info : obList) {
playerId = info.getWanjiaId();
detailList = detailMap.get(playerId);
if (detailList != null) {
// getRealTableId(info.getPaiju());//不是第X局了,而是X
tableId = info.getPaiju();
// 遍历个人信息
for (ShangmaDetailInfo sdi : detailList) {
ju = sdi.getShangmaJu();
if (!StringUtil.isBlank(ju) && ju.equals(tableId)) {
// 设置原先上码值,以及清空当局上码
preYSM = sdi.getShangmaSM();
sdi.setShangmaPreSM(preYSM);
sdi.setShangmaSM("");
// 设置实收
sdi.setShangmaShishou(info.getZhangji());
// add2017-09-24 加载主表
loadShangmaTable(DataConstans.membersMap.get(playerId).getTeamName(), tableSM);
// }
break;
}
}
detailMap.put(playerId, detailList);
}
}
}
}
Aggregations