feat(采购订单): 添加合同条目关联及税率绑定功能

新增采购订单条目与合同条目的关联字段,实现税率和税率锁定的UI绑定
优化采购订单同步逻辑,支持从U8系统获取更多字段信息
调整界面文本显示,修复部分字段绑定问题
This commit is contained in:
2025-10-12 12:49:18 +08:00
parent ddd9dad945
commit 86e18632aa
17 changed files with 170 additions and 58 deletions

View File

@@ -37,7 +37,7 @@
<TableColumn fx:id="taxAmountColumn" style="-fx-alignment: center-right;"
prefWidth="130.0" text="含税小计"/>
<TableColumn fx:id="refIdColumn" editable="false" prefWidth="75.0" text="RefId"/>
<TableColumn fx:id="codeColumn" editable="false" prefWidth="75.0" text="Code"/>
<TableColumn fx:id="codeColumn" editable="false" prefWidth="75.0" text="条目编号"/>
<TableColumn fx:id="startDateColumn" prefWidth="130.0" text="起始日期"/>
<TableColumn fx:id="endDateColumn" prefWidth="130.0" text="截止日期"/>
<TableColumn fx:id="creatorColumn" prefWidth="75.0" text="创建人"/>

View File

@@ -2,6 +2,7 @@
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.CheckBox?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.ScrollPane?>
<?import javafx.scene.control.Tab?>
@@ -19,8 +20,7 @@
<?import javafx.scene.paint.Color?>
<?import javafx.scene.text.Font?>
<BorderPane prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1"
fx:controller="com.ecep.contract.controller.vendor.purchase.order.PurchaseOrderWindowController">
<BorderPane prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.ecep.contract.controller.vendor.purchase.order.PurchaseOrderWindowController">
<center>
<TabPane fx:id="tabPane" tabClosingPolicy="UNAVAILABLE" tabMaxWidth="100.0" tabMinWidth="40.0">
<tabs>
@@ -44,22 +44,25 @@
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
<RowConstraints fillHeight="false" maxHeight="1.7976931348623157E308" minHeight="30.0" prefHeight="80.0" vgrow="NEVER" />
<RowConstraints fillHeight="false" maxHeight="1.7976931348623157E308" minHeight="30.0" prefHeight="42.0" vgrow="NEVER" />
</rowConstraints>
<children>
<Label text="订单号#" />
<Label text="供应商代码" GridPane.columnIndex="2" GridPane.rowIndex="0" />
<Label text="采购订单编号" GridPane.rowIndex="1" />
<TextField fx:id="refIdField" GridPane.columnIndex="1" />
<TextField fx:id="vendorCodeField" GridPane.columnIndex="3" GridPane.rowIndex="0" />
<TextField fx:id="codeField" GridPane.columnIndex="1" GridPane.rowIndex="1" />
<Label layoutX="20.0" layoutY="28.0" text="备注" GridPane.rowIndex="6" />
<TextArea fx:id="descriptionField" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="6" />
<HBox alignment="CENTER_RIGHT" spacing="5.0" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="7">
<Label layoutX="20.0" layoutY="28.0" text="备注" GridPane.rowIndex="7" />
<TextArea fx:id="descriptionField" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="7" />
<HBox alignment="CENTER_RIGHT" spacing="5.0" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="8">
<children>
<Button fx:id="saveBtn" disable="true" mnemonicParsing="false" text="保存" />
</children>
</HBox>
<Label fx:id="versionLabel" text="\@Version" GridPane.rowIndex="7" />
<Label fx:id="versionLabel" text="\@Version" GridPane.rowIndex="8" />
<Label text="制单人" GridPane.rowIndex="2" />
<Label text="制单日期" GridPane.columnIndex="2" GridPane.rowIndex="2" />
<Label text="审核人" GridPane.rowIndex="3" />
@@ -76,8 +79,12 @@
<TextField fx:id="modifierDateField" GridPane.columnIndex="3" GridPane.rowIndex="4" />
<TextField fx:id="closerField" GridPane.columnIndex="1" GridPane.rowIndex="5" />
<TextField fx:id="closerDateField" GridPane.columnIndex="3" GridPane.rowIndex="5" />
<Label text="业务员" GridPane.columnIndex="2" GridPane.rowIndex="1" />
<TextField fx:id="employeeField" GridPane.columnIndex="3" GridPane.rowIndex="1" />
<Label text="业务员" GridPane.columnIndex="2" GridPane.rowIndex="1" />
<TextField fx:id="employeeField" GridPane.columnIndex="3" GridPane.rowIndex="1" />
<Label text="税率" GridPane.rowIndex="6" />
<TextField fx:id="taxRateField" GridPane.columnIndex="1" GridPane.rowIndex="6" />
<Label text="税率锁定" GridPane.columnIndex="2" GridPane.rowIndex="6" />
<javafx.scene.control.CheckBox fx:id="taxRateLockedField" GridPane.columnIndex="3" GridPane.rowIndex="6" />
</children>
<VBox.margin>
<Insets bottom="5.0" left="5.0" right="5.0" top="5.0" />