feat: 更新项目版本至0.0.129-SNAPSHOT并修复多个问题
fix(ProjectIndustryService): 添加getStringConverter方法 fix(AbstContractRepairTasker): 初始化repository修复同步问题 fix(ProjectTabSkinBase): 处理saleTypeField空值情况 refactor(ProjectTypeService): 优化stringConverter初始化 feat(ProjectTypeStringConverter): 修改toString方法显示编码和名称 fix(CustomerCtx): 初始化repository修复客户更新问题 feat(ProjectCostWindowController): 根据版本控制审批标签显示 fix(DeliverySignMethodService): 添加saleType查询条件 feat: 添加DeliverySignMethodStringConverter fix(SalesOrderCtx): 使用getRepository修复查询问题 fix(VendorCtx): 初始化repository修复供应商更新问题 refactor(CompanyTabSkinContract): 优化员工表格单元格创建 feat(DeliverySignMethodService): 添加findByCode和findByName方法 refactor(AbstEntityController): 优化视图模型更新逻辑 style(project.fxml): 调整界面布局和字段显示
This commit is contained in:
@@ -6,12 +6,12 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>Contract-Manager</artifactId>
|
<artifactId>Contract-Manager</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>client</artifactId>
|
<artifactId>client</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.source>${java.version}</maven.compiler.source>
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>common</artifactId>
|
<artifactId>common</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
<exclusions>
|
<exclusions>
|
||||||
<exclusion>
|
<exclusion>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
|||||||
@@ -53,32 +53,25 @@ public abstract class AbstEntityController<T extends IdentityEntity, TV extends
|
|||||||
if (service instanceof QueryService<T, TV> queryService) {
|
if (service instanceof QueryService<T, TV> queryService) {
|
||||||
setStatus("读取...");
|
setStatus("读取...");
|
||||||
loadedFuture = queryService.asyncFindById(viewModel.getId().get());
|
loadedFuture = queryService.asyncFindById(viewModel.getId().get());
|
||||||
|
|
||||||
|
} else {
|
||||||
|
loadedFuture = CompletableFuture.supplyAsync(() -> {
|
||||||
|
return getViewModelService().findById(viewModel.getId().get());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
loadedFuture.thenAccept(entity -> {
|
loadedFuture.thenAccept(entity -> {
|
||||||
// fixed, bind change if new view model create
|
// fixed, bind change if new view model create
|
||||||
if (viewModel != null) {
|
if (viewModel != null) {
|
||||||
|
updateViewModel(entity);
|
||||||
viewModel.bindListener();
|
viewModel.bindListener();
|
||||||
}
|
}
|
||||||
setStatus();
|
setStatus();
|
||||||
// BaseViewModel.updateInFxApplicationThread(entity, viewModel);
|
|
||||||
});
|
});
|
||||||
loadedFuture.exceptionally(ex -> {
|
loadedFuture.exceptionally(ex -> {
|
||||||
handleException("载入失败,#" + viewModel.getId().get(), ex);
|
handleException("载入失败,#" + viewModel.getId().get(), ex);
|
||||||
return null;
|
return null;
|
||||||
});
|
});
|
||||||
} else {
|
|
||||||
loadedFuture = CompletableFuture.supplyAsync(() -> {
|
|
||||||
T entity = getViewModelService().findById(viewModel.getId().get());
|
|
||||||
if (entity == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
Platform.runLater(() -> {
|
|
||||||
setStatus();
|
|
||||||
viewModel.update(entity);
|
|
||||||
});
|
|
||||||
viewModel.bindListener();
|
|
||||||
return entity;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
registerTabSkins();
|
registerTabSkins();
|
||||||
if (saveBtn != null) {
|
if (saveBtn != null) {
|
||||||
@@ -89,6 +82,10 @@ public abstract class AbstEntityController<T extends IdentityEntity, TV extends
|
|||||||
installTabSkins();
|
installTabSkins();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void updateViewModel(T entity) {
|
||||||
|
BaseViewModel.updateInFxApplicationThread(entity, viewModel);
|
||||||
|
}
|
||||||
|
|
||||||
public T getEntity() {
|
public T getEntity() {
|
||||||
return getLoadedFuture().join();
|
return getLoadedFuture().join();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -107,6 +107,9 @@ public class ProjectTabSkinBase extends AbstProjectBasedTabSkin implements TabSk
|
|||||||
|
|
||||||
controller.saleTypeField.valueProperty().addListener((observable, oldValue, newValue) -> {
|
controller.saleTypeField.valueProperty().addListener((observable, oldValue, newValue) -> {
|
||||||
Predicate<DeliverySignMethodVo> predicate = p -> {
|
Predicate<DeliverySignMethodVo> predicate = p -> {
|
||||||
|
if (newValue == null) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
return p == null || Objects.equals(p.getSaleTypeId(), newValue.getId());
|
return p == null || Objects.equals(p.getSaleTypeId(), newValue.getId());
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -88,8 +88,23 @@ public class ProjectCostWindowController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void registerTabSkins() {
|
protected void registerTabSkins() {
|
||||||
|
|
||||||
registerTabSkin(baseInfoTab, tab -> new ProjectCostTabSkinBase(this));
|
registerTabSkin(baseInfoTab, tab -> new ProjectCostTabSkinBase(this));
|
||||||
registerTabSkin(itemTab, tab -> new ProjectCostTabSkinItems(this));
|
registerTabSkin(itemTab, tab -> new ProjectCostTabSkinItems(this));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void updateViewModel(ProjectCostVo entity) {
|
||||||
|
super.updateViewModel(entity);
|
||||||
|
var tabPane = baseInfoTab.getTabPane();
|
||||||
|
if (entity.getVersion() > 0) {
|
||||||
|
if (!tabPane.getTabs().contains(approvalTab)) {
|
||||||
|
tabPane.getTabs().add(approvalTab);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
tabPane.getTabs().remove(approvalTab);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -164,18 +164,18 @@ public class CompanyTabSkinContract
|
|||||||
contractTable_startDateColumn.setCellValueFactory(param -> param.getValue().getStartDate());
|
contractTable_startDateColumn.setCellValueFactory(param -> param.getValue().getStartDate());
|
||||||
contractTable_endDateColumn.setCellValueFactory(param -> param.getValue().getEndDate());
|
contractTable_endDateColumn.setCellValueFactory(param -> param.getValue().getEndDate());
|
||||||
contractTable_setupPersonColumn.setCellValueFactory(param -> param.getValue().getSetupPerson());
|
contractTable_setupPersonColumn.setCellValueFactory(param -> param.getValue().getSetupPerson());
|
||||||
contractTable_setupPersonColumn.setCellFactory(param -> new EmployeeTableCell<>(getEmployeeService()));
|
contractTable_setupPersonColumn.setCellFactory(EmployeeTableCell.forTableColumn(getEmployeeService()));
|
||||||
|
|
||||||
contractTable_setupDateColumn.setCellValueFactory(param -> param.getValue().getSetupDate());
|
contractTable_setupDateColumn.setCellValueFactory(param -> param.getValue().getSetupDate());
|
||||||
// contractTable_setupDateColumn.setSortable(true);
|
// contractTable_setupDateColumn.setSortable(true);
|
||||||
// contractTable_setupDateColumn.setSortType(TableColumn.SortType.DESCENDING);
|
// contractTable_setupDateColumn.setSortType(TableColumn.SortType.DESCENDING);
|
||||||
contractTable_inurePersonColumn.setCellValueFactory(param -> param.getValue().getInurePerson());
|
contractTable_inurePersonColumn.setCellValueFactory(param -> param.getValue().getInurePerson());
|
||||||
contractTable_inurePersonColumn.setCellFactory(param -> new EmployeeTableCell<>(getEmployeeService()));
|
contractTable_inurePersonColumn.setCellFactory(EmployeeTableCell.forTableColumn(getEmployeeService()));
|
||||||
|
|
||||||
contractTable_inureDateColumn.setCellValueFactory(param -> param.getValue().getInureDate());
|
contractTable_inureDateColumn.setCellValueFactory(param -> param.getValue().getInureDate());
|
||||||
|
|
||||||
contractTable_varyPersonColumn.setCellValueFactory(param -> param.getValue().getVaryPerson());
|
contractTable_varyPersonColumn.setCellValueFactory(param -> param.getValue().getVaryPerson());
|
||||||
contractTable_varyPersonColumn.setCellFactory(param -> new EmployeeTableCell<>(getEmployeeService()));
|
contractTable_varyPersonColumn.setCellFactory(EmployeeTableCell.forTableColumn(getEmployeeService()));
|
||||||
|
|
||||||
contractTable_varyDateColumn.setCellValueFactory(param -> param.getValue().getVaryDate());
|
contractTable_varyDateColumn.setCellValueFactory(param -> param.getValue().getVaryDate());
|
||||||
contractTable_createdColumn.setCellValueFactory(param -> param.getValue().getCreated());
|
contractTable_createdColumn.setCellValueFactory(param -> param.getValue().getCreated());
|
||||||
|
|||||||
@@ -0,0 +1,47 @@
|
|||||||
|
package com.ecep.contract.converter;
|
||||||
|
|
||||||
|
import com.ecep.contract.service.DeliverySignMethodService;
|
||||||
|
import com.ecep.contract.vo.DeliverySignMethodVo;
|
||||||
|
import javafx.util.StringConverter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DeliverySignMethodVo的StringConverter实现,用于JavaFX控件中的显示和转换
|
||||||
|
*/
|
||||||
|
public class DeliverySignMethodStringConverter extends StringConverter<DeliverySignMethodVo> {
|
||||||
|
private final DeliverySignMethodService service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 构造函数
|
||||||
|
*
|
||||||
|
* @param service DeliverySignMethodService实例
|
||||||
|
*/
|
||||||
|
public DeliverySignMethodStringConverter(DeliverySignMethodService service) {
|
||||||
|
this.service = service;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将DeliverySignMethodVo对象转换为字符串
|
||||||
|
*
|
||||||
|
* @param method DeliverySignMethodVo对象
|
||||||
|
* @return 转换后的字符串
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String toString(DeliverySignMethodVo method) {
|
||||||
|
return method == null ? "" : method.getCode() + " " + method.getName();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将字符串转换为DeliverySignMethodVo对象
|
||||||
|
*
|
||||||
|
* @param string 字符串
|
||||||
|
* @return 转换后的DeliverySignMethodVo对象
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public DeliverySignMethodVo fromString(String string) {
|
||||||
|
if (string == null || string.isEmpty()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
// 查找所有方法,然后通过名称匹配
|
||||||
|
return service.findByName(string);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -22,12 +22,12 @@ public class ProjectTypeStringConverter extends StringConverter<ProjectTypeVo> {
|
|||||||
/**
|
/**
|
||||||
* 将ProjectTypeVo对象转换为字符串
|
* 将ProjectTypeVo对象转换为字符串
|
||||||
*
|
*
|
||||||
* @param object ProjectTypeVo对象
|
* @param type ProjectTypeVo对象
|
||||||
* @return 转换后的字符串
|
* @return 转换后的字符串
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String toString(ProjectTypeVo object) {
|
public String toString(ProjectTypeVo type) {
|
||||||
return object == null ? "" : object.getName();
|
return type == null ? "" : type.getCode() + " " + type.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.ecep.contract.service;
|
package com.ecep.contract.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.springframework.cache.annotation.CacheConfig;
|
import org.springframework.cache.annotation.CacheConfig;
|
||||||
import org.springframework.cache.annotation.CacheEvict;
|
import org.springframework.cache.annotation.CacheEvict;
|
||||||
import org.springframework.cache.annotation.Cacheable;
|
import org.springframework.cache.annotation.Cacheable;
|
||||||
@@ -7,16 +9,18 @@ import org.springframework.data.domain.Page;
|
|||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import com.ecep.contract.converter.DeliverySignMethodStringConverter;
|
||||||
import com.ecep.contract.util.ParamUtils;
|
import com.ecep.contract.util.ParamUtils;
|
||||||
import com.ecep.contract.vm.DeliverySignMethodViewModel;
|
import com.ecep.contract.vm.DeliverySignMethodViewModel;
|
||||||
import com.ecep.contract.vo.DeliverySignMethodVo;
|
import com.ecep.contract.vo.DeliverySignMethodVo;
|
||||||
import com.ecep.contract.vo.ProjectSaleTypeVo;
|
import com.ecep.contract.vo.ProjectSaleTypeVo;
|
||||||
|
|
||||||
import java.util.List;
|
import javafx.util.StringConverter;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@CacheConfig(cacheNames = "delivery-sign-method")
|
@CacheConfig(cacheNames = "delivery-sign-method")
|
||||||
public class DeliverySignMethodService extends QueryService<DeliverySignMethodVo, DeliverySignMethodViewModel> {
|
public class DeliverySignMethodService extends QueryService<DeliverySignMethodVo, DeliverySignMethodViewModel> {
|
||||||
|
private final StringConverter<DeliverySignMethodVo> stringConverter = new DeliverySignMethodStringConverter(this);
|
||||||
|
|
||||||
@Cacheable(key = "#id")
|
@Cacheable(key = "#id")
|
||||||
@Override
|
@Override
|
||||||
@@ -24,6 +28,14 @@ public class DeliverySignMethodService extends QueryService<DeliverySignMethodVo
|
|||||||
return super.findById(id);
|
return super.findById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DeliverySignMethodVo findByCode(String code) {
|
||||||
|
return findOneByProperty("code", code);
|
||||||
|
}
|
||||||
|
|
||||||
|
public DeliverySignMethodVo findByName(String name) {
|
||||||
|
return findOneByProperty("name", name);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据销售类型和编码查询发货方式
|
* 根据销售类型和编码查询发货方式
|
||||||
*
|
*
|
||||||
@@ -32,15 +44,16 @@ public class DeliverySignMethodService extends QueryService<DeliverySignMethodVo
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public DeliverySignMethodVo findBySaleTypeAndCode(ProjectSaleTypeVo saleType, String code) {
|
public DeliverySignMethodVo findBySaleTypeAndCode(ProjectSaleTypeVo saleType, String code) {
|
||||||
Page<DeliverySignMethodVo> page = findAll(ParamUtils.builder()
|
var builder = ParamUtils.builder();
|
||||||
.equals("saleType", saleType.getId()).build(), Pageable.unpaged());
|
builder.equals("saleType", saleType.getId());
|
||||||
|
builder.equals("code", code);
|
||||||
|
Page<DeliverySignMethodVo> page = findAll(builder.build(), Pageable.unpaged());
|
||||||
if (page.isEmpty()) {
|
if (page.isEmpty()) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return page.stream().filter(v -> v.getCode().equals(code)).findFirst().orElse(null);
|
return page.stream().findFirst().orElse(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Cacheable(key = "'all'")
|
@Cacheable(key = "'all'")
|
||||||
@Override
|
@Override
|
||||||
public List<DeliverySignMethodVo> findAll() {
|
public List<DeliverySignMethodVo> findAll() {
|
||||||
@@ -58,4 +71,9 @@ public class DeliverySignMethodService extends QueryService<DeliverySignMethodVo
|
|||||||
public void delete(DeliverySignMethodVo entity) {
|
public void delete(DeliverySignMethodVo entity) {
|
||||||
super.delete(entity);
|
super.delete(entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringConverter<DeliverySignMethodVo> getStringConverter() {
|
||||||
|
return stringConverter;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,4 +51,9 @@ public class ProjectIndustryService extends QueryService<ProjectIndustryVo, Proj
|
|||||||
super.delete(entity);
|
super.delete(entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public StringConverter<ProjectIndustryVo> getStringConverter() {
|
||||||
|
return stringConverter;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,11 +13,7 @@ import javafx.util.StringConverter;
|
|||||||
@Service
|
@Service
|
||||||
@CacheConfig(cacheNames = "project-type")
|
@CacheConfig(cacheNames = "project-type")
|
||||||
public class ProjectTypeService extends QueryService<ProjectTypeVo, ProjectTypeViewModel> {
|
public class ProjectTypeService extends QueryService<ProjectTypeVo, ProjectTypeViewModel> {
|
||||||
private final StringConverter<ProjectTypeVo> stringConverter;
|
private final StringConverter<ProjectTypeVo> stringConverter = new ProjectTypeStringConverter(this);
|
||||||
|
|
||||||
public ProjectTypeService() {
|
|
||||||
this.stringConverter = new ProjectTypeStringConverter(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Cacheable(key = "#p0")
|
@Cacheable(key = "#p0")
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -31,9 +31,9 @@
|
|||||||
<TableColumn fx:id="contractTable_codeColumn" prefWidth="85.0" text="合同编码" />
|
<TableColumn fx:id="contractTable_codeColumn" prefWidth="85.0" text="合同编码" />
|
||||||
<TableColumn fx:id="contractTable_nameColumn" maxWidth="1.7976931348623157E308" minWidth="80.0" prefWidth="200.0" text="名称" />
|
<TableColumn fx:id="contractTable_nameColumn" maxWidth="1.7976931348623157E308" minWidth="80.0" prefWidth="200.0" text="名称" />
|
||||||
<TableColumn fx:id="contractTable_stateColumn" minWidth="30.0" prefWidth="45.0" text="状态" visible="false" />
|
<TableColumn fx:id="contractTable_stateColumn" minWidth="30.0" prefWidth="45.0" text="状态" visible="false" />
|
||||||
<TableColumn fx:id="contractTable_groupColumn" prefWidth="75.0" text="分组" />
|
<TableColumn fx:id="contractTable_groupColumn" prefWidth="75.0" text="分组" visible="false" />
|
||||||
<TableColumn fx:id="contractTable_typeColumn" prefWidth="110.0" text="类型" />
|
<TableColumn fx:id="contractTable_typeColumn" prefWidth="110.0" text="类型" visible="false" />
|
||||||
<TableColumn fx:id="contractTable_kindColumn" prefWidth="100.0" text="性质" />
|
<TableColumn fx:id="contractTable_kindColumn" prefWidth="100.0" text="性质" visible="false" />
|
||||||
<TableColumn fx:id="contractTable_parentCodeColumn" prefWidth="90.0" text="主合同号" visible="false" />
|
<TableColumn fx:id="contractTable_parentCodeColumn" prefWidth="90.0" text="主合同号" visible="false" />
|
||||||
<TableColumn fx:id="contractTable_setupDateColumn" prefWidth="75.0" sortType="DESCENDING" text="提交日期" />
|
<TableColumn fx:id="contractTable_setupDateColumn" prefWidth="75.0" sortType="DESCENDING" text="提交日期" />
|
||||||
<TableColumn fx:id="contractTable_inureDateColumn" prefWidth="75.0" text="生效日期" />
|
<TableColumn fx:id="contractTable_inureDateColumn" prefWidth="75.0" text="生效日期" />
|
||||||
|
|||||||
@@ -1,19 +1,39 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<?import javafx.geometry.Insets?>
|
<?import javafx.geometry.Insets?>
|
||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.Button?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.control.CheckBox?>
|
||||||
|
<?import javafx.scene.control.ComboBox?>
|
||||||
|
<?import javafx.scene.control.ContextMenu?>
|
||||||
|
<?import javafx.scene.control.DatePicker?>
|
||||||
|
<?import javafx.scene.control.Label?>
|
||||||
|
<?import javafx.scene.control.MenuItem?>
|
||||||
|
<?import javafx.scene.control.ScrollPane?>
|
||||||
|
<?import javafx.scene.control.Tab?>
|
||||||
|
<?import javafx.scene.control.TabPane?>
|
||||||
|
<?import javafx.scene.control.TableColumn?>
|
||||||
|
<?import javafx.scene.control.TableView?>
|
||||||
|
<?import javafx.scene.control.TextArea?>
|
||||||
|
<?import javafx.scene.control.TextField?>
|
||||||
|
<?import javafx.scene.control.ToolBar?>
|
||||||
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
|
<?import javafx.scene.layout.BorderPane?>
|
||||||
|
<?import javafx.scene.layout.ColumnConstraints?>
|
||||||
|
<?import javafx.scene.layout.GridPane?>
|
||||||
|
<?import javafx.scene.layout.HBox?>
|
||||||
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
<?import javafx.scene.layout.RowConstraints?>
|
||||||
|
<?import javafx.scene.layout.VBox?>
|
||||||
<?import javafx.scene.paint.Color?>
|
<?import javafx.scene.paint.Color?>
|
||||||
<?import javafx.scene.text.Font?>
|
<?import javafx.scene.text.Font?>
|
||||||
<BorderPane fx:id="root" prefHeight="680.0" prefWidth="1000.0" xmlns="http://javafx.com/javafx/22"
|
|
||||||
xmlns:fx="http://javafx.com/fxml/1"
|
<BorderPane fx:id="root" prefHeight="680.0" prefWidth="1000.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.ecep.contract.controller.project.ProjectWindowController">
|
||||||
fx:controller="com.ecep.contract.controller.project.ProjectWindowController">
|
|
||||||
<top>
|
<top>
|
||||||
<ToolBar prefHeight="40.0" prefWidth="200.0" BorderPane.alignment="CENTER">
|
<ToolBar prefHeight="40.0" prefWidth="200.0" BorderPane.alignment="CENTER">
|
||||||
<items>
|
<items>
|
||||||
<Button fx:id="refreshBtn" text="刷新(_R)"/>
|
<Button fx:id="refreshBtn" text="刷新(_R)" />
|
||||||
<Button fx:id="saveBtn" disable="true" text="保存(_S)"/>
|
<Button fx:id="saveBtn" disable="true" text="保存(_S)" />
|
||||||
<Button fx:id="deleteBtn" layoutX="54.0" layoutY="14.0" mnemonicParsing="false" text="删除"/>
|
<Button fx:id="deleteBtn" layoutX="54.0" layoutY="14.0" mnemonicParsing="false" text="删除" />
|
||||||
</items>
|
</items>
|
||||||
</ToolBar>
|
</ToolBar>
|
||||||
</top>
|
</top>
|
||||||
@@ -22,156 +42,103 @@
|
|||||||
<tabs>
|
<tabs>
|
||||||
<Tab fx:id="baseInfoTab" text="基本信息">
|
<Tab fx:id="baseInfoTab" text="基本信息">
|
||||||
<content>
|
<content>
|
||||||
<ScrollPane fitToWidth="true" maxHeight="1.7976931348623157E308"
|
<ScrollPane fitToWidth="true" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minWidth="150.0" pannable="true">
|
||||||
maxWidth="1.7976931348623157E308" minWidth="150.0" pannable="true">
|
|
||||||
<content>
|
<content>
|
||||||
<VBox maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308"
|
<VBox maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minHeight="600.0" minWidth="150.0">
|
||||||
minHeight="600.0" minWidth="150.0">
|
|
||||||
<children>
|
<children>
|
||||||
<GridPane maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308"
|
<GridPane maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minWidth="150.0" VBox.vgrow="NEVER">
|
||||||
minWidth="150.0" VBox.vgrow="NEVER">
|
|
||||||
<columnConstraints>
|
<columnConstraints>
|
||||||
<ColumnConstraints halignment="CENTER" hgrow="NEVER" maxWidth="200.0"
|
<ColumnConstraints halignment="CENTER" hgrow="NEVER" maxWidth="200.0" minWidth="80.0" prefWidth="120.0" />
|
||||||
minWidth="80.0" prefWidth="120.0"/>
|
<ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308" minWidth="50.0" prefWidth="180.0" />
|
||||||
<ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308"
|
<ColumnConstraints halignment="CENTER" hgrow="NEVER" maxWidth="200.0" minWidth="80.0" prefWidth="120.0" />
|
||||||
minWidth="50.0" prefWidth="180.0"/>
|
<ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308" minWidth="50.0" prefWidth="180.0" />
|
||||||
<ColumnConstraints halignment="CENTER" hgrow="NEVER" maxWidth="200.0"
|
|
||||||
minWidth="80.0" prefWidth="120.0"/>
|
|
||||||
<ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308"
|
|
||||||
minWidth="50.0" prefWidth="180.0"/>
|
|
||||||
</columnConstraints>
|
</columnConstraints>
|
||||||
<rowConstraints>
|
<rowConstraints>
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" minHeight="80.0" prefHeight="80.0" vgrow="NEVER" />
|
||||||
vgrow="NEVER"/>
|
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0" vgrow="NEVER" />
|
||||||
<RowConstraints fillHeight="false" minHeight="30.0" prefHeight="30.0"
|
<RowConstraints fillHeight="false" maxHeight="1.7976931348623157E308" minHeight="30.0" prefHeight="42.0" vgrow="NEVER" />
|
||||||
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" minHeight="80.0" prefHeight="80.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="42.0" vgrow="NEVER"/>
|
|
||||||
</rowConstraints>
|
</rowConstraints>
|
||||||
<children>
|
<children>
|
||||||
<Label text="项目名称"/>
|
<Label text="项目名称" />
|
||||||
<TextField fx:id="nameField" GridPane.columnIndex="1"
|
<TextField fx:id="nameField" GridPane.columnIndex="1" GridPane.columnSpan="3" />
|
||||||
GridPane.columnSpan="3"/>
|
<HBox alignment="CENTER_RIGHT" spacing="5.0" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="12">
|
||||||
<HBox alignment="CENTER_RIGHT" spacing="5.0" GridPane.columnIndex="1"
|
|
||||||
GridPane.columnSpan="3" GridPane.rowIndex="13">
|
|
||||||
<children>
|
<children>
|
||||||
|
|
||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
<Label fx:id="versionLabel" text="\@Version" GridPane.rowIndex="13"/>
|
<Label fx:id="versionLabel" text="\@Version" GridPane.rowIndex="12" />
|
||||||
<Label text="项目编码" GridPane.rowIndex="1"/>
|
<Label text="项目编码" GridPane.rowIndex="1" />
|
||||||
<TextField fx:id="codeField" GridPane.columnIndex="1"
|
<TextField fx:id="codeField" GridPane.columnIndex="1" GridPane.rowIndex="1" />
|
||||||
GridPane.rowIndex="1"/>
|
<Label text="创建日期" GridPane.rowIndex="11" />
|
||||||
<Label text="创建日期" GridPane.rowIndex="12"/>
|
<Label text="项目类型" GridPane.rowIndex="5" />
|
||||||
<Label text="项目类型" GridPane.rowIndex="5"/>
|
<DatePicker fx:id="createdField" GridPane.columnIndex="1" GridPane.rowIndex="11" />
|
||||||
<DatePicker fx:id="createdField" GridPane.columnIndex="1"
|
<Label text="其他" GridPane.columnIndex="2" GridPane.rowIndex="2" />
|
||||||
GridPane.rowIndex="12"/>
|
<Label text="项目地址" GridPane.rowIndex="8" />
|
||||||
<Label text="投标/报价" GridPane.columnIndex="2" GridPane.rowIndex="2"/>
|
<TextField fx:id="addressField" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="8" />
|
||||||
<Label text="项目地址" GridPane.rowIndex="8"/>
|
<Label text="备注" GridPane.rowIndex="10" />
|
||||||
<TextField fx:id="addressField" GridPane.columnIndex="1"
|
<TextArea fx:id="descriptionField" GridPane.columnIndex="1" GridPane.columnSpan="3" GridPane.rowIndex="10">
|
||||||
GridPane.columnSpan="3" GridPane.rowIndex="8"/>
|
|
||||||
<Label text="备注" GridPane.rowIndex="10"/>
|
|
||||||
<TextArea fx:id="descriptionField" GridPane.columnIndex="1"
|
|
||||||
GridPane.columnSpan="3" GridPane.rowIndex="10">
|
|
||||||
<GridPane.margin>
|
<GridPane.margin>
|
||||||
<Insets bottom="3.0" top="3.0"/>
|
<Insets bottom="3.0" top="3.0" />
|
||||||
</GridPane.margin>
|
</GridPane.margin>
|
||||||
</TextArea>
|
</TextArea>
|
||||||
<HBox spacing="12.0" GridPane.columnIndex="3" GridPane.rowIndex="2">
|
<HBox spacing="12.0" GridPane.columnIndex="3" GridPane.rowIndex="2">
|
||||||
<children>
|
<children>
|
||||||
<CheckBox fx:id="useBidField" mnemonicParsing="false"
|
<CheckBox fx:id="useBidField" mnemonicParsing="false" text="投标" />
|
||||||
text="投标"/>
|
<CheckBox fx:id="useOfferField" mnemonicParsing="false" text="报价" />
|
||||||
<CheckBox fx:id="useOfferField" mnemonicParsing="false"
|
<CheckBox fx:id="standardPayWayField" mnemonicParsing="false" text="标准付款方式" />
|
||||||
text="报价"/>
|
|
||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
<Label text="付款方式" GridPane.columnIndex="2" GridPane.rowIndex="4"/>
|
<Label text="产品用途类型" GridPane.rowIndex="7" />
|
||||||
<CheckBox fx:id="standardPayWayField" mnemonicParsing="false"
|
<ComboBox fx:id="industryField" prefWidth="150.0" GridPane.columnIndex="1" GridPane.rowIndex="6" />
|
||||||
text="标准付款方式" GridPane.columnIndex="3"
|
<Label text="销售类型" GridPane.rowIndex="2" />
|
||||||
GridPane.rowIndex="4"/>
|
<Label text="最终用户行业类型" GridPane.rowIndex="6" />
|
||||||
<Label text="产品用途类型" GridPane.rowIndex="7"/>
|
<Label text="预计开工" GridPane.columnIndex="2" GridPane.rowIndex="5" />
|
||||||
<ComboBox fx:id="industryField" prefWidth="150.0"
|
<Label text="预计完工" GridPane.columnIndex="2" GridPane.rowIndex="6" />
|
||||||
GridPane.columnIndex="1" GridPane.rowIndex="6"/>
|
<Label text="交货签收方式" GridPane.rowIndex="3" />
|
||||||
<Label text="销售类型" GridPane.rowIndex="2"/>
|
<Label text="产品类型" GridPane.rowIndex="4" />
|
||||||
<Label text="最终用户行业类型" GridPane.rowIndex="6"/>
|
|
||||||
<Label text="预计开工时间" GridPane.rowIndex="9"/>
|
|
||||||
<Label text="预计完工时间" GridPane.columnIndex="2"
|
|
||||||
GridPane.rowIndex="9"/>
|
|
||||||
<Label text="交货签收方式" GridPane.rowIndex="3"/>
|
|
||||||
<Label text="产品类型" GridPane.rowIndex="4"/>
|
|
||||||
<HBox GridPane.columnIndex="1" GridPane.rowIndex="2">
|
<HBox GridPane.columnIndex="1" GridPane.rowIndex="2">
|
||||||
<children>
|
<children>
|
||||||
<ComboBox fx:id="saleTypeField" minWidth="100.0"
|
<ComboBox fx:id="saleTypeField" minWidth="100.0" prefWidth="100.0" />
|
||||||
prefWidth="100.0"/>
|
<TextField fx:id="codeYearField" alignment="CENTER_RIGHT" layoutX="160.0" layoutY="10.0" maxWidth="30.0" minWidth="30.0" prefWidth="30.0" promptText="00" />
|
||||||
<TextField fx:id="codeYearField" alignment="CENTER_RIGHT"
|
<TextField fx:id="codeSequenceNumberField" alignment="CENTER_RIGHT" maxWidth="38.0" minWidth="38.0" prefWidth="38.0" promptText="000" />
|
||||||
layoutX="160.0" layoutY="10.0" maxWidth="30.0"
|
<Button mnemonicParsing="false" onAction="#onGetNextCodeSNAction" text="+" />
|
||||||
minWidth="30.0" prefWidth="30.0" promptText="00"/>
|
</children>
|
||||||
<TextField fx:id="codeSequenceNumberField"
|
</HBox>
|
||||||
alignment="CENTER_RIGHT" maxWidth="38.0"
|
<ComboBox fx:id="projectTypeField" prefWidth="150.0" GridPane.columnIndex="1" GridPane.rowIndex="5" />
|
||||||
minWidth="38.0" prefWidth="38.0" promptText="000"/>
|
<ComboBox fx:id="productTypeField" prefWidth="150.0" GridPane.columnIndex="1" GridPane.rowIndex="4" />
|
||||||
<Button mnemonicParsing="false"
|
<ComboBox fx:id="deliverySignMethodField" prefWidth="150.0" GridPane.columnIndex="1" GridPane.rowIndex="3" />
|
||||||
onAction="#onGetNextCodeSNAction" text="+"/>
|
<ComboBox fx:id="productUsageField" prefWidth="150.0" GridPane.columnIndex="1" GridPane.rowIndex="7" />
|
||||||
|
<Label text="申请人" GridPane.rowIndex="9" />
|
||||||
|
<Label text="审核人" GridPane.columnIndex="2" GridPane.rowIndex="9" />
|
||||||
|
<TextField fx:id="applicantField" GridPane.columnIndex="1" GridPane.rowIndex="9" />
|
||||||
|
<TextField fx:id="authorizerField" GridPane.columnIndex="3" GridPane.rowIndex="9" />
|
||||||
|
<DatePicker fx:id="plannedStartTimeField" layoutX="130.0" layoutY="424.0" GridPane.columnIndex="3" GridPane.rowIndex="5" />
|
||||||
|
<DatePicker fx:id="plannedCompletionTimeField" layoutX="130.0" layoutY="254.0" GridPane.columnIndex="3" GridPane.rowIndex="6" />
|
||||||
|
<Label text="项目金额" GridPane.columnIndex="2" GridPane.rowIndex="1" />
|
||||||
|
<TextField fx:id="amountField" GridPane.columnIndex="3" GridPane.rowIndex="1" />
|
||||||
|
<Label text="工程项目" GridPane.columnIndex="2" GridPane.rowIndex="4" />
|
||||||
|
<HBox spacing="12.0" GridPane.columnIndex="3" GridPane.rowIndex="4">
|
||||||
|
<children>
|
||||||
|
<CheckBox fx:id="investigationField" mnemonicParsing="false" text="现场勘察" />
|
||||||
|
<CheckBox fx:id="investigationField1" mnemonicParsing="false" text="项目交底" />
|
||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
<ComboBox fx:id="projectTypeField" prefWidth="150.0"
|
|
||||||
GridPane.columnIndex="1" GridPane.rowIndex="5"/>
|
|
||||||
<ComboBox fx:id="productTypeField" prefWidth="150.0"
|
|
||||||
GridPane.columnIndex="1" GridPane.rowIndex="4"/>
|
|
||||||
<ComboBox fx:id="deliverySignMethodField" prefWidth="150.0"
|
|
||||||
GridPane.columnIndex="1" GridPane.rowIndex="3"/>
|
|
||||||
<ComboBox fx:id="productUsageField" prefWidth="150.0"
|
|
||||||
GridPane.columnIndex="1" GridPane.rowIndex="7"/>
|
|
||||||
<Label text="申请人" GridPane.rowIndex="11"/>
|
|
||||||
<Label text="审核人" GridPane.columnIndex="2" GridPane.rowIndex="11"/>
|
|
||||||
<TextField fx:id="applicantField" GridPane.columnIndex="1"
|
|
||||||
GridPane.rowIndex="11"/>
|
|
||||||
<TextField fx:id="authorizerField" GridPane.columnIndex="3"
|
|
||||||
GridPane.rowIndex="11"/>
|
|
||||||
<DatePicker fx:id="plannedStartTimeField" layoutX="130.0"
|
|
||||||
layoutY="424.0" GridPane.columnIndex="1"
|
|
||||||
GridPane.rowIndex="9"/>
|
|
||||||
<DatePicker fx:id="plannedCompletionTimeField" layoutX="130.0"
|
|
||||||
layoutY="254.0" GridPane.columnIndex="3"
|
|
||||||
GridPane.rowIndex="9"/>
|
|
||||||
<Label text="项目金额" GridPane.columnIndex="2" GridPane.rowIndex="3"/>
|
|
||||||
<TextField fx:id="amountField" GridPane.columnIndex="3"
|
|
||||||
GridPane.rowIndex="3"/>
|
|
||||||
<Label text="现场勘察" GridPane.columnIndex="2" GridPane.rowIndex="5"/>
|
|
||||||
<CheckBox fx:id="investigationField" mnemonicParsing="false"
|
|
||||||
text="现场勘察" GridPane.columnIndex="3"
|
|
||||||
GridPane.rowIndex="5"/>
|
|
||||||
<Label text="项目交底" GridPane.columnIndex="2" GridPane.rowIndex="6"/>
|
|
||||||
<CheckBox fx:id="investigationField1" mnemonicParsing="false"
|
|
||||||
text="项目交底" GridPane.columnIndex="3"
|
|
||||||
GridPane.rowIndex="6"/>
|
|
||||||
</children>
|
</children>
|
||||||
<VBox.margin>
|
<VBox.margin>
|
||||||
<Insets bottom="5.0" left="5.0" right="5.0" top="5.0"/>
|
<Insets bottom="5.0" left="5.0" right="5.0" top="5.0" />
|
||||||
</VBox.margin>
|
</VBox.margin>
|
||||||
</GridPane>
|
</GridPane>
|
||||||
<Pane prefHeight="50.0" prefWidth="200.0"/>
|
<Pane prefHeight="50.0" prefWidth="200.0" />
|
||||||
</children>
|
</children>
|
||||||
</VBox>
|
</VBox>
|
||||||
</content>
|
</content>
|
||||||
@@ -186,7 +153,7 @@
|
|||||||
</Tab>
|
</Tab>
|
||||||
<Tab fx:id="bidTab" text="投标">
|
<Tab fx:id="bidTab" text="投标">
|
||||||
<content>
|
<content>
|
||||||
<Label text="投标报价、审批"/>
|
<Label text="投标报价、审批" />
|
||||||
</content>
|
</content>
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab fx:id="contractTab" text="相关合同">
|
<Tab fx:id="contractTab" text="相关合同">
|
||||||
@@ -197,7 +164,7 @@
|
|||||||
</Tab>
|
</Tab>
|
||||||
<Tab text="发货">
|
<Tab text="发货">
|
||||||
<content>
|
<content>
|
||||||
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0"/>
|
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0" />
|
||||||
</content>
|
</content>
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab fx:id="fileTab" text="表单">
|
<Tab fx:id="fileTab" text="表单">
|
||||||
@@ -206,31 +173,25 @@
|
|||||||
<children>
|
<children>
|
||||||
<HBox spacing="3.0">
|
<HBox spacing="3.0">
|
||||||
<children>
|
<children>
|
||||||
<Button mnemonicParsing="false" onAction="#onFileReBuildingAction" text="重置"/>
|
<Button mnemonicParsing="false" onAction="#onFileReBuildingAction" text="重置" />
|
||||||
</children>
|
</children>
|
||||||
<padding>
|
<padding>
|
||||||
<Insets bottom="10.0" left="7.0" right="10.0" top="10.0"/>
|
<Insets bottom="10.0" left="7.0" right="10.0" top="10.0" />
|
||||||
</padding>
|
</padding>
|
||||||
</HBox>
|
</HBox>
|
||||||
<TableView fx:id="fileTable" layoutX="48.0" layoutY="26.0" prefHeight="487.0"
|
<TableView fx:id="fileTable" layoutX="48.0" layoutY="26.0" prefHeight="487.0" prefWidth="900.0" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="42.0">
|
||||||
prefWidth="900.0" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0"
|
|
||||||
AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="42.0">
|
|
||||||
<columns>
|
<columns>
|
||||||
<TableColumn fx:id="fileTable_idColumn" prefWidth="75.0" text="ID"/>
|
<TableColumn fx:id="fileTable_idColumn" prefWidth="75.0" text="ID" />
|
||||||
<TableColumn fx:id="fileTable_typeColumn" text="类型"/>
|
<TableColumn fx:id="fileTable_typeColumn" text="类型" />
|
||||||
<TableColumn fx:id="fileTable_filePathColumn" prefWidth="300.0" text="文件"/>
|
<TableColumn fx:id="fileTable_filePathColumn" prefWidth="300.0" text="文件" />
|
||||||
<TableColumn fx:id="fileTable_applyDateColumn" prefWidth="150.0"
|
<TableColumn fx:id="fileTable_applyDateColumn" prefWidth="150.0" text="生效日期" />
|
||||||
text="生效日期"/>
|
<TableColumn fx:id="fileTable_descriptionColumn" prefWidth="200.0" text="有效日期" />
|
||||||
<TableColumn fx:id="fileTable_descriptionColumn" prefWidth="200.0"
|
|
||||||
text="有效日期"/>
|
|
||||||
</columns>
|
</columns>
|
||||||
<contextMenu>
|
<contextMenu>
|
||||||
<ContextMenu onShowing="#onFileTableContextMenuShowing">
|
<ContextMenu onShowing="#onFileTableContextMenuShowing">
|
||||||
<items>
|
<items>
|
||||||
<MenuItem mnemonicParsing="false" onAction="#onFileTableRefreshAction"
|
<MenuItem mnemonicParsing="false" onAction="#onFileTableRefreshAction" text="刷新" />
|
||||||
text="刷新"/>
|
<MenuItem mnemonicParsing="false" onAction="#onFileTableDeleteAction" text="删除" />
|
||||||
<MenuItem mnemonicParsing="false" onAction="#onFileTableDeleteAction"
|
|
||||||
text="删除"/>
|
|
||||||
</items>
|
</items>
|
||||||
</ContextMenu>
|
</ContextMenu>
|
||||||
</contextMenu>
|
</contextMenu>
|
||||||
@@ -245,20 +206,19 @@
|
|||||||
<bottom>
|
<bottom>
|
||||||
<HBox id="HBox" alignment="CENTER_LEFT" spacing="5.0">
|
<HBox id="HBox" alignment="CENTER_LEFT" spacing="5.0">
|
||||||
<children>
|
<children>
|
||||||
<Label fx:id="leftStatusLabel" maxHeight="1.7976931348623157E308" text="Left status"
|
<Label fx:id="leftStatusLabel" maxHeight="1.7976931348623157E308" text="Left status" HBox.hgrow="ALWAYS">
|
||||||
HBox.hgrow="ALWAYS">
|
|
||||||
<font>
|
<font>
|
||||||
<Font size="11.0" fx:id="x3"/>
|
<Font size="11.0" fx:id="x3" />
|
||||||
</font>
|
</font>
|
||||||
<textFill>
|
<textFill>
|
||||||
<Color red="0.625" green="0.625" blue="0.625" fx:id="x4"/>
|
<Color red="0.625" green="0.625" blue="0.625" fx:id="x4" />
|
||||||
</textFill>
|
</textFill>
|
||||||
</Label>
|
</Label>
|
||||||
<Pane HBox.hgrow="ALWAYS"/>
|
<Pane HBox.hgrow="ALWAYS" />
|
||||||
<Label fx:id="rightStatusLabel" font="$x3" text="Right status" textFill="$x4" HBox.hgrow="NEVER"/>
|
<Label fx:id="rightStatusLabel" font="$x3" text="Right status" textFill="$x4" HBox.hgrow="NEVER" />
|
||||||
</children>
|
</children>
|
||||||
<padding>
|
<padding>
|
||||||
<Insets bottom="3.0" left="3.0" right="3.0" top="3.0"/>
|
<Insets bottom="3.0" left="3.0" right="3.0" top="3.0" />
|
||||||
</padding>
|
</padding>
|
||||||
</HBox>
|
</HBox>
|
||||||
</bottom>
|
</bottom>
|
||||||
|
|||||||
@@ -6,12 +6,12 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>Contract-Manager</artifactId>
|
<artifactId>Contract-Manager</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>common</artifactId>
|
<artifactId>common</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.source>${java.version}</maven.compiler.source>
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
|
|||||||
2
pom.xml
2
pom.xml
@@ -10,7 +10,7 @@
|
|||||||
</parent>
|
</parent>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>Contract-Manager</artifactId>
|
<artifactId>Contract-Manager</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<modules>
|
<modules>
|
||||||
<module>server</module>
|
<module>server</module>
|
||||||
|
|||||||
@@ -6,12 +6,12 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>Contract-Manager</artifactId>
|
<artifactId>Contract-Manager</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>server</artifactId>
|
<artifactId>server</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.source>${java.version}</maven.compiler.source>
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.ecep.contract</groupId>
|
<groupId>com.ecep.contract</groupId>
|
||||||
<artifactId>common</artifactId>
|
<artifactId>common</artifactId>
|
||||||
<version>0.0.126-SNAPSHOT</version>
|
<version>0.0.129-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
|||||||
@@ -82,7 +82,8 @@ public class CustomerCtx extends AbstractYongYouU8Ctx {
|
|||||||
public CompanyCustomerEntityVo updateCustomerEntityDetailByCode(CompanyCustomerEntityVo item, String unitCode,
|
public CompanyCustomerEntityVo updateCustomerEntityDetailByCode(CompanyCustomerEntityVo item, String unitCode,
|
||||||
MessageHolder holder) {
|
MessageHolder holder) {
|
||||||
CompanyCustomerEntity v0 = getCustomerEntityService().getById(item.getId());
|
CompanyCustomerEntity v0 = getCustomerEntityService().getById(item.getId());
|
||||||
if (applyEntityDetail(v0, repository.findCustomerByCusCode(unitCode), holder)) {
|
initializeRepository(holder);
|
||||||
|
if (applyEntityDetail(v0, getRepository().findCustomerByCusCode(unitCode), holder)) {
|
||||||
item = save(v0).toVo();
|
item = save(v0).toVo();
|
||||||
}
|
}
|
||||||
return item;
|
return item;
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ public class SalesOrderCtx extends AbstractYongYouU8Ctx {
|
|||||||
Collectors.toMap(SalesOrderItem::getCode, item -> item))));
|
Collectors.toMap(SalesOrderItem::getCode, item -> item))));
|
||||||
|
|
||||||
// 查询 U8 数据库
|
// 查询 U8 数据库
|
||||||
List<Map<String, Object>> ds = repository.findAllSalesOrderItemByContractCode(contract.getCode());
|
List<Map<String, Object>> ds = getRepository().findAllSalesOrderItemByContractCode(contract.getCode());
|
||||||
holder.debug("查找到 " + ds.size() + " 条销售订单条目记录在 " + CloudServiceConstant.U8_NAME);
|
holder.debug("查找到 " + ds.size() + " 条销售订单条目记录在 " + CloudServiceConstant.U8_NAME);
|
||||||
|
|
||||||
Map<SalesOrder, List<SalesOrderItem>> updateMap = new HashMap<>();
|
Map<SalesOrder, List<SalesOrderItem>> updateMap = new HashMap<>();
|
||||||
@@ -202,7 +202,7 @@ public class SalesOrderCtx extends AbstractYongYouU8Ctx {
|
|||||||
|
|
||||||
for (SalesOrder order : updateMap.keySet()) {
|
for (SalesOrder order : updateMap.keySet()) {
|
||||||
holder.debug("销售订单 #" + order.getCode());
|
holder.debug("销售订单 #" + order.getCode());
|
||||||
if (applySalesOrderDetail(order, repository.querySalesOrderDetail(order.getCode()), holder)) {
|
if (applySalesOrderDetail(order, getRepository().querySalesOrderDetail(order.getCode()), holder)) {
|
||||||
saleOrdersService.save(order);
|
saleOrdersService.save(order);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -78,7 +78,8 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
|
|||||||
*/
|
*/
|
||||||
public VendorEntityVo updateVendorEntityDetailByCode(VendorEntityVo item, String unitCode, MessageHolder holder) {
|
public VendorEntityVo updateVendorEntityDetailByCode(VendorEntityVo item, String unitCode, MessageHolder holder) {
|
||||||
VendorEntity v1 = getCompanyVendorEntityService().getById(item.getId());
|
VendorEntity v1 = getCompanyVendorEntityService().getById(item.getId());
|
||||||
if (applyEntityDetail(v1, repository.findVendorByVendCode(unitCode), holder)) {
|
initializeRepository(holder);
|
||||||
|
if (applyEntityDetail(v1, getRepository().findVendorByVendCode(unitCode), holder)) {
|
||||||
item = save(v1).toVo();
|
item = save(v1).toVo();
|
||||||
}
|
}
|
||||||
return item;
|
return item;
|
||||||
|
|||||||
@@ -285,6 +285,7 @@ public abstract class AbstContractRepairTasker extends Tasker<Object> {
|
|||||||
*/
|
*/
|
||||||
private void syncSaleOrder(ContractVo contract, MessageHolder holder) {
|
private void syncSaleOrder(ContractVo contract, MessageHolder holder) {
|
||||||
SalesOrderCtx ctx = getSalesOrderCtx();
|
SalesOrderCtx ctx = getSalesOrderCtx();
|
||||||
|
ctx.initializeRepository(holder);
|
||||||
if (ctx.getRepository() == null) {
|
if (ctx.getRepository() == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.ecep.contract.ds.project.service;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.ecep.contract.util.SpecificationUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.cache.annotation.CacheConfig;
|
import org.springframework.cache.annotation.CacheConfig;
|
||||||
import org.springframework.cache.annotation.CacheEvict;
|
import org.springframework.cache.annotation.CacheEvict;
|
||||||
@@ -63,7 +64,7 @@ public class DeliverySignMethodService
|
|||||||
spec = getSpecification(paramsNode.get("searchText").asText());
|
spec = getSpecification(paramsNode.get("searchText").asText());
|
||||||
}
|
}
|
||||||
// field
|
// field
|
||||||
// spec = SpecificationUtils.andParam(spec, paramsNode, "company");
|
spec = SpecificationUtils.andParam(spec, paramsNode, "saleType");
|
||||||
Page<DeliverySignMethod> page = findAll(spec, pageable);
|
Page<DeliverySignMethod> page = findAll(spec, pageable);
|
||||||
return page.map(DeliverySignMethod::toVo);
|
return page.map(DeliverySignMethod::toVo);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user