refactor(contract): 重构客户文件类型相关代码,统一命名和继承结构
- 将 CompanyCustomerFileType 重命名为 CustomerFileType - 统一相关 VO 和 model 的继承结构,使用 BaseEnumEntity - 更新所有引用点,保持代码一致性 - 优化表格单元格显示逻辑,使用专用单元格工厂
This commit is contained in:
@@ -116,7 +116,7 @@ public class ComboBoxUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T extends IdentityEntity & NamedEntity> void initialComboBox(
|
public static <T extends IdentityEntity> void initialComboBox(
|
||||||
ComboBox<T> comboBox, Property<Integer> property, IEntityService<T> queryService, boolean hasNull) {
|
ComboBox<T> comboBox, Property<Integer> property, IEntityService<T> queryService, boolean hasNull) {
|
||||||
ObservableList<T> list = FXCollections.observableArrayList();
|
ObservableList<T> list = FXCollections.observableArrayList();
|
||||||
if (hasNull) {
|
if (hasNull) {
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ import org.slf4j.Logger;
|
|||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.MessageHolder;
|
import com.ecep.contract.MessageHolder;
|
||||||
import com.ecep.contract.SpringApp;
|
import com.ecep.contract.SpringApp;
|
||||||
import com.ecep.contract.vo.CloudTycVo;
|
import com.ecep.contract.vo.CloudTycVo;
|
||||||
@@ -127,7 +127,7 @@ public class CompanyCustomerEvaluationFormUpdateTask extends Tasker<Object> {
|
|||||||
CompanyCustomerFileVo customerFile = new CompanyCustomerFileVo();
|
CompanyCustomerFileVo customerFile = new CompanyCustomerFileVo();
|
||||||
customerFile.setCustomer(customer.getId());
|
customerFile.setCustomer(customer.getId());
|
||||||
customerFile.setFilePath(destFile.getAbsolutePath());
|
customerFile.setFilePath(destFile.getAbsolutePath());
|
||||||
customerFile.setType(CompanyCustomerFileType.General);
|
customerFile.setType(CustomerFileType.General);
|
||||||
save(customerFile);
|
save(customerFile);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
holder.error(e.getMessage());
|
holder.error(e.getMessage());
|
||||||
@@ -192,7 +192,7 @@ public class CompanyCustomerEvaluationFormUpdateTask extends Tasker<Object> {
|
|||||||
|
|
||||||
// 检索评估表
|
// 检索评估表
|
||||||
List<CompanyCustomerFileVo> customerFiles = getCompanyCustomerFileService().findAllByCustomerAndType(customer,
|
List<CompanyCustomerFileVo> customerFiles = getCompanyCustomerFileService().findAllByCustomerAndType(customer,
|
||||||
CompanyCustomerFileType.EvaluationForm);
|
CustomerFileType.EvaluationForm);
|
||||||
|
|
||||||
List<CompanyCustomerEvaluationFormFileVo> filteredList = customerFiles.stream().filter(file -> {
|
List<CompanyCustomerEvaluationFormFileVo> filteredList = customerFiles.stream().filter(file -> {
|
||||||
return file.getSignDate() != null && file.isValid();
|
return file.getSignDate() != null && file.isValid();
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import java.util.function.Consumer;
|
|||||||
|
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.DesktopUtils;
|
import com.ecep.contract.DesktopUtils;
|
||||||
import com.ecep.contract.Message;
|
import com.ecep.contract.Message;
|
||||||
import com.ecep.contract.MyDateTimeUtils;
|
import com.ecep.contract.MyDateTimeUtils;
|
||||||
@@ -106,7 +106,7 @@ public class CustomerTabSkinFile
|
|||||||
table.disableProperty().bind(viewModel.getPath().isEmpty());
|
table.disableProperty().bind(viewModel.getPath().isEmpty());
|
||||||
fileTable_idColumn.setCellValueFactory(param -> param.getValue().getId());
|
fileTable_idColumn.setCellValueFactory(param -> param.getValue().getId());
|
||||||
CompanyCustomerFileTypeService fileTypeService = getCachedBean(CompanyCustomerFileTypeService.class);
|
CompanyCustomerFileTypeService fileTypeService = getCachedBean(CompanyCustomerFileTypeService.class);
|
||||||
ObservableMap<CompanyCustomerFileType, CompanyCustomerFileTypeLocal> observableMapByLocal = FXCollections
|
ObservableMap<CustomerFileType, CompanyCustomerFileTypeLocal> observableMapByLocal = FXCollections
|
||||||
.observableMap(fileTypeService.findAll(getLocale()));
|
.observableMap(fileTypeService.findAll(getLocale()));
|
||||||
fileTable_typeColumn.setCellValueFactory(param -> Bindings.valueAt(observableMapByLocal,
|
fileTable_typeColumn.setCellValueFactory(param -> Bindings.valueAt(observableMapByLocal,
|
||||||
param.getValue().getType()).map(BaseEnumEntity::getValue));
|
param.getValue().getType()).map(BaseEnumEntity::getValue));
|
||||||
@@ -156,8 +156,8 @@ public class CustomerTabSkinFile
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onTableRowDoubleClickedAction(CompanyCustomerFileViewModel item) {
|
protected void onTableRowDoubleClickedAction(CompanyCustomerFileViewModel item) {
|
||||||
CompanyCustomerFileType fileType = item.getType().get();
|
CustomerFileType fileType = item.getType().get();
|
||||||
if (fileType == CompanyCustomerFileType.EvaluationForm) {
|
if (fileType == CustomerFileType.EvaluationForm) {
|
||||||
CompanyCustomerEvaluationFormFileVo evaluationFormFile = getCachedBean(
|
CompanyCustomerEvaluationFormFileVo evaluationFormFile = getCachedBean(
|
||||||
CompanyCustomerEvaluationFormFileService.class).findByCustomerFile(item.getId().get());
|
CompanyCustomerEvaluationFormFileService.class).findByCustomerFile(item.getId().get());
|
||||||
// 文件不是 Excel 文件时,打开编辑UI
|
// 文件不是 Excel 文件时,打开编辑UI
|
||||||
@@ -201,7 +201,7 @@ public class CustomerTabSkinFile
|
|||||||
if (file.renameTo(dest)) {
|
if (file.renameTo(dest)) {
|
||||||
CompanyCustomerFileVo ccf = new CompanyCustomerFileVo();
|
CompanyCustomerFileVo ccf = new CompanyCustomerFileVo();
|
||||||
ccf.setCustomer(companyCustomer.getId());
|
ccf.setCustomer(companyCustomer.getId());
|
||||||
ccf.setType(CompanyCustomerFileType.EvaluationForm);
|
ccf.setType(CustomerFileType.EvaluationForm);
|
||||||
ccf.setFilePath(dest.getAbsolutePath());
|
ccf.setFilePath(dest.getAbsolutePath());
|
||||||
ccf.setSignDate(nextSignDate);
|
ccf.setSignDate(nextSignDate);
|
||||||
ccf.setValid(false);
|
ccf.setValid(false);
|
||||||
@@ -228,7 +228,7 @@ public class CustomerTabSkinFile
|
|||||||
if (file.renameTo(dest)) {
|
if (file.renameTo(dest)) {
|
||||||
CompanyCustomerFileVo ccf = new CompanyCustomerFileVo();
|
CompanyCustomerFileVo ccf = new CompanyCustomerFileVo();
|
||||||
ccf.setCustomer(companyCustomer.getId());
|
ccf.setCustomer(companyCustomer.getId());
|
||||||
ccf.setType(CompanyCustomerFileType.General);
|
ccf.setType(CustomerFileType.General);
|
||||||
ccf.setFilePath(dest.getAbsolutePath());
|
ccf.setFilePath(dest.getAbsolutePath());
|
||||||
ccf.setValid(false);
|
ccf.setValid(false);
|
||||||
getCompanyCustomerFileService().save(ccf);
|
getCompanyCustomerFileService().save(ccf);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.ecep.contract.controller.project.bid;
|
package com.ecep.contract.controller.project.bid;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.ContractFileType;
|
import com.ecep.contract.ContractFileType;
|
||||||
import com.ecep.contract.DesktopUtils;
|
import com.ecep.contract.DesktopUtils;
|
||||||
import com.ecep.contract.MyDateTimeUtils;
|
import com.ecep.contract.MyDateTimeUtils;
|
||||||
@@ -10,10 +10,7 @@ import com.ecep.contract.controller.tab.AbstEntityBasedTabSkin;
|
|||||||
import com.ecep.contract.controller.tab.TabSkin;
|
import com.ecep.contract.controller.tab.TabSkin;
|
||||||
import com.ecep.contract.converter.CompanyStringConverter;
|
import com.ecep.contract.converter.CompanyStringConverter;
|
||||||
import com.ecep.contract.converter.EmployeeStringConverter;
|
import com.ecep.contract.converter.EmployeeStringConverter;
|
||||||
import com.ecep.contract.converter.EntityStringConverter;
|
|
||||||
import com.ecep.contract.service.*;
|
import com.ecep.contract.service.*;
|
||||||
import com.ecep.contract.util.ParamUtils;
|
|
||||||
import com.ecep.contract.util.ProxyUtils;
|
|
||||||
import com.ecep.contract.util.UITools;
|
import com.ecep.contract.util.UITools;
|
||||||
import com.ecep.contract.vm.ProjectBidViewModel;
|
import com.ecep.contract.vm.ProjectBidViewModel;
|
||||||
import com.ecep.contract.vo.*;
|
import com.ecep.contract.vo.*;
|
||||||
@@ -28,10 +25,8 @@ import javafx.util.converter.LocalDateStringConverter;
|
|||||||
import javafx.util.converter.LocalDateTimeStringConverter;
|
import javafx.util.converter.LocalDateTimeStringConverter;
|
||||||
import javafx.util.converter.NumberStringConverter;
|
import javafx.util.converter.NumberStringConverter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import org.springframework.data.domain.Pageable;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.text.NumberFormat;
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
@@ -281,7 +276,7 @@ public class ProjectBidTabSkinBase
|
|||||||
|
|
||||||
// 获取客户资信评估表
|
// 获取客户资信评估表
|
||||||
List<CompanyCustomerFileVo> list = fileService.findAllByCustomerAndType(customer,
|
List<CompanyCustomerFileVo> list = fileService.findAllByCustomerAndType(customer,
|
||||||
CompanyCustomerFileType.EvaluationForm);
|
CustomerFileType.EvaluationForm);
|
||||||
if (list.isEmpty()) {
|
if (list.isEmpty()) {
|
||||||
// 没有评估表
|
// 没有评估表
|
||||||
return;
|
return;
|
||||||
@@ -292,7 +287,7 @@ public class ProjectBidTabSkinBase
|
|||||||
LocalDate verifyDate = applyTime.toLocalDate();
|
LocalDate verifyDate = applyTime.toLocalDate();
|
||||||
CompanyCustomerFileVo file = list.stream()
|
CompanyCustomerFileVo file = list.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(), v.getSignDate().plusYears(1),
|
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(), v.getSignDate().plusYears(1),
|
||||||
7))
|
7))
|
||||||
.findFirst().orElse(null);
|
.findFirst().orElse(null);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import java.util.stream.Collectors;
|
|||||||
|
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.MyDateTimeUtils;
|
import com.ecep.contract.MyDateTimeUtils;
|
||||||
import com.ecep.contract.controller.tab.AbstEntityBasedTabSkin;
|
import com.ecep.contract.controller.tab.AbstEntityBasedTabSkin;
|
||||||
import com.ecep.contract.controller.tab.TabSkin;
|
import com.ecep.contract.controller.tab.TabSkin;
|
||||||
@@ -235,7 +235,7 @@ public class CustomerSatisfactionSurveyTabSkinBase
|
|||||||
|
|
||||||
CompanyCustomerFileService companyCustomerFileService = getBean(CompanyCustomerFileService.class);
|
CompanyCustomerFileService companyCustomerFileService = getBean(CompanyCustomerFileService.class);
|
||||||
List<CompanyCustomerFileVo> list = companyCustomerFileService.findAllByCustomerAndType(customer,
|
List<CompanyCustomerFileVo> list = companyCustomerFileService.findAllByCustomerAndType(customer,
|
||||||
CompanyCustomerFileType.EvaluationForm);
|
CustomerFileType.EvaluationForm);
|
||||||
if (list.isEmpty()) {
|
if (list.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -244,7 +244,7 @@ public class CustomerSatisfactionSurveyTabSkinBase
|
|||||||
LocalDate verifyDate = applyTime.toLocalDate();
|
LocalDate verifyDate = applyTime.toLocalDate();
|
||||||
CompanyCustomerFileVo file = list.stream()
|
CompanyCustomerFileVo file = list.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(), v.getSignDate().plusYears(1),
|
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(), v.getSignDate().plusYears(1),
|
||||||
7))
|
7))
|
||||||
.findFirst().orElse(null);
|
.findFirst().orElse(null);
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
package com.ecep.contract.controller.table.cell;
|
||||||
|
|
||||||
|
import com.ecep.contract.SpringApp;
|
||||||
|
import com.ecep.contract.VendorType;
|
||||||
|
import com.ecep.contract.service.VendorTypeService;
|
||||||
|
import com.ecep.contract.vo.VendorTypeLocalVo;
|
||||||
|
|
||||||
|
import javafx.scene.control.TableCell;
|
||||||
|
import javafx.scene.control.TableColumn;
|
||||||
|
import javafx.util.Callback;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 供应商类型单元格,用于在表格中显示供应商类型信息
|
||||||
|
*/
|
||||||
|
public class VendorTypeTableCell<T> extends AsyncUpdateTableCell<T, VendorTypeLocalVo> {
|
||||||
|
private VendorTypeService vendorTypeService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建一个用于表格列的单元格工厂
|
||||||
|
*/
|
||||||
|
public static <T> Callback<TableColumn<T, VendorType>, TableCell<T, VendorType>> forTableColumn(
|
||||||
|
VendorTypeService service) {
|
||||||
|
return param -> new VendorTypeTableCell<>(service);
|
||||||
|
}
|
||||||
|
|
||||||
|
public VendorTypeTableCell() {
|
||||||
|
this.vendorTypeService = SpringApp.getBean(VendorTypeService.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
public VendorTypeTableCell(VendorTypeService service) {
|
||||||
|
setService(service);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected VendorTypeService getServiceBean() {
|
||||||
|
if (vendorTypeService == null) {
|
||||||
|
vendorTypeService = SpringApp.getBean(VendorTypeService.class);
|
||||||
|
}
|
||||||
|
return vendorTypeService;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,16 +1,11 @@
|
|||||||
package com.ecep.contract.controller.vendor;
|
package com.ecep.contract.controller.vendor;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import com.ecep.contract.MyDateTimeUtils;
|
import com.ecep.contract.MyDateTimeUtils;
|
||||||
import com.ecep.contract.controller.AbstEntityManagerSkin;
|
import com.ecep.contract.controller.AbstEntityManagerSkin;
|
||||||
import com.ecep.contract.controller.ComboBoxUtils;
|
import com.ecep.contract.controller.ComboBoxUtils;
|
||||||
import com.ecep.contract.controller.table.cell.CompanyTableCell;
|
import com.ecep.contract.controller.table.cell.CompanyTableCell;
|
||||||
import com.ecep.contract.model.CompanyVendor;
|
import com.ecep.contract.controller.table.cell.VendorCatalogTableCell;
|
||||||
import com.ecep.contract.model.VendorCatalog;
|
import com.ecep.contract.controller.table.cell.VendorTypeTableCell;
|
||||||
import com.ecep.contract.model.VendorTypeLocal;
|
|
||||||
import com.ecep.contract.service.CompanyService;
|
import com.ecep.contract.service.CompanyService;
|
||||||
import com.ecep.contract.service.CompanyVendorService;
|
import com.ecep.contract.service.CompanyVendorService;
|
||||||
import com.ecep.contract.service.VendorCatalogService;
|
import com.ecep.contract.service.VendorCatalogService;
|
||||||
@@ -18,11 +13,7 @@ import com.ecep.contract.service.VendorTypeService;
|
|||||||
import com.ecep.contract.util.ParamUtils;
|
import com.ecep.contract.util.ParamUtils;
|
||||||
import com.ecep.contract.vm.CompanyVendorViewModel;
|
import com.ecep.contract.vm.CompanyVendorViewModel;
|
||||||
import com.ecep.contract.vo.CompanyVendorVo;
|
import com.ecep.contract.vo.CompanyVendorVo;
|
||||||
import com.ecep.contract.vo.VendorCatalogVo;
|
|
||||||
|
|
||||||
import javafx.application.Platform;
|
import javafx.application.Platform;
|
||||||
import javafx.beans.binding.Bindings;
|
|
||||||
import javafx.beans.property.SimpleObjectProperty;
|
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
public class CompanyVendorManagerSkin
|
public class CompanyVendorManagerSkin
|
||||||
@@ -63,41 +54,21 @@ public class CompanyVendorManagerSkin
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void initializeTable() {
|
public void initializeTable() {
|
||||||
List<VendorTypeLocal> vendorTypeLocals = getBean(VendorTypeService.class).findAll();
|
ComboBoxUtils.initialComboBox(controller.typeSelector, null, getBean(VendorTypeService.class), true);
|
||||||
ComboBoxUtils.initialComboBox(controller.typeSelector, vendorTypeLocals, true);
|
|
||||||
controller.typeSelector.valueProperty().addListener((observable, oldValue, newValue) -> {
|
|
||||||
loadTableDataSet(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
controller.idColumn.setCellValueFactory(param -> param.getValue().getId());
|
controller.idColumn.setCellValueFactory(param -> param.getValue().getId());
|
||||||
controller.codeColumn.setCellValueFactory(param -> param.getValue().getCode());
|
controller.codeColumn.setCellValueFactory(param -> param.getValue().getCode());
|
||||||
|
|
||||||
controller.catalogColumn.setCellValueFactory(param -> Bindings.createStringBinding(() -> {
|
controller.catalogColumn.setCellValueFactory(param -> param.getValue().getCatalog());
|
||||||
SimpleObjectProperty<Integer> catalog = param.getValue().getCatalog();
|
controller.catalogColumn.setCellFactory(VendorCatalogTableCell.forTableColumn(getBean(VendorCatalogService.class)));
|
||||||
Integer catalogId = catalog.get();
|
|
||||||
if (catalogId == null) {
|
|
||||||
return "-";
|
|
||||||
}
|
|
||||||
VendorCatalogVo vendorCatalog = getBean(VendorCatalogService.class).findById(catalogId);
|
|
||||||
if (vendorCatalog == null) {
|
|
||||||
return "-";
|
|
||||||
} else {
|
|
||||||
return vendorCatalog.getName();
|
|
||||||
}
|
|
||||||
}, param.getValue().getCatalog()));
|
|
||||||
|
|
||||||
controller.typeColumn.setCellValueFactory(param -> param.getValue().getType().map(type -> {
|
|
||||||
VendorTypeLocal local = vendorTypeLocals.stream().filter(v -> v.getType() == type).findFirst().orElse(null);
|
controller.typeColumn.setCellValueFactory(param -> param.getValue().getType());
|
||||||
if (local == null) {
|
controller.typeColumn.setCellFactory(VendorTypeTableCell.forTableColumn(getBean(VendorTypeService.class)));
|
||||||
return type.name();
|
|
||||||
} else {
|
|
||||||
return local.getValue();
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
|
|
||||||
controller.purchaseColumn.setCellValueFactory(param -> param.getValue().getPurchase());
|
controller.purchaseColumn.setCellValueFactory(param -> param.getValue().getPurchase());
|
||||||
controller.companyColumn.setCellValueFactory(param -> param.getValue().getCompany());
|
controller.companyColumn.setCellValueFactory(param -> param.getValue().getCompany());
|
||||||
controller.companyColumn.setCellFactory(param -> new CompanyTableCell<>(getCompanyService()));
|
controller.companyColumn.setCellFactory(CompanyTableCell.forTableColumn(getCompanyService()));
|
||||||
|
|
||||||
controller.developDateColumn.setCellValueFactory(param -> param.getValue().getDevelopDate());
|
controller.developDateColumn.setCellValueFactory(param -> param.getValue().getDevelopDate());
|
||||||
controller.pathColumn.setCellValueFactory(param -> param.getValue().getPath());
|
controller.pathColumn.setCellValueFactory(param -> param.getValue().getPath());
|
||||||
|
|||||||
@@ -12,11 +12,10 @@ import org.springframework.data.domain.Pageable;
|
|||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import com.ecep.contract.MessageHolder;
|
import com.ecep.contract.MessageHolder;
|
||||||
|
import com.ecep.contract.VendorType;
|
||||||
import com.ecep.contract.controller.AbstManagerWindowController;
|
import com.ecep.contract.controller.AbstManagerWindowController;
|
||||||
import com.ecep.contract.controller.vendor.approved_list.CompanyVendorApprovedListManagerWindowController;
|
import com.ecep.contract.controller.vendor.approved_list.CompanyVendorApprovedListManagerWindowController;
|
||||||
import com.ecep.contract.controller.vendor.group.VendorGroupManagerWindowController;
|
import com.ecep.contract.controller.vendor.group.VendorGroupManagerWindowController;
|
||||||
import com.ecep.contract.model.CompanyVendor;
|
|
||||||
import com.ecep.contract.model.VendorTypeLocal;
|
|
||||||
import com.ecep.contract.service.CompanyService;
|
import com.ecep.contract.service.CompanyService;
|
||||||
import com.ecep.contract.service.CompanyVendorService;
|
import com.ecep.contract.service.CompanyVendorService;
|
||||||
import com.ecep.contract.task.VendorVerifyAllTasker;
|
import com.ecep.contract.task.VendorVerifyAllTasker;
|
||||||
@@ -24,6 +23,7 @@ import com.ecep.contract.util.FxmlPath;
|
|||||||
import com.ecep.contract.util.UITools;
|
import com.ecep.contract.util.UITools;
|
||||||
import com.ecep.contract.vm.CompanyVendorViewModel;
|
import com.ecep.contract.vm.CompanyVendorViewModel;
|
||||||
import com.ecep.contract.vo.CompanyVendorVo;
|
import com.ecep.contract.vo.CompanyVendorVo;
|
||||||
|
import com.ecep.contract.vo.VendorTypeLocalVo;
|
||||||
|
|
||||||
import javafx.event.ActionEvent;
|
import javafx.event.ActionEvent;
|
||||||
import javafx.scene.control.ComboBox;
|
import javafx.scene.control.ComboBox;
|
||||||
@@ -41,14 +41,14 @@ public class CompanyVendorManagerWindowController
|
|||||||
public TableColumn<CompanyVendorViewModel, Number> idColumn;
|
public TableColumn<CompanyVendorViewModel, Number> idColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, Integer> companyColumn;
|
public TableColumn<CompanyVendorViewModel, Integer> companyColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> codeColumn;
|
public TableColumn<CompanyVendorViewModel, String> codeColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> catalogColumn;
|
public TableColumn<CompanyVendorViewModel, Integer> catalogColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> typeColumn;
|
public TableColumn<CompanyVendorViewModel, VendorType> typeColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> purchaseColumn;
|
public TableColumn<CompanyVendorViewModel, String> purchaseColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, LocalDate> developDateColumn;
|
public TableColumn<CompanyVendorViewModel, LocalDate> developDateColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> pathColumn;
|
public TableColumn<CompanyVendorViewModel, String> pathColumn;
|
||||||
public TableColumn<CompanyVendorViewModel, String> createdColumn;
|
public TableColumn<CompanyVendorViewModel, String> createdColumn;
|
||||||
|
|
||||||
public ComboBox<VendorTypeLocal> typeSelector;
|
public ComboBox<VendorTypeLocalVo> typeSelector;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private CompanyService companyService;
|
private CompanyService companyService;
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ import org.springframework.cache.annotation.Cacheable;
|
|||||||
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.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.MessageHolder;
|
import com.ecep.contract.MessageHolder;
|
||||||
import com.ecep.contract.SpringApp;
|
import com.ecep.contract.SpringApp;
|
||||||
import com.ecep.contract.model.CompanyCustomer;
|
import com.ecep.contract.model.CompanyCustomer;
|
||||||
@@ -49,7 +49,7 @@ public class CompanyCustomerFileService extends QueryService<CompanyCustomerFile
|
|||||||
|
|
||||||
// 检索评估表
|
// 检索评估表
|
||||||
List<CompanyCustomerFileVo> files = findAllByCustomerAndType(companyCustomer,
|
List<CompanyCustomerFileVo> files = findAllByCustomerAndType(companyCustomer,
|
||||||
CompanyCustomerFileType.EvaluationForm);
|
CustomerFileType.EvaluationForm);
|
||||||
CompanyCustomerFileVo latestFile = files.stream()
|
CompanyCustomerFileVo latestFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.max(Comparator.comparing(CompanyCustomerFileVo::getSignDate))
|
.max(Comparator.comparing(CompanyCustomerFileVo::getSignDate))
|
||||||
@@ -104,7 +104,7 @@ public class CompanyCustomerFileService extends QueryService<CompanyCustomerFile
|
|||||||
.getContent();
|
.getContent();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<CompanyCustomerFileVo> findAllByCustomerAndType(CompanyCustomerVo customer, CompanyCustomerFileType type) {
|
public List<CompanyCustomerFileVo> findAllByCustomerAndType(CompanyCustomerVo customer, CustomerFileType type) {
|
||||||
return findAll(ParamUtils.builder()
|
return findAll(ParamUtils.builder()
|
||||||
.equals("customer", customer.getId())
|
.equals("customer", customer.getId())
|
||||||
.equals("type", type.name())
|
.equals("type", type.name())
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.ecep.contract.service;
|
package com.ecep.contract.service;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
||||||
import com.ecep.contract.vm.CompanyCustomerFileTypeLocalViewModel;
|
import com.ecep.contract.vm.CompanyCustomerFileTypeLocalViewModel;
|
||||||
import org.springframework.cache.annotation.CacheConfig;
|
import org.springframework.cache.annotation.CacheConfig;
|
||||||
@@ -18,7 +18,7 @@ import java.util.stream.Collectors;
|
|||||||
@CacheConfig(cacheNames = "company-file-type")
|
@CacheConfig(cacheNames = "company-file-type")
|
||||||
public class CompanyCustomerFileTypeService extends QueryService<CompanyCustomerFileTypeLocal, CompanyCustomerFileTypeLocalViewModel>{
|
public class CompanyCustomerFileTypeService extends QueryService<CompanyCustomerFileTypeLocal, CompanyCustomerFileTypeLocalViewModel>{
|
||||||
@Cacheable
|
@Cacheable
|
||||||
public Map<CompanyCustomerFileType, CompanyCustomerFileTypeLocal> findAll(Locale locale) {
|
public Map<CustomerFileType, CompanyCustomerFileTypeLocal> findAll(Locale locale) {
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("lang", locale.toLanguageTag());
|
params.put("lang", locale.toLanguageTag());
|
||||||
return findAll(params, Pageable.unpaged()).stream()
|
return findAll(params, Pageable.unpaged()).stream()
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.ecep.contract.service;
|
|||||||
|
|
||||||
import com.ecep.contract.model.VendorTypeLocal;
|
import com.ecep.contract.model.VendorTypeLocal;
|
||||||
import com.ecep.contract.vm.VendorTypeLocalViewModel;
|
import com.ecep.contract.vm.VendorTypeLocalViewModel;
|
||||||
|
import com.ecep.contract.vo.VendorTypeLocalVo;
|
||||||
import org.springframework.cache.annotation.CacheConfig;
|
import org.springframework.cache.annotation.CacheConfig;
|
||||||
import org.springframework.cache.annotation.CachePut;
|
import org.springframework.cache.annotation.CachePut;
|
||||||
import org.springframework.cache.annotation.Cacheable;
|
import org.springframework.cache.annotation.Cacheable;
|
||||||
@@ -12,28 +13,28 @@ import java.util.List;
|
|||||||
|
|
||||||
@Service
|
@Service
|
||||||
@CacheConfig(cacheNames = "vendor-type")
|
@CacheConfig(cacheNames = "vendor-type")
|
||||||
public class VendorTypeService extends QueryService<VendorTypeLocal, VendorTypeLocalViewModel> {
|
public class VendorTypeService extends QueryService<VendorTypeLocalVo, VendorTypeLocalViewModel> {
|
||||||
@Cacheable(key = "#p0")
|
@Cacheable(key = "#p0")
|
||||||
@Override
|
@Override
|
||||||
public VendorTypeLocal findById(Integer id) {
|
public VendorTypeLocalVo findById(Integer id) {
|
||||||
return super.findById(id);
|
return super.findById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Cacheable(key = "'all'")
|
@Cacheable(key = "'all'")
|
||||||
@Override
|
@Override
|
||||||
public List<VendorTypeLocal> findAll() {
|
public List<VendorTypeLocalVo> findAll() {
|
||||||
return super.findAll();
|
return super.findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Caching(put = {@CachePut(key = "#p0.id"), @CachePut(key = "'all'")})
|
@Caching(put = {@CachePut(key = "#p0.id"), @CachePut(key = "'all'")})
|
||||||
@Override
|
@Override
|
||||||
public VendorTypeLocal save(VendorTypeLocal entity) {
|
public VendorTypeLocalVo save(VendorTypeLocalVo entity) {
|
||||||
return super.save(entity);
|
return super.save(entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Caching(put = {@CachePut(key = "#p0.id"), @CachePut(key = "'all'")})
|
@Caching(put = {@CachePut(key = "#p0.id"), @CachePut(key = "'all'")})
|
||||||
@Override
|
@Override
|
||||||
public void delete(VendorTypeLocal entity) {
|
public void delete(VendorTypeLocalVo entity) {
|
||||||
super.delete(entity);
|
super.delete(entity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ import java.util.stream.Collectors;
|
|||||||
import com.ecep.contract.vo.*;
|
import com.ecep.contract.vo.*;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.ContractFileType;
|
import com.ecep.contract.ContractFileType;
|
||||||
import com.ecep.contract.ContractPayWay;
|
import com.ecep.contract.ContractPayWay;
|
||||||
import com.ecep.contract.MessageHolder;
|
import com.ecep.contract.MessageHolder;
|
||||||
@@ -24,9 +24,7 @@ import com.ecep.contract.MyDateTimeUtils;
|
|||||||
import com.ecep.contract.SpringApp;
|
import com.ecep.contract.SpringApp;
|
||||||
import com.ecep.contract.controller.project.cost.ProjectCostImportItemsFromContractsTasker;
|
import com.ecep.contract.controller.project.cost.ProjectCostImportItemsFromContractsTasker;
|
||||||
import com.ecep.contract.model.Contract;
|
import com.ecep.contract.model.Contract;
|
||||||
import com.ecep.contract.model.ContractBidVendor;
|
|
||||||
import com.ecep.contract.model.ContractFileTypeLocal;
|
import com.ecep.contract.model.ContractFileTypeLocal;
|
||||||
import com.ecep.contract.model.VendorGroupRequireFileType;
|
|
||||||
import com.ecep.contract.service.CompanyCustomerFileService;
|
import com.ecep.contract.service.CompanyCustomerFileService;
|
||||||
import com.ecep.contract.service.CompanyCustomerService;
|
import com.ecep.contract.service.CompanyCustomerService;
|
||||||
import com.ecep.contract.service.CompanyExtendInfoService;
|
import com.ecep.contract.service.CompanyExtendInfoService;
|
||||||
@@ -690,7 +688,7 @@ public class ContractVerifyComm {
|
|||||||
for (LocalDate verifyDate : verifyDates) {
|
for (LocalDate verifyDate : verifyDates) {
|
||||||
CompanyCustomerFileVo customerFile = files.stream()
|
CompanyCustomerFileVo customerFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(),
|
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(),
|
||||||
v.getSignDate().plusYears(1), 7))
|
v.getSignDate().plusYears(1), 7))
|
||||||
.findFirst().orElse(null);
|
.findFirst().orElse(null);
|
||||||
@@ -701,7 +699,7 @@ public class ContractVerifyComm {
|
|||||||
|
|
||||||
CompanyCustomerFileVo latestFile = files.stream()
|
CompanyCustomerFileVo latestFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.max(Comparator.comparing(CompanyCustomerFileVo::getSignDate))
|
.max(Comparator.comparing(CompanyCustomerFileVo::getSignDate))
|
||||||
.orElse(null);
|
.orElse(null);
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package com.ecep.contract.vm;
|
package com.ecep.contract.vm;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
public class CompanyCustomerFileTypeLocalViewModel extends EnumViewModel<CompanyCustomerFileType, CompanyCustomerFileTypeLocal> {
|
public class CompanyCustomerFileTypeLocalViewModel extends EnumViewModel<CustomerFileType, CompanyCustomerFileTypeLocal> {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package com.ecep.contract.vm;
|
|||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.vo.CompanyCustomerFileVo;
|
import com.ecep.contract.vo.CompanyCustomerFileVo;
|
||||||
|
|
||||||
import javafx.beans.property.SimpleBooleanProperty;
|
import javafx.beans.property.SimpleBooleanProperty;
|
||||||
@@ -32,7 +32,7 @@ public class CompanyCustomerFileViewModel extends IdentityViewModel<CompanyCusto
|
|||||||
/**
|
/**
|
||||||
* 类型
|
* 类型
|
||||||
*/
|
*/
|
||||||
private SimpleObjectProperty<CompanyCustomerFileType> type = new SimpleObjectProperty<>();
|
private SimpleObjectProperty<CustomerFileType> type = new SimpleObjectProperty<>();
|
||||||
|
|
||||||
private SimpleStringProperty filePath = new SimpleStringProperty();
|
private SimpleStringProperty filePath = new SimpleStringProperty();
|
||||||
|
|
||||||
|
|||||||
@@ -3,22 +3,25 @@ package com.ecep.contract.vm;
|
|||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyFileType;
|
import com.ecep.contract.CompanyFileType;
|
||||||
import com.ecep.contract.model.CompanyFileTypeLocal;
|
|
||||||
|
|
||||||
|
import com.ecep.contract.vo.CompanyFileTypeLocalVo;
|
||||||
import javafx.beans.property.SimpleObjectProperty;
|
import javafx.beans.property.SimpleObjectProperty;
|
||||||
import javafx.beans.property.SimpleStringProperty;
|
import javafx.beans.property.SimpleStringProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 文件类型本地化信息
|
||||||
|
*/
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
public class CompanyFileTypeLocalViewModel extends IdentityViewModel<CompanyFileTypeLocal> {
|
public class CompanyFileTypeLocalViewModel extends IdentityViewModel<CompanyFileTypeLocalVo> {
|
||||||
private SimpleObjectProperty<CompanyFileType> type = new SimpleObjectProperty<>();
|
private SimpleObjectProperty<CompanyFileType> type = new SimpleObjectProperty<>();
|
||||||
private SimpleStringProperty lang = new SimpleStringProperty();
|
private SimpleStringProperty lang = new SimpleStringProperty();
|
||||||
private SimpleStringProperty value = new SimpleStringProperty();
|
private SimpleStringProperty value = new SimpleStringProperty();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void updateFrom(CompanyFileTypeLocal v) {
|
protected void updateFrom(CompanyFileTypeLocalVo v) {
|
||||||
super.updateFrom(v);
|
super.updateFrom(v);
|
||||||
type.set(v.getType());
|
type.set(v.getType());
|
||||||
lang.set(v.getLang());
|
lang.set(v.getLang());
|
||||||
@@ -26,7 +29,7 @@ public class CompanyFileTypeLocalViewModel extends IdentityViewModel<CompanyFile
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean copyTo(CompanyFileTypeLocal v) {
|
public boolean copyTo(CompanyFileTypeLocalVo v) {
|
||||||
boolean ret = super.copyTo(v);
|
boolean ret = super.copyTo(v);
|
||||||
if (!Objects.equals(type.get(), v.getType())) {
|
if (!Objects.equals(type.get(), v.getType())) {
|
||||||
v.setType(type.get());
|
v.setType(type.get());
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
package com.ecep.contract.vm;
|
package com.ecep.contract.vm;
|
||||||
|
|
||||||
import com.ecep.contract.VendorType;
|
import com.ecep.contract.VendorType;
|
||||||
import com.ecep.contract.model.VendorTypeLocal;
|
import com.ecep.contract.vo.VendorTypeLocalVo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
public class VendorTypeLocalViewModel extends EnumViewModel<VendorType, VendorTypeLocal> {
|
public class VendorTypeLocalViewModel extends EnumViewModel<VendorType, VendorTypeLocalVo> {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.ecep.contract;
|
package com.ecep.contract;
|
||||||
|
|
||||||
public enum CompanyCustomerFileType {
|
public enum CustomerFileType {
|
||||||
/**
|
/**
|
||||||
* 普通文件,一般文件
|
* 普通文件,一般文件
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -35,5 +35,4 @@ public abstract class BaseEnumEntity<T extends Enum<?>> implements IdentityEntit
|
|||||||
private String value;
|
private String value;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -4,7 +4,7 @@ import java.io.Serializable;
|
|||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.util.HibernateProxyUtils;
|
import com.ecep.contract.util.HibernateProxyUtils;
|
||||||
|
|
||||||
import jakarta.persistence.Column;
|
import jakarta.persistence.Column;
|
||||||
@@ -27,7 +27,7 @@ import lombok.ToString;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name = "COMPANY_CUSTOMER_FILE")
|
@Table(name = "COMPANY_CUSTOMER_FILE")
|
||||||
@ToString
|
@ToString
|
||||||
public class CompanyCustomerFile implements CompanyBasicFile<CompanyCustomerFileType>, Serializable {
|
public class CompanyCustomerFile implements CompanyBasicFile<CustomerFileType>, Serializable {
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
@Id
|
@Id
|
||||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
@@ -41,7 +41,7 @@ public class CompanyCustomerFile implements CompanyBasicFile<CompanyCustomerFile
|
|||||||
|
|
||||||
@Column(name = "TYPE")
|
@Column(name = "TYPE")
|
||||||
@Enumerated(EnumType.STRING)
|
@Enumerated(EnumType.STRING)
|
||||||
private CompanyCustomerFileType type;
|
private CustomerFileType type;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 文件路径
|
* 文件路径
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package com.ecep.contract.model;
|
|||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.util.HibernateProxyUtils;
|
import com.ecep.contract.util.HibernateProxyUtils;
|
||||||
|
|
||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
@@ -17,7 +17,7 @@ import lombok.ToString;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name = "COMPANY_CUSTOMER_FILE_TYPE_LOCAL")
|
@Table(name = "COMPANY_CUSTOMER_FILE_TYPE_LOCAL")
|
||||||
@ToString
|
@ToString
|
||||||
public class CompanyCustomerFileTypeLocal extends BaseEnumEntity<CompanyCustomerFileType> implements Serializable {
|
public class CompanyCustomerFileTypeLocal extends BaseEnumEntity<CustomerFileType> implements Serializable {
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class ContractFileTypeLocal extends BaseEnumEntity<ContractFileType> impl
|
|||||||
public ContractFileTypeLocalVo toVo() {
|
public ContractFileTypeLocalVo toVo() {
|
||||||
ContractFileTypeLocalVo vo = new ContractFileTypeLocalVo();
|
ContractFileTypeLocalVo vo = new ContractFileTypeLocalVo();
|
||||||
vo.setId(getId());
|
vo.setId(getId());
|
||||||
vo.setLanguage(getLang());
|
vo.setLang(getLang());
|
||||||
vo.setType(getType());
|
vo.setType(getType());
|
||||||
vo.setDescription(getDescription());
|
vo.setDescription(getDescription());
|
||||||
vo.setSuggestFileName(suggestFileName);
|
vo.setSuggestFileName(suggestFileName);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
import com.ecep.contract.model.IdentityEntity;
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@@ -9,7 +9,7 @@ import lombok.Data;
|
|||||||
public class CompanyCustomerFileVo implements IdentityEntity {
|
public class CompanyCustomerFileVo implements IdentityEntity {
|
||||||
private Integer id;
|
private Integer id;
|
||||||
private Integer customer;
|
private Integer customer;
|
||||||
private CompanyCustomerFileType type;
|
private CustomerFileType type;
|
||||||
private String filePath;
|
private String filePath;
|
||||||
private String editFilePath;
|
private String editFilePath;
|
||||||
private LocalDate signDate;
|
private LocalDate signDate;
|
||||||
|
|||||||
@@ -1,14 +1,12 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyFileType;
|
import com.ecep.contract.CompanyFileType;
|
||||||
|
import com.ecep.contract.VendorType;
|
||||||
|
import com.ecep.contract.model.BaseEnumEntity;
|
||||||
import com.ecep.contract.model.IdentityEntity;
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class CompanyFileTypeLocalVo implements IdentityEntity {
|
public class CompanyFileTypeLocalVo extends BaseEnumEntity<CompanyFileType> implements IdentityEntity {
|
||||||
private Integer id;
|
|
||||||
private String name;
|
|
||||||
private CompanyFileType value;
|
|
||||||
private Integer orderNum = 0;
|
|
||||||
private boolean active = false;
|
private boolean active = false;
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,13 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
|
import com.ecep.contract.VendorFileType;
|
||||||
|
import com.ecep.contract.model.BaseEnumEntity;
|
||||||
import com.ecep.contract.model.IdentityEntity;
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
import com.ecep.contract.ContractFileType;
|
import com.ecep.contract.ContractFileType;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ContractFileTypeLocalVo implements IdentityEntity {
|
public class ContractFileTypeLocalVo extends BaseEnumEntity<ContractFileType> implements IdentityEntity {
|
||||||
private Integer id;
|
|
||||||
private String language;
|
|
||||||
private ContractFileType type;
|
|
||||||
private String description;
|
private String description;
|
||||||
private String suggestFileName;
|
private String suggestFileName;
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,13 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.CompanyFileType;
|
|
||||||
import com.ecep.contract.model.BaseEnumEntity;
|
import com.ecep.contract.model.BaseEnumEntity;
|
||||||
import com.ecep.contract.model.IdentityEntity;
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class CompanyCustomerFileTypeLocalVo
|
public class CustomerFileTypeLocalVo
|
||||||
extends BaseEnumEntity<CompanyCustomerFileType>
|
extends BaseEnumEntity<CustomerFileType>
|
||||||
implements IdentityEntity {
|
implements IdentityEntity {
|
||||||
private Integer orderNum = 0;
|
private Integer orderNum = 0;
|
||||||
private boolean active = false;
|
private boolean active = false;
|
||||||
|
|||||||
@@ -1,4 +1,11 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
public class VendorFileTypeLocalVo {
|
import com.ecep.contract.VendorFileType;
|
||||||
|
import com.ecep.contract.model.BaseEnumEntity;
|
||||||
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class VendorFileTypeLocalVo extends BaseEnumEntity<VendorFileType>
|
||||||
|
implements IdentityEntity {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +1,11 @@
|
|||||||
package com.ecep.contract.vo;
|
package com.ecep.contract.vo;
|
||||||
|
|
||||||
|
import com.ecep.contract.model.BaseEnumEntity;
|
||||||
import com.ecep.contract.model.IdentityEntity;
|
import com.ecep.contract.model.IdentityEntity;
|
||||||
import com.ecep.contract.VendorType;
|
import com.ecep.contract.VendorType;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class VendorTypeLocalVo implements IdentityEntity {
|
public class VendorTypeLocalVo extends BaseEnumEntity<VendorType> implements IdentityEntity {
|
||||||
private Integer id;
|
|
||||||
private String language;
|
|
||||||
private VendorType type;
|
|
||||||
private String name;
|
|
||||||
private String description;
|
|
||||||
}
|
}
|
||||||
@@ -17,7 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.context.annotation.Lazy;
|
import org.springframework.context.annotation.Lazy;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.VendorFileType;
|
import com.ecep.contract.VendorFileType;
|
||||||
import com.ecep.contract.SpringApp;
|
import com.ecep.contract.SpringApp;
|
||||||
import com.ecep.contract.ds.company.CompanyFileUtils;
|
import com.ecep.contract.ds.company.CompanyFileUtils;
|
||||||
@@ -164,7 +164,7 @@ public abstract class CompanyBasicService {
|
|||||||
* @see CompanyVendorFile
|
* @see CompanyVendorFile
|
||||||
* @see VendorFileType
|
* @see VendorFileType
|
||||||
* @see CompanyCustomerFile
|
* @see CompanyCustomerFile
|
||||||
* @see CompanyCustomerFileType
|
* @see CustomerFileType
|
||||||
*/
|
*/
|
||||||
protected abstract <T, F extends CompanyBasicFile<T>> boolean fillFileAsDefaultType(F dbFile, File file, Consumer<String> status);
|
protected abstract <T, F extends CompanyBasicFile<T>> boolean fillFileAsDefaultType(F dbFile, File file, Consumer<String> status);
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import org.hibernate.Hibernate;
|
|||||||
import org.springframework.security.core.userdetails.User;
|
import org.springframework.security.core.userdetails.User;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.ContractFileType;
|
import com.ecep.contract.ContractFileType;
|
||||||
import com.ecep.contract.ContractPayWay;
|
import com.ecep.contract.ContractPayWay;
|
||||||
import com.ecep.contract.MessageHolder;
|
import com.ecep.contract.MessageHolder;
|
||||||
@@ -695,7 +695,7 @@ public class ContractVerifyComm {
|
|||||||
for (LocalDate verifyDate : verifyDates) {
|
for (LocalDate verifyDate : verifyDates) {
|
||||||
CompanyCustomerFile customerFile = files.stream()
|
CompanyCustomerFile customerFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(),
|
.filter(v -> MyDateTimeUtils.dateValidFilter(verifyDate, v.getSignDate(),
|
||||||
v.getSignDate().plusYears(1), 7))
|
v.getSignDate().plusYears(1), 7))
|
||||||
.findFirst().orElse(null);
|
.findFirst().orElse(null);
|
||||||
@@ -706,7 +706,7 @@ public class ContractVerifyComm {
|
|||||||
|
|
||||||
CompanyCustomerFile latestFile = files.stream()
|
CompanyCustomerFile latestFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.filter(v -> v.getType() == CompanyCustomerFileType.EvaluationForm)
|
.filter(v -> v.getType() == CustomerFileType.EvaluationForm)
|
||||||
.max(Comparator.comparing(CompanyCustomerFile::getSignDate))
|
.max(Comparator.comparing(CompanyCustomerFile::getSignDate))
|
||||||
.orElse(null);
|
.orElse(null);
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.ds.MyRepository;
|
import com.ecep.contract.ds.MyRepository;
|
||||||
import com.ecep.contract.model.CompanyCustomer;
|
import com.ecep.contract.model.CompanyCustomer;
|
||||||
import com.ecep.contract.model.CompanyCustomerFile;
|
import com.ecep.contract.model.CompanyCustomerFile;
|
||||||
@@ -14,5 +14,5 @@ public interface CompanyCustomerFileRepository extends MyRepository<CompanyCusto
|
|||||||
|
|
||||||
List<CompanyCustomerFile> findAllByCustomer(CompanyCustomer companyCustomer);
|
List<CompanyCustomerFile> findAllByCustomer(CompanyCustomer companyCustomer);
|
||||||
|
|
||||||
List<CompanyCustomerFile> findAllByCustomerAndType(CompanyCustomer customer, CompanyCustomerFileType type);
|
List<CompanyCustomerFile> findAllByCustomerAndType(CompanyCustomer customer, CustomerFileType type);
|
||||||
}
|
}
|
||||||
@@ -2,17 +2,17 @@ package com.ecep.contract.ds.customer.repository;
|
|||||||
|
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.ds.other.repository.BaseEnumEntityRepository;
|
import com.ecep.contract.ds.other.repository.BaseEnumEntityRepository;
|
||||||
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
import com.ecep.contract.model.CompanyCustomerFileTypeLocal;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface CompanyCustomerFileTypeLocalRepository
|
public interface CompanyCustomerFileTypeLocalRepository
|
||||||
extends BaseEnumEntityRepository<CompanyCustomerFileType, CompanyCustomerFileTypeLocal, Integer> {
|
extends BaseEnumEntityRepository<CustomerFileType, CompanyCustomerFileTypeLocal, Integer> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
default CompanyCustomerFileType[] getEnumConstants() {
|
default CustomerFileType[] getEnumConstants() {
|
||||||
return CompanyCustomerFileType.values();
|
return CustomerFileType.values();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import org.springframework.data.domain.Sort;
|
|||||||
import org.springframework.data.jpa.domain.Specification;
|
import org.springframework.data.jpa.domain.Specification;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.IEntityService;
|
import com.ecep.contract.IEntityService;
|
||||||
import com.ecep.contract.SpringApp;
|
import com.ecep.contract.SpringApp;
|
||||||
import com.ecep.contract.constant.CompanyCustomerConstant;
|
import com.ecep.contract.constant.CompanyCustomerConstant;
|
||||||
@@ -72,7 +72,7 @@ public class CompanyCustomerFileService implements IEntityService<CompanyCustome
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
public void delete(CompanyCustomerFile file) {
|
public void delete(CompanyCustomerFile file) {
|
||||||
if (file.getType() == CompanyCustomerFileType.EvaluationForm) {
|
if (file.getType() == CustomerFileType.EvaluationForm) {
|
||||||
companyCustomerEvaluationFormFileRepository.deleteById(file.getId());
|
companyCustomerEvaluationFormFileRepository.deleteById(file.getId());
|
||||||
}
|
}
|
||||||
companyCustomerFileRepository.delete(file);
|
companyCustomerFileRepository.delete(file);
|
||||||
@@ -118,7 +118,7 @@ public class CompanyCustomerFileService implements IEntityService<CompanyCustome
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
CompanyCustomerFile customerFile = optional.get();
|
CompanyCustomerFile customerFile = optional.get();
|
||||||
if (customerFile.getType() == CompanyCustomerFileType.EvaluationForm) {
|
if (customerFile.getType() == CustomerFileType.EvaluationForm) {
|
||||||
companyCustomerEvaluationFormFileRepository.deleteById(id);
|
companyCustomerEvaluationFormFileRepository.deleteById(id);
|
||||||
}
|
}
|
||||||
companyCustomerFileRepository.delete(customerFile);
|
companyCustomerFileRepository.delete(customerFile);
|
||||||
@@ -134,12 +134,12 @@ public class CompanyCustomerFileService implements IEntityService<CompanyCustome
|
|||||||
return companyCustomerFileRepository.saveAll(files);
|
return companyCustomerFileRepository.saveAll(files);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<CompanyCustomerFile> findAllByCustomerAndType(CompanyCustomer customer, CompanyCustomerFileType type) {
|
public List<CompanyCustomerFile> findAllByCustomerAndType(CompanyCustomer customer, CustomerFileType type) {
|
||||||
return companyCustomerFileRepository.findAllByCustomerAndType(customer, type);
|
return companyCustomerFileRepository.findAllByCustomerAndType(customer, type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<CompanyCustomerEvaluationFormFile> findAllCustomerEvaluationFormFiles(CompanyCustomer companyCustomer) {
|
public List<CompanyCustomerEvaluationFormFile> findAllCustomerEvaluationFormFiles(CompanyCustomer companyCustomer) {
|
||||||
return findAllByCustomerAndType(companyCustomer, CompanyCustomerFileType.EvaluationForm).stream().map(v -> {
|
return findAllByCustomerAndType(companyCustomer, CustomerFileType.EvaluationForm).stream().map(v -> {
|
||||||
return companyCustomerEvaluationFormFileRepository.findById(v.getId()).orElseGet(() -> {
|
return companyCustomerEvaluationFormFileRepository.findById(v.getId()).orElseGet(() -> {
|
||||||
CompanyCustomerEvaluationFormFile formFile = new CompanyCustomerEvaluationFormFile();
|
CompanyCustomerEvaluationFormFile formFile = new CompanyCustomerEvaluationFormFile();
|
||||||
formFile.setCustomerFile(v);
|
formFile.setCustomerFile(v);
|
||||||
@@ -181,7 +181,7 @@ public class CompanyCustomerFileService implements IEntityService<CompanyCustome
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
// 检索评估表
|
// 检索评估表
|
||||||
List<CompanyCustomerFile> files = findAllByCustomerAndType(companyCustomer, CompanyCustomerFileType.EvaluationForm);
|
List<CompanyCustomerFile> files = findAllByCustomerAndType(companyCustomer, CustomerFileType.EvaluationForm);
|
||||||
CompanyCustomerFile latestFile = files.stream()
|
CompanyCustomerFile latestFile = files.stream()
|
||||||
.filter(v -> v.getSignDate() != null && v.isValid())
|
.filter(v -> v.getSignDate() != null && v.isValid())
|
||||||
.max(Comparator.comparing(CompanyCustomerFile::getSignDate))
|
.max(Comparator.comparing(CompanyCustomerFile::getSignDate))
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ import org.springframework.data.jpa.domain.Specification;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import com.ecep.contract.CompanyCustomerFileType;
|
import com.ecep.contract.CustomerFileType;
|
||||||
import com.ecep.contract.IEntityService;
|
import com.ecep.contract.IEntityService;
|
||||||
import com.ecep.contract.ds.company.service.CompanyBasicService;
|
import com.ecep.contract.ds.company.service.CompanyBasicService;
|
||||||
import com.ecep.contract.ds.customer.repository.CompanyCustomerEvaluationFormFileRepository;
|
import com.ecep.contract.ds.customer.repository.CompanyCustomerEvaluationFormFileRepository;
|
||||||
@@ -184,7 +184,7 @@ public class CompanyCustomerService extends CompanyBasicService
|
|||||||
@Override
|
@Override
|
||||||
protected <T, F extends CompanyBasicFile<T>> boolean fillFileAsDefaultType(F dbFile, File file,
|
protected <T, F extends CompanyBasicFile<T>> boolean fillFileAsDefaultType(F dbFile, File file,
|
||||||
Consumer<String> status) {
|
Consumer<String> status) {
|
||||||
dbFile.setType((T) CompanyCustomerFileType.General);
|
dbFile.setType((T) CustomerFileType.General);
|
||||||
fillFile(dbFile, file, null, status);
|
fillFile(dbFile, file, null, status);
|
||||||
companyCustomerFileService.save((CompanyCustomerFile) dbFile);
|
companyCustomerFileService.save((CompanyCustomerFile) dbFile);
|
||||||
return true;
|
return true;
|
||||||
@@ -254,7 +254,7 @@ public class CompanyCustomerService extends CompanyBasicService
|
|||||||
protected <T, F extends CompanyBasicFile<T>> F fillFileType(File file, List<File> fileList,
|
protected <T, F extends CompanyBasicFile<T>> F fillFileType(File file, List<File> fileList,
|
||||||
Consumer<String> status) {
|
Consumer<String> status) {
|
||||||
CompanyCustomerFile customerFile = new CompanyCustomerFile();
|
CompanyCustomerFile customerFile = new CompanyCustomerFile();
|
||||||
customerFile.setType(CompanyCustomerFileType.General);
|
customerFile.setType(CustomerFileType.General);
|
||||||
if (fillFile(customerFile, file, fileList, status)) {
|
if (fillFile(customerFile, file, fileList, status)) {
|
||||||
return (F) customerFile;
|
return (F) customerFile;
|
||||||
}
|
}
|
||||||
@@ -264,8 +264,8 @@ public class CompanyCustomerService extends CompanyBasicService
|
|||||||
@Override
|
@Override
|
||||||
protected <T, F extends CompanyBasicFile<T>> boolean setFileTypeAsEvaluationForm(F file) {
|
protected <T, F extends CompanyBasicFile<T>> boolean setFileTypeAsEvaluationForm(F file) {
|
||||||
T type = file.getType();
|
T type = file.getType();
|
||||||
if (type != CompanyCustomerFileType.EvaluationForm) {
|
if (type != CustomerFileType.EvaluationForm) {
|
||||||
file.setType((T) CompanyCustomerFileType.EvaluationForm);
|
file.setType((T) CustomerFileType.EvaluationForm);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user