refactor(client): 重构银行和公司相关代码
- 更新了多个类中的导入语句,替换了模型类为对应的VO类 - 优化了部分方法的参数和返回类型,使用VO类替代模型类 - 重构了自动补全功能,使用统一的泛型方法 - 添加了缓存注解,提高了数据访问性能 - 优化了部分代码结构,提高了可维护性
This commit is contained in:
@@ -1,16 +1,63 @@
|
||||
package com.ecep.contract.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.cache.annotation.CacheConfig;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.cache.annotation.Caching;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.ecep.contract.model.Bank;
|
||||
import com.ecep.contract.util.ParamUtils;
|
||||
import com.ecep.contract.vm.BankViewModel;
|
||||
import com.ecep.contract.vo.BankVo;
|
||||
|
||||
import javafx.util.StringConverter;
|
||||
|
||||
@Service
|
||||
public class BankService extends QueryService<Bank, BankViewModel> {
|
||||
public Bank findByName(String name) {
|
||||
return null;
|
||||
@CacheConfig(cacheNames = "bank")
|
||||
public class BankService extends QueryService<BankVo, BankViewModel> {
|
||||
@Cacheable(key = "#p0")
|
||||
@Override
|
||||
public BankVo findById(Integer id) {
|
||||
return super.findById(id);
|
||||
}
|
||||
|
||||
public BankVo findByName(String name) {
|
||||
Page<BankVo> page = findAll(ParamUtils.equal(name, name), Pageable.ofSize(1));
|
||||
if (page.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
return page.getContent().getFirst();
|
||||
}
|
||||
|
||||
@Caching(evict = { @CacheEvict(key = "#p0.id") })
|
||||
@Override
|
||||
public BankVo save(BankVo entity) {
|
||||
return super.save(entity);
|
||||
}
|
||||
|
||||
@Caching(evict = { @CacheEvict(key = "#p0.id") })
|
||||
@Override
|
||||
public void delete(BankVo entity) {
|
||||
super.delete(entity);
|
||||
}
|
||||
|
||||
private StringConverter<BankVo> stringConverter = new StringConverter<BankVo>() {
|
||||
@Override
|
||||
public String toString(BankVo object) {
|
||||
return object == null ? "" : object.getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public BankVo fromString(String string) {
|
||||
return findByName(string);
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public StringConverter<BankVo> getStringConverter() {
|
||||
return stringConverter;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,13 +5,13 @@ import java.util.List;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyBankAccount;
|
||||
import com.ecep.contract.vm.CompanyBankAccountViewModel;
|
||||
import com.ecep.contract.vo.CompanyBankAccountVo;
|
||||
|
||||
@Service
|
||||
public class CompanyBankAccountService extends QueryService<CompanyBankAccount, CompanyBankAccountViewModel> {
|
||||
public class CompanyBankAccountService extends QueryService<CompanyBankAccountVo, CompanyBankAccountViewModel> {
|
||||
|
||||
public List<CompanyBankAccount> searchByCompany(Company company, String searchText) {
|
||||
public List<CompanyBankAccountVo> searchByCompany(Company company, String searchText) {
|
||||
throw new UnsupportedOperationException("未实现");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,22 @@
|
||||
package com.ecep.contract.service;
|
||||
|
||||
import com.ecep.contract.MessageHolder;
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyCustomer;
|
||||
import com.ecep.contract.vm.CompanyCustomerViewModel;
|
||||
import java.io.File;
|
||||
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import com.ecep.contract.MessageHolder;
|
||||
import com.ecep.contract.model.CompanyCustomer;
|
||||
import com.ecep.contract.util.ParamUtils;
|
||||
import com.ecep.contract.vm.CompanyCustomerViewModel;
|
||||
import com.ecep.contract.vo.CompanyVo;
|
||||
|
||||
@Service
|
||||
public class CompanyCustomerService extends QueryService<CompanyCustomer, CompanyCustomerViewModel> {
|
||||
|
||||
public CompanyCustomer findByCompany(Company company) {
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("company", company.getId());
|
||||
Page<CompanyCustomer> page = findAll(params, Pageable.ofSize(1));
|
||||
public CompanyCustomer findByCompany(CompanyVo company) {
|
||||
Page<CompanyCustomer> page = findAll(ParamUtils.equal("company", company.getId()), Pageable.ofSize(1));
|
||||
if (page.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
package com.ecep.contract.service;
|
||||
|
||||
import java.io.File;
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import com.ecep.contract.vo.CompanyOldNameVo;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import com.ecep.contract.CompanyFileType;
|
||||
import com.ecep.contract.MessageHolder;
|
||||
import com.ecep.contract.MyDateTimeUtils;
|
||||
@@ -12,17 +29,10 @@ import com.ecep.contract.model.CompanyOldName;
|
||||
import com.ecep.contract.util.FileUtils;
|
||||
import com.ecep.contract.util.ParamUtils;
|
||||
import com.ecep.contract.vm.CompanyFileViewModel;
|
||||
import javafx.collections.ObservableList;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
import com.ecep.contract.vo.CompanyFileVo;
|
||||
import com.ecep.contract.vo.CompanyVo;
|
||||
|
||||
import java.io.File;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import javafx.collections.ObservableList;
|
||||
|
||||
@Service
|
||||
public class CompanyFileService extends QueryService<CompanyFile, CompanyFileViewModel> {
|
||||
@@ -295,16 +305,16 @@ public class CompanyFileService extends QueryService<CompanyFile, CompanyFileVie
|
||||
* @param files 要被移动的文件集合,需要从中选择需要的
|
||||
* @param holder 状态输出
|
||||
*/
|
||||
public boolean retrieveFromDownloadFiles(Company company, File[] files, MessageHolder holder) {
|
||||
public boolean retrieveFromDownloadFiles(CompanyVo company, File[] files, MessageHolder holder) {
|
||||
Map<String, File> map = new HashMap<>();
|
||||
File home = new File(company.getPath());
|
||||
map.put(company.getName(), home);
|
||||
List<CompanyFile> retrieveFiles = new ArrayList<>();
|
||||
List<CompanyFileVo> retrieveFiles = new ArrayList<>();
|
||||
|
||||
List<CompanyOldName> oldNames = SpringApp.getBean(CompanyOldNameService.class).findAllByCompany(company);
|
||||
List<CompanyOldNameVo> oldNames = SpringApp.getBean(CompanyOldNameService.class).findAllByCompany(company);
|
||||
|
||||
// 获取所有曾用名
|
||||
for (CompanyOldName companyOldName : oldNames) {
|
||||
for (CompanyOldNameVo companyOldName : oldNames) {
|
||||
String name = companyOldName.getName();
|
||||
if (!StringUtils.hasText(name)) {
|
||||
continue;
|
||||
@@ -375,13 +385,13 @@ public class CompanyFileService extends QueryService<CompanyFile, CompanyFileVie
|
||||
* @param holder 状态输出
|
||||
* @return 生成的公司文件对象,如果无法转换则返回null
|
||||
*/
|
||||
private CompanyFile fillDownloadFileType(Company company, File file, String companyName, File destDir,
|
||||
private CompanyFileVo fillDownloadFileType(CompanyVo company, File file, String companyName, File destDir,
|
||||
MessageHolder holder) {
|
||||
String fileName = file.getName();
|
||||
// 天眼查的报告
|
||||
// 目前只有 基础版企业信用报告, 企业信用信息公示报告下载保存时的文件名中没有天眼查
|
||||
if (CloudTycService.isTycReport(fileName)) {
|
||||
CompanyFile companyFile = new CompanyFile();
|
||||
CompanyFileVo companyFile = new CompanyFileVo();
|
||||
companyFile.setType(CompanyFileType.CreditReport);
|
||||
fillApplyDateAbsent(file, companyFile);
|
||||
|
||||
@@ -471,7 +481,7 @@ public class CompanyFileService extends QueryService<CompanyFile, CompanyFileVie
|
||||
/**
|
||||
* 当 ApplyDate 未设置时,尝试使用文件名中包含的日期
|
||||
*/
|
||||
private static void fillApplyDateAbsent(File file, CompanyFile companyFile) {
|
||||
private static void fillApplyDateAbsent(File file, CompanyFileVo companyFile) {
|
||||
LocalDate applyDate = companyFile.getApplyDate();
|
||||
if (applyDate != null) {
|
||||
return;
|
||||
|
||||
@@ -1,36 +1,39 @@
|
||||
package com.ecep.contract.service;
|
||||
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyOldName;
|
||||
import com.ecep.contract.vm.CompanyOldNameViewModel;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class CompanyOldNameService extends QueryService<CompanyOldName, CompanyOldNameViewModel> {
|
||||
import com.ecep.contract.model.IdentityEntity;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
public boolean makePathAbsent(CompanyOldName companyOldName) {
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyOldName;
|
||||
import com.ecep.contract.util.ParamUtils;
|
||||
import com.ecep.contract.vm.CompanyOldNameViewModel;
|
||||
import com.ecep.contract.vo.CompanyOldNameVo;
|
||||
import com.ecep.contract.vo.CompanyVo;
|
||||
|
||||
@Service
|
||||
public class CompanyOldNameService extends QueryService<CompanyOldNameVo, CompanyOldNameViewModel> {
|
||||
|
||||
public boolean makePathAbsent(CompanyOldNameVo companyOldName) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'makePathAbsent'");
|
||||
}
|
||||
|
||||
public CompanyOldName findMatchByDate(Company company, LocalDate localDate) {
|
||||
public CompanyOldName findMatchByDate(CompanyVo company, LocalDate localDate) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'findMatchByDate'");
|
||||
}
|
||||
|
||||
public List<CompanyOldName> findAllByCompanyAndName(Company company, String oldName) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'findAllByCompanyAndName'");
|
||||
public List<CompanyOldNameVo> findAllByCompanyAndName(CompanyVo company, String oldName) {
|
||||
return findAll(ParamUtils.builder().equals("company", company.getId()).equals("oldName", oldName).build(),
|
||||
Pageable.unpaged()).getContent();
|
||||
}
|
||||
|
||||
public List<CompanyOldName> findAllByCompany(Company company) {
|
||||
HashMap<String, Object> params = new HashMap<>();
|
||||
params.put("company", company.getId());
|
||||
return findAll(params, Pageable.unpaged()).getContent();
|
||||
public List<CompanyOldNameVo> findAllByCompany(IdentityEntity company) {
|
||||
return findAll(ParamUtils.equal("company", company.getId()), Pageable.unpaged()).getContent();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
package com.ecep.contract.service;
|
||||
|
||||
import java.io.File;
|
||||
import java.time.LocalDate;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.CacheConfig;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import com.ecep.contract.MessageHolder;
|
||||
import com.ecep.contract.MyDateTimeUtils;
|
||||
import com.ecep.contract.SpringApp;
|
||||
@@ -7,22 +20,11 @@ import com.ecep.contract.constant.CompanyConstant;
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.util.FileUtils;
|
||||
import com.ecep.contract.vm.CompanyViewModel;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.CacheConfig;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.time.LocalDate;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import com.ecep.contract.vo.CompanyVo;
|
||||
|
||||
@Service
|
||||
@CacheConfig(cacheNames = "company")
|
||||
public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
public class CompanyService extends QueryService<CompanyVo, CompanyViewModel> {
|
||||
|
||||
@Autowired
|
||||
private SysConfService confService;
|
||||
@@ -42,37 +44,37 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
}
|
||||
|
||||
@Cacheable(key = "#p0")
|
||||
public Company findById(Integer id) {
|
||||
public CompanyVo findById(Integer id) {
|
||||
return super.findById(id);
|
||||
}
|
||||
|
||||
public Company findByName(String name) {
|
||||
List<Company> list = findAllByName(name);
|
||||
public CompanyVo findByName(String name) {
|
||||
List<CompanyVo> list = findAllByName(name);
|
||||
if (list.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
return list.getFirst();
|
||||
}
|
||||
|
||||
public List<Company> findAllByName(String name) {
|
||||
public List<CompanyVo> findAllByName(String name) {
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("name", name);
|
||||
return findAll(params, Pageable.unpaged()).getContent();
|
||||
}
|
||||
|
||||
public void merge(Company company, Company updater) {
|
||||
public void merge(CompanyVo company, CompanyVo updater) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'merge'");
|
||||
}
|
||||
|
||||
public Company createNewCompany(String newCompanyName) {
|
||||
Company company = new Company();
|
||||
public CompanyVo createNewCompany(String newCompanyName) {
|
||||
CompanyVo company = new CompanyVo();
|
||||
company.setName(newCompanyName);
|
||||
company.setCreated(LocalDate.now());
|
||||
return company;
|
||||
}
|
||||
|
||||
public boolean existsCompanyPath(Company company) {
|
||||
public boolean existsCompanyPath(CompanyVo company) {
|
||||
if (!StringUtils.hasText(company.getPath())) {
|
||||
return false;
|
||||
}
|
||||
@@ -81,7 +83,7 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
return path.exists();
|
||||
}
|
||||
|
||||
public boolean checkCompanyPathInBasePath(Company company) {
|
||||
public boolean checkCompanyPathInBasePath(CompanyVo company) {
|
||||
if (!existsCompanyPath(company)) {
|
||||
return false;
|
||||
}
|
||||
@@ -93,7 +95,7 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
return path.getAbsolutePath().startsWith(basePath.getAbsolutePath());
|
||||
}
|
||||
|
||||
public void verifyEnterpriseStatus(Company company, LocalDate verifyDate, MessageHolder holder) {
|
||||
public void verifyEnterpriseStatus(CompanyVo company, LocalDate verifyDate, MessageHolder holder) {
|
||||
// 检查营业状态
|
||||
String entStatus = company.getEntStatus();
|
||||
if (StringUtils.hasText(entStatus)) {
|
||||
@@ -114,7 +116,7 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
}
|
||||
}
|
||||
|
||||
public boolean makePathAbsent(Company company) {
|
||||
public boolean makePathAbsent(CompanyVo company) {
|
||||
String path = company.getPath();
|
||||
if (StringUtils.hasText(path)) {
|
||||
File file = new File(path);
|
||||
@@ -141,7 +143,7 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
* @param company 要创建的企业对象
|
||||
* @return 目录
|
||||
*/
|
||||
public File makePath(Company company) {
|
||||
public File makePath(CompanyVo company) {
|
||||
File basePath = getBasePath();
|
||||
if (!basePath.exists()) {
|
||||
return null;
|
||||
@@ -178,7 +180,7 @@ public class CompanyService extends QueryService<Company, CompanyViewModel> {
|
||||
* @param files 要被移动的文件集合,需要从中选择需要的
|
||||
* @param holder 状态输出
|
||||
*/
|
||||
public boolean retrieveFromDownloadFiles(Company company, File[] files, MessageHolder holder) {
|
||||
public boolean retrieveFromDownloadFiles(CompanyVo company, File[] files, MessageHolder holder) {
|
||||
//
|
||||
boolean companyChanged = makePathAbsent(company);
|
||||
|
||||
|
||||
@@ -2,20 +2,30 @@ package com.ecep.contract.service;
|
||||
|
||||
import java.io.File;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
|
||||
import com.ecep.contract.VendorType;
|
||||
import com.ecep.contract.model.*;
|
||||
import com.ecep.contract.util.MyStringUtils;
|
||||
import com.ecep.contract.util.ProxyUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import com.ecep.contract.MessageHolder;
|
||||
import com.ecep.contract.VendorType;
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyVendor;
|
||||
import com.ecep.contract.model.Contract;
|
||||
import com.ecep.contract.model.VendorCatalog;
|
||||
import com.ecep.contract.model.VendorTypeLocal;
|
||||
import com.ecep.contract.util.MyStringUtils;
|
||||
import com.ecep.contract.util.ParamUtils;
|
||||
import com.ecep.contract.util.ProxyUtils;
|
||||
import com.ecep.contract.vm.CompanyVendorViewModel;
|
||||
import org.springframework.util.StringUtils;
|
||||
import com.ecep.contract.vo.CompanyVo;
|
||||
|
||||
@Service
|
||||
public class CompanyVendorService extends QueryService<CompanyVendor, CompanyVendorViewModel> {
|
||||
@@ -27,14 +37,11 @@ public class CompanyVendorService extends QueryService<CompanyVendor, CompanyVen
|
||||
private CompanyVendorFileService companyVendorFileService;
|
||||
|
||||
public VendorCatalog findCatalogById(Integer id) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'findCatalogById'");
|
||||
}
|
||||
|
||||
public CompanyVendor findByCompany(Company company) {
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("company", company.getId());
|
||||
Page<CompanyVendor> page = findAll(params, Pageable.ofSize(1));
|
||||
public CompanyVendor findByCompany(CompanyVo company) {
|
||||
Page<CompanyVendor> page = findAll(ParamUtils.equal("company", company.getId()), Pageable.ofSize(1));
|
||||
if (page.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
@@ -93,7 +100,8 @@ public class CompanyVendorService extends QueryService<CompanyVendor, CompanyVen
|
||||
if (entStatus.contains("注销")) {
|
||||
holder.error("营业状态异常:" + entStatus + ", 自动设置为不合格");
|
||||
companyVendor.setType(VendorType.UNQUALIFIED);
|
||||
companyVendor.setDescription(MyStringUtils.appendIfAbsent(companyVendor.getDescription(), "自动检测到营业状态为" + entStatus + ",设置为不合格供应商."));
|
||||
companyVendor.setDescription(MyStringUtils.appendIfAbsent(companyVendor.getDescription(),
|
||||
"自动检测到营业状态为" + entStatus + ",设置为不合格供应商."));
|
||||
valid = true;
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -10,8 +10,8 @@ import com.ecep.contract.vm.InventoryViewModel;
|
||||
public class InventoryService extends QueryService<Inventory, InventoryViewModel> {
|
||||
|
||||
public Inventory createNewInstance() {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'createNewInstance'");
|
||||
Inventory inventory = new Inventory();
|
||||
return inventory;
|
||||
}
|
||||
|
||||
public void syncInventory(Inventory inventory, MessageHolder holder) {
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.JsonMappingException;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import javafx.util.StringConverter;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -253,4 +254,7 @@ public class QueryService<T extends IdentityEntity, TV extends IdentityViewModel
|
||||
return pageContent;
|
||||
}
|
||||
|
||||
public StringConverter<T> getStringConverter() {
|
||||
throw new UnsupportedOperationException("Not implemented");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user