refactor(vendor): 重构供应商相关类命名和包结构

将CompanyVendor前缀的类重命名为Vendor前缀,优化包结构
调整供应商相关控制器、服务、仓库类的命名和位置
修复TableViewUtils中的类型安全警告
更新FXML文件中的控制器引用路径
This commit is contained in:
2025-09-23 23:37:44 +08:00
parent 9c3306eea3
commit 9561ad99e6
124 changed files with 613 additions and 520 deletions

View File

@@ -4,10 +4,10 @@ import java.time.LocalDate;
import java.util.Map;
import java.util.Objects;
import com.ecep.contract.model.CompanyVendorFile;
import com.ecep.contract.model.VendorFile;
public class CompanyVendorFileUtils {
public static boolean applyVendorFileByMap(CompanyVendorFile vendorFile, Map<String, Object> m) {
public static boolean applyVendorFileByMap(VendorFile vendorFile, Map<String, Object> m) {
boolean modified = false;
String filePath = (String) m.get("FILE_PATH");

View File

@@ -14,6 +14,7 @@ import java.util.function.Consumer;
import java.util.function.Supplier;
import java.util.stream.Stream;
import com.ecep.contract.ds.vendor.service.VendorService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
@@ -39,8 +40,7 @@ import com.ecep.contract.ds.contract.repository.ContractRepository;
import com.ecep.contract.ds.customer.repository.CompanyCustomerFileRepository;
import com.ecep.contract.ds.customer.repository.CompanyCustomerRepository;
import com.ecep.contract.ds.other.service.SysConfService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorRepository;
import com.ecep.contract.ds.vendor.service.CompanyVendorFileService;
import com.ecep.contract.ds.vendor.service.VendorFileService;
import com.ecep.contract.model.CloudRk;
import com.ecep.contract.model.CloudTyc;
import com.ecep.contract.model.Company;
@@ -51,7 +51,7 @@ import com.ecep.contract.model.CompanyCustomerFile;
import com.ecep.contract.model.CompanyFile;
import com.ecep.contract.model.CompanyOldName;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorFile;
import com.ecep.contract.model.VendorFile;
import com.ecep.contract.model.Contract;
import com.ecep.contract.model.ContractFile;
@@ -90,8 +90,6 @@ public class OldVersionService {
@Autowired
private CompanyCustomerRepository companyCustomerRepository;
@Autowired
private CompanyVendorRepository companyVendorRepository;
@Autowired
private CompanyOldNameRepository companyOldNameRepository;
@Autowired
private ContractRepository contractRepository;
@@ -510,7 +508,8 @@ public class OldVersionService {
if (type == Types.VENDOR) {
String vendorType = (String) map.get("TYPE");
boolean changed = false;
Vendor vendor = companyVendorRepository.findByCompany(updater).orElse(null);
Vendor vendor = SpringApp.getBean(VendorService.class).findByCompany(updater);
if (vendor == null) {
vendor = new Vendor();
vendor.setId(id);
@@ -538,15 +537,15 @@ public class OldVersionService {
}
if (changed) {
companyVendorRepository.save(vendor);
SpringApp.getBean(VendorService.class).save(vendor);
}
CompanyVendorFileService fileService = SpringApp.getBean(CompanyVendorFileService.class);
VendorFileService fileService = SpringApp.getBean(VendorFileService.class);
// 1. 先做数据库排重
List<CompanyVendorFile> files = fileService.findAllByVendor(vendor);
HashMap<String, CompanyVendorFile> fileMap = new HashMap<>();
for (CompanyVendorFile vendorFile : files) {
List<VendorFile> files = fileService.findAllByVendor(vendor);
HashMap<String, VendorFile> fileMap = new HashMap<>();
for (VendorFile vendorFile : files) {
String key = vendorFile.getFilePath();
if (fileMap.containsKey(key)) {
// 有重复删除按List顺序只保留第一个
@@ -564,13 +563,13 @@ public class OldVersionService {
List<Map<String, Object>> rs = queryVendorEvalFormByVendorId(id);
for (Map<String, Object> m : rs) {
String key = CompanyVendorFileUtils.getVendorFileKey(m);
CompanyVendorFile vendorFile = fileMap.get(key);
VendorFile vendorFile = fileMap.get(key);
if (vendorFile == null) {
continue;
}
if (CompanyVendorFileUtils.applyVendorFileByMap(vendorFile, m)) {
CompanyVendorFile saved = fileService.save(vendorFile);
VendorFile saved = fileService.save(vendorFile);
fileMap.put(key, saved);
}
}
@@ -585,7 +584,7 @@ public class OldVersionService {
continue;
}
try {
CompanyVendorFile vendorFile = new CompanyVendorFile();
VendorFile vendorFile = new VendorFile();
CompanyVendorFileUtils.applyVendorFileByMap(vendorFile, m);
vendorFile.setVendor(vendor);
fileService.save(vendorFile);

View File

@@ -8,7 +8,7 @@ import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -35,7 +35,7 @@ public class OldVersionSyncVendorTask extends Tasker<Object> {
@Override
protected Object execute(MessageHolder holder) throws Exception {
basePath = getCachedBean(CompanyVendorService.class).getBasePath();
basePath = getCachedBean(VendorService.class).getBasePath();
List<Runnable> runnable = Arrays.asList(this::loadOldNames, this::loadContacts, this::syncVendors,
this::syncContracts);
for (int i = 0; i < runnable.size(); i++) {

View File

@@ -18,12 +18,12 @@ import com.ecep.contract.cloud.u8.ctx.VendorCtx;
import com.ecep.contract.constant.CloudServiceConstant;
import com.ecep.contract.ds.company.service.CompanyService;
import com.ecep.contract.ds.contract.tasker.AbstContractRepairTasker;
import com.ecep.contract.ds.vendor.service.CompanyVendorEntityService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorEntityService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.CloudYu;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorEntity;
import com.ecep.contract.model.VendorEntity;
import lombok.Setter;
@@ -33,8 +33,8 @@ import lombok.Setter;
public class VendorSyncTask extends AbstContractRepairTasker {
private static final Logger logger = LoggerFactory.getLogger(VendorSyncTask.class);
private final VendorCtx vendorCtx = new VendorCtx();
private CompanyVendorService companyVendorService;
private CompanyVendorEntityService vendorEntityService;
private VendorService vendorService;
private VendorEntityService vendorEntityService;
private YongYouU8Repository repository;
@Setter
private YongYouU8Service yongYouU8Service;
@@ -43,16 +43,16 @@ public class VendorSyncTask extends AbstContractRepairTasker {
updateTitle("用友U8系统-同步供应商");
}
private CompanyVendorService getCompanyVendorService() {
if (companyVendorService == null) {
companyVendorService = SpringApp.getBean(CompanyVendorService.class);
private VendorService getVendorService() {
if (vendorService == null) {
vendorService = SpringApp.getBean(VendorService.class);
}
return companyVendorService;
return vendorService;
}
private CompanyVendorEntityService getVendorEntityService() {
private VendorEntityService getVendorEntityService() {
if (vendorEntityService == null) {
vendorEntityService = SpringApp.getBean(CompanyVendorEntityService.class);
vendorEntityService = SpringApp.getBean(VendorEntityService.class);
}
return vendorEntityService;
}
@@ -82,7 +82,7 @@ public class VendorSyncTask extends AbstContractRepairTasker {
String venCode = (String) rs.get("cVenCode");
MessageHolder subHolder = holder.sub(counter.get() + " / " + total + "> " + venCode + " ");
boolean modified = false;
CompanyVendorEntity entity = vendorCtx.findOrCreateByCode(venCode, subHolder);
VendorEntity entity = vendorCtx.findOrCreateByCode(venCode, subHolder);
Map<String, Object> map = repository.findVendorByVendCode(entity.getCode());
if (map == null) {
subHolder.error("供应商项不存在:" + venCode);
@@ -107,13 +107,13 @@ public class VendorSyncTask extends AbstContractRepairTasker {
}
}
private void updateCloudYu(CompanyVendorEntity entity) {
private void updateCloudYu(VendorEntity entity) {
Vendor vendor = entity.getVendor();
if (vendor == null) {
return;
}
if (!Hibernate.isInitialized(vendor)) {
vendor = getCompanyVendorService().findById(vendor.getId());
vendor = getVendorService().findById(vendor.getId());
}
Company company = vendor.getCompany();
if (company == null) {
@@ -129,14 +129,14 @@ public class VendorSyncTask extends AbstContractRepairTasker {
yongYouU8Service.save(cloudYu);
}
private void updateCompanyNameAndAbbName(CompanyVendorEntity entity, MessageHolder holder) {
private void updateCompanyNameAndAbbName(VendorEntity entity, MessageHolder holder) {
CompanyService companyService = vendorCtx.getCompanyService();
Vendor vendor = entity.getVendor();
if (vendor == null) {
return;
}
if (!Hibernate.isInitialized(vendor)) {
vendor = getCompanyVendorService().findById(vendor.getId());
vendor = getVendorService().findById(vendor.getId());
}
Company company = vendor.getCompany();
if (company == null) {

View File

@@ -23,7 +23,7 @@ import com.ecep.contract.cloud.u8.ctx.AbstractYongYouU8Ctx;
import com.ecep.contract.ds.company.service.CompanyService;
import com.ecep.contract.ds.customer.service.CompanyCustomerService;
import com.ecep.contract.ds.other.service.EmployeeService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.CloudYu;
import com.ecep.contract.model.Company;
import com.fasterxml.jackson.databind.JsonNode;
@@ -50,7 +50,7 @@ public class YongYouU8Service implements IEntityService<CloudYu>, QueryService<C
private CompanyService companyService;
@Lazy
@Autowired
private CompanyVendorService companyVendorService;
private VendorService vendorService;
@Lazy
@Autowired
private CloudYuRepository cloudYuRepository;

View File

@@ -15,13 +15,13 @@ import com.ecep.contract.constant.CloudServiceConstant;
import com.ecep.contract.ds.company.service.CompanyService;
import com.ecep.contract.ds.customer.service.CompanyCustomerEntityService;
import com.ecep.contract.ds.customer.service.CompanyCustomerService;
import com.ecep.contract.ds.vendor.service.CompanyVendorEntityService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorEntityService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.CompanyCustomer;
import com.ecep.contract.model.CompanyCustomerEntity;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorEntity;
import com.ecep.contract.model.VendorEntity;
import com.ecep.contract.model.Employee;
import lombok.Getter;
@@ -59,12 +59,12 @@ public class AbstractYongYouU8Ctx extends AbstractCtx {
return getCachedBean(CompanyCustomerEntityService.class);
}
public CompanyVendorService getCompanyVendorService() {
return getCachedBean(CompanyVendorService.class);
public VendorService getCompanyVendorService() {
return getCachedBean(VendorService.class);
}
public CompanyVendorEntityService getCompanyVendorEntityService() {
return getCachedBean(CompanyVendorEntityService.class);
public VendorEntityService getCompanyVendorEntityService() {
return getCachedBean(VendorEntityService.class);
}
boolean updateEmployeeByCode(Supplier<Employee> getter, Consumer<Employee> setter, String code,
@@ -139,9 +139,9 @@ public class AbstractYongYouU8Ctx extends AbstractCtx {
MessageHolder holder, String topic) {
Company company = null;
if (StringUtils.hasText(vendorCode)) {
CompanyVendorEntityService vendorEntityService = getCompanyVendorEntityService();
CompanyVendorService customerService = getCompanyVendorService();
CompanyVendorEntity entity = vendorEntityService.findByCode(vendorCode);
VendorEntityService vendorEntityService = getCompanyVendorEntityService();
VendorService customerService = getCompanyVendorService();
VendorEntity entity = vendorEntityService.findByCode(vendorCode);
if (entity == null) {
holder.warn("无效" + topic + "" + vendorCode);
} else {

View File

@@ -32,13 +32,13 @@ import com.ecep.contract.ds.customer.service.CompanyCustomerEntityService;
import com.ecep.contract.ds.customer.service.CompanyCustomerService;
import com.ecep.contract.ds.project.ProjectCtx;
import com.ecep.contract.ds.project.service.ProjectSaleTypeService;
import com.ecep.contract.ds.vendor.service.CompanyVendorEntityService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorEntityService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.CompanyCustomer;
import com.ecep.contract.model.CompanyCustomerEntity;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorEntity;
import com.ecep.contract.model.VendorEntity;
import com.ecep.contract.model.Contract;
import com.ecep.contract.model.ContractCatalog;
import com.ecep.contract.model.ContractFile;
@@ -334,11 +334,11 @@ public class ContractCtx extends AbstractYongYouU8Ctx {
Company company = contract.getCompany();
boolean modified = false;
boolean vendorModified = false;
CompanyVendorService vendorService = getCompanyVendorService();
CompanyVendorEntityService vendorEntityService = getCompanyVendorEntityService();
CompanyVendorEntity entity = vendorEntityService.findByCode(unit);
VendorService vendorService = getCompanyVendorService();
VendorEntityService vendorEntityService = getCompanyVendorEntityService();
VendorEntity entity = vendorEntityService.findByCode(unit);
if (entity == null) {
entity = new CompanyVendorEntity();
entity = new VendorEntity();
entity.setCode(unit);
}
entity = updateVendorEntityDetailByCode(entity, unit, holder);
@@ -407,8 +407,8 @@ public class ContractCtx extends AbstractYongYouU8Ctx {
return true;
}
private CompanyVendorEntity updateVendorEntityDetailByCode(CompanyVendorEntity entity, String unitCode,
MessageHolder holder) {
private VendorEntity updateVendorEntityDetailByCode(VendorEntity entity, String unitCode,
MessageHolder holder) {
if (vendorEntityUpdateDelayDays > 0) {
LocalDateTime today = LocalDateTime.now();
if (entity.getFetchedTime() != null) {
@@ -574,7 +574,7 @@ public class ContractCtx extends AbstractYongYouU8Ctx {
return getContractService().findByCode(contractCode);
}
public boolean syncByVendorEntity(Vendor vendor, CompanyVendorEntity entity, MessageHolder holder) {
public boolean syncByVendorEntity(Vendor vendor, VendorEntity entity, MessageHolder holder) {
String code = entity.getCode();
holder.debug("同步供应商相关项 " + code + "," + entity.getName() + " 的合同");
if (!StringUtils.hasText(code)) {

View File

@@ -22,7 +22,7 @@ import com.ecep.contract.ds.contract.service.PurchaseOrderItemService;
import com.ecep.contract.ds.contract.service.PurchaseOrdersService;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorEntity;
import com.ecep.contract.model.VendorEntity;
import com.ecep.contract.model.Contract;
import com.ecep.contract.model.Inventory;
import com.ecep.contract.model.Invoice;
@@ -111,10 +111,10 @@ public class PurchaseBillVoucherCtx extends AbstractYongYouU8Ctx {
Vendor vendor = getCompanyVendorService().findByCompany(company);
if (vendor != null) {
List<CompanyVendorEntity> entities = getCompanyVendorEntityService().findAllByVendor(vendor);
List<VendorEntity> entities = getCompanyVendorEntityService().findAllByVendor(vendor);
holder.debug(company.getName() + ""
+ entities.stream().map(CompanyVendorEntity::getCode).collect(Collectors.joining(", ")) + " 关联项");
for (CompanyVendorEntity entity : entities) {
+ entities.stream().map(VendorEntity::getCode).collect(Collectors.joining(", ")) + " 关联项");
for (VendorEntity entity : entities) {
// 查询 U8 数据库
List<Map<String, Object>> ds = repository.findAllPurchaseBillVoucherByVendorCode(entity.getCode());
holder.debug(

View File

@@ -15,11 +15,11 @@ import com.ecep.contract.MessageHolder;
import com.ecep.contract.SpringApp;
import com.ecep.contract.cloud.old.OldVersionService;
import com.ecep.contract.ds.company.service.CompanyService;
import com.ecep.contract.ds.vendor.service.CompanyVendorEntityService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorEntityService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.CompanyVendorEntity;
import com.ecep.contract.model.VendorEntity;
import com.ecep.contract.model.VendorCatalog;
import lombok.Setter;
@@ -27,7 +27,7 @@ import lombok.Setter;
public class VendorCtx extends AbstractYongYouU8Ctx {
private static final String AUTO_CREATE_VENDOR_AFTER = "cloud.u8.auto-create-vendor-after";
@Setter
private CompanyVendorService companyVendorService;
private VendorService vendorService;
@Setter
private CompanyCtx companyCtx;
@Setter
@@ -66,14 +66,14 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
* @param unitCode 供应商相关项编码
* @param holder 消息
*/
public CompanyVendorEntity updateVendorEntityDetailByCode(CompanyVendorEntity item, String unitCode, MessageHolder holder) {
public VendorEntity updateVendorEntityDetailByCode(VendorEntity item, String unitCode, MessageHolder holder) {
if (applyEntityDetail(item, repository.findVendorByVendCode(unitCode), holder)) {
item = save(item);
}
return item;
}
public boolean applyEntityDetail(CompanyVendorEntity item, Map<String, Object> map, MessageHolder holder) {
public boolean applyEntityDetail(VendorEntity item, Map<String, Object> map, MessageHolder holder) {
if (map == null || map.isEmpty()) {
holder.warn("Vendor 中未检索到供应商数据");
return false;
@@ -199,7 +199,7 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
}
// 检索相关项
List<CompanyVendorEntity> entities = getCompanyVendorEntityService().findAllByVendor(vendor);
List<VendorEntity> entities = getCompanyVendorEntityService().findAllByVendor(vendor);
if (entities.isEmpty()) {
holder.error("供应商关联任何相关项");
return false;
@@ -209,7 +209,7 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
boolean companyModified = false;
// 更新相关项
for (CompanyVendorEntity entity : entities) {
for (VendorEntity entity : entities) {
if (!StringUtils.hasText(entity.getCode())) {
holder.warn("相关项:" + entity.getCode() + " 无效,跳过");
continue;
@@ -234,7 +234,7 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
}
// 同步供应商关联的合同
for (CompanyVendorEntity entity : entities) {
for (VendorEntity entity : entities) {
if (getContractCtx().syncByVendorEntity(vendor, entity, holder)) {
updated = true;
}
@@ -242,7 +242,7 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
return updated;
}
private boolean updateCompanyNameAndAbbNameByVendorEntity(Company company, CompanyVendorEntity entity, MessageHolder holder) {
private boolean updateCompanyNameAndAbbNameByVendorEntity(Company company, VendorEntity entity, MessageHolder holder) {
CompanyService companyService = getCompanyService();
if (company == null) {
return false;
@@ -261,9 +261,9 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
return modified;
}
private boolean updateVendorDevelopDate(Vendor vendor, List<CompanyVendorEntity> entities, MessageHolder holder) {
private boolean updateVendorDevelopDate(Vendor vendor, List<VendorEntity> entities, MessageHolder holder) {
LocalDate developDate = null;
for (CompanyVendorEntity entity : entities) {
for (VendorEntity entity : entities) {
// 取最早的开发日期
if (developDate == null || entity.getDevelopDate().isBefore(developDate)) {
developDate = entity.getDevelopDate();
@@ -272,11 +272,11 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
return updateLocalDate(vendor::getDevelopDate, vendor::setDevelopDate, developDate, holder, "开发日期");
}
public CompanyVendorEntity findOrCreateByCode(String venCode, MessageHolder subHolder) {
CompanyVendorEntityService service = getCompanyVendorEntityService();
CompanyVendorEntity entity = service.findByCode(venCode);
public VendorEntity findOrCreateByCode(String venCode, MessageHolder subHolder) {
VendorEntityService service = getCompanyVendorEntityService();
VendorEntity entity = service.findByCode(venCode);
if (entity == null) {
entity = new CompanyVendorEntity();
entity = new VendorEntity();
entity.setCode(venCode);
entity = service.save(entity);
subHolder.info("创建供应商相关项: " + venCode);
@@ -284,7 +284,7 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
return entity;
}
private Vendor createVendorByVendorEntity(CompanyVendorEntity entity, MessageHolder holder) {
private Vendor createVendorByVendorEntity(VendorEntity entity, MessageHolder holder) {
LocalDate developDate = entity.getDevelopDate();
if (developDate == null) {
holder.warn(entity.getName() + " 没有设置开发日期,跳过");
@@ -313,13 +313,13 @@ public class VendorCtx extends AbstractYongYouU8Ctx {
}
private Company findOrCreateCompanyByVendorEntity(CompanyVendorEntity entity, MessageHolder holder) {
private Company findOrCreateCompanyByVendorEntity(VendorEntity entity, MessageHolder holder) {
String name = entity.getName();
String abbName = entity.getAbbName();
return getCompanyCtx().findOrCreateByNameOrAbbName(name, abbName, entity.getDevelopDate(), holder);
}
public CompanyVendorEntity save(CompanyVendorEntity entity) {
public VendorEntity save(VendorEntity entity) {
return getCompanyVendorEntityService().save(entity);
}

View File

@@ -25,7 +25,7 @@ import com.ecep.contract.ds.other.repository.HolidayTableRepository;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.CompanyBasicFile;
import com.ecep.contract.model.CompanyCustomerFile;
import com.ecep.contract.model.CompanyVendorFile;
import com.ecep.contract.model.VendorFile;
import com.ecep.contract.model.HolidayTable;
public abstract class CompanyBasicService {
@@ -161,7 +161,7 @@ public abstract class CompanyBasicService {
* @param <T> 类型类
* @param <F> 文件类
* @return 是否修改了
* @see CompanyVendorFile
* @see VendorFile
* @see VendorFileType
* @see CompanyCustomerFile
* @see CustomerFileType

View File

@@ -12,7 +12,7 @@ import com.ecep.contract.ds.company.repository.CompanyRepository;
import com.ecep.contract.ds.contract.service.ContractService;
import com.ecep.contract.ds.customer.service.CompanyCustomerService;
import com.ecep.contract.ds.other.service.SysConfService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.CompanyCustomer;
import com.ecep.contract.model.CompanyOldName;
@@ -63,7 +63,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
private ContractService contractService;
@Lazy
@Autowired
private CompanyVendorService companyVendorService;
private VendorService vendorService;
@Lazy
@Autowired
private CompanyCustomerService companyCustomerService;
@@ -254,7 +254,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
* <p>
* 删除前需要把关联数据解除
* <ul>
* <li>{@link CompanyVendorService#deleteByCompany(Company)}</li>
* <li>{@link VendorService#deleteByCompany(Company)}</li>
* <li>{@link CompanyCustomerService#deleteByCompany(Company)}</li>
* <li>{@link CompanyOldNameService#deleteByCompany(Company)}</li>
* <li>{@link CompanyContactService#deleteByCompany(Company)}</li>
@@ -263,7 +263,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
* </ul>
* 或者 把关联数据转移到其他公司
* <ul>
* <li>{@link CompanyVendorService#resetTo(Company, Company)}</li>
* <li>{@link VendorService#resetTo(Company, Company)}</li>
* <li>{@link CompanyCustomerService#resetTo(Company, Company)}</li>
* <li>{@link CompanyOldNameService#resetTo(Company, Company)}</li>
* <li>{@link CompanyContactService#resetTo(Company, Company)}</li>
@@ -286,7 +286,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
companyOldNameService.deleteByCompany(company);
companyContactService.deleteByCompany(company);
// 供应商和客户
companyVendorService.deleteByCompany(company);
vendorService.deleteByCompany(company);
companyCustomerService.deleteByCompany(company);
contractService.deleteByCompany(company);
@@ -320,7 +320,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
companyOldNameService.resetTo(from, to);
companyContactService.resetTo(from, to);
// 供应商和客户
companyVendorService.resetTo(from, to);
vendorService.resetTo(from, to);
companyCustomerService.resetTo(from, to);
contractService.resetTo(from, to);
@@ -465,7 +465,7 @@ public class CompanyService extends EntityService<Company, Integer> implements I
});
}
List<Vendor> searchedVendors = companyVendorService.search(searchText);
List<Vendor> searchedVendors = vendorService.search(searchText);
if (!searchedVendors.isEmpty()) {
spec = SpecificationUtils.or(spec, (root, query, builder) -> {
return builder.in(root.get("id")).value(searchedVendors.stream()

View File

@@ -44,7 +44,7 @@ import com.ecep.contract.ds.project.service.ProjectQuotationService;
import com.ecep.contract.ds.project.service.ProjectSaleTypeRequireFileTypeService;
import com.ecep.contract.ds.project.service.ProjectService;
import com.ecep.contract.ds.project.service.ProjectSaleTypeService;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.ds.vendor.service.VendorGroupRequireFileTypeService;
import com.ecep.contract.ds.vendor.service.VendorGroupService;
import com.ecep.contract.model.Company;
@@ -88,7 +88,7 @@ public class ContractVerifyComm {
private CompanyService companyService;
private CompanyFileService companyFileService;
// Vendor
private CompanyVendorService companyVendorService;
private VendorService vendorService;
private VendorGroupService vendorGroupService;
private VendorGroupRequireFileTypeService vendorGroupRequireFileTypeService;
private ExtendVendorInfoService extendVendorInfoService;
@@ -204,11 +204,11 @@ public class ContractVerifyComm {
return extendVendorInfoService;
}
private CompanyVendorService getCompanyVendorService() {
if (companyVendorService == null) {
companyVendorService = SpringApp.getBean(CompanyVendorService.class);
private VendorService getVendorService() {
if (vendorService == null) {
vendorService = SpringApp.getBean(VendorService.class);
}
return companyVendorService;
return vendorService;
}
private CompanyCustomerService getCompanyCustomerService() {
@@ -431,7 +431,7 @@ public class ContractVerifyComm {
}
}
if (verifyVendor) {
getCompanyVendorService().verify(contract, holder);
getVendorService().verify(contract, holder);
}
if (verifyVendorFiles) {

View File

@@ -181,6 +181,7 @@ public class CompanyCustomerService extends CompanyBasicService
return modified;
}
@SuppressWarnings("unchecked")
@Override
protected <T, F extends CompanyBasicFile<T>> boolean fillFileAsDefaultType(F dbFile, File file,
Consumer<String> status) {
@@ -249,7 +250,7 @@ public class CompanyCustomerService extends CompanyBasicService
logger.info("delete json file {}", jsonFile.getName());
}
}
@SuppressWarnings("unchecked")
@Override
protected <T, F extends CompanyBasicFile<T>> F fillFileType(File file, List<File> fileList,
Consumer<String> status) {
@@ -260,7 +261,7 @@ public class CompanyCustomerService extends CompanyBasicService
}
return null;
}
@SuppressWarnings("unchecked")
@Override
protected <T, F extends CompanyBasicFile<T>> boolean setFileTypeAsEvaluationForm(F file) {
T type = file.getType();

View File

@@ -8,7 +8,7 @@ import com.ecep.contract.ds.MyRepository;
import com.ecep.contract.model.VendorApprovedFile;
@Repository
public interface CompanyVendorApprovedFileRepository extends MyRepository<VendorApprovedFile, Integer> {
public interface VendorApprovedFileRepository extends MyRepository<VendorApprovedFile, Integer> {
List<VendorApprovedFile> findAllByListId(int listId);

View File

@@ -14,7 +14,7 @@ import com.ecep.contract.model.VendorApproved;
* 合格供方名录
*/
@Repository
public interface CompanyVendorApprovedItemRepository extends
public interface VendorApprovedItemRepository extends
JpaRepository<VendorApprovedItem, Integer>, JpaSpecificationExecutor<VendorApprovedItem> {
List<VendorApprovedItem> findAllByList(VendorApproved list);

View File

@@ -10,7 +10,7 @@ import com.ecep.contract.model.VendorApproved;
* 合格供方名录
*/
@Repository
public interface CompanyVendorApprovedListRepository extends
public interface VendorApprovedRepository extends
JpaRepository<VendorApproved, Integer>, JpaSpecificationExecutor<VendorApproved>

View File

@@ -10,7 +10,7 @@ import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.VendorEntity;
@Repository
public interface CompanyVendorEntityRepository extends MyRepository<VendorEntity, Integer> {
public interface VendorEntityRepository extends MyRepository<VendorEntity, Integer> {
Optional<VendorEntity> findByCode(String code);
List<VendorEntity> findByVendor(Vendor vendor);

View File

@@ -11,7 +11,7 @@ import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.VendorFile;
@Repository
public interface CompanyVendorFileRepository
public interface VendorFileRepository
extends JpaRepository<VendorFile, Integer>, JpaSpecificationExecutor<VendorFile> {
List<VendorFile> findAllByVendorId(int vendorId);

View File

@@ -16,7 +16,7 @@ import com.ecep.contract.model.VendorCatalog;
* 供应商 Repository
*/
@Repository
public interface CompanyVendorRepository extends MyRepository<Vendor, Integer> {
public interface VendorRepository extends MyRepository<Vendor, Integer> {
List<Vendor> findAllByCatalog(VendorCatalog catalog);

View File

@@ -10,16 +10,16 @@ import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Service;
import com.ecep.contract.IEntityService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorApprovedFileRepository;
import com.ecep.contract.ds.vendor.repository.VendorApprovedFileRepository;
import com.ecep.contract.model.VendorApprovedFile;
import com.ecep.contract.model.VendorApproved;
@Lazy
@Service
public class CompanyVendorApprovedFileService implements IEntityService<VendorApprovedFile> {
public class VendorApprovedFileService implements IEntityService<VendorApprovedFile> {
@Lazy
@Autowired
private CompanyVendorApprovedFileRepository repository;
private VendorApprovedFileRepository repository;
/**
* 根据ID查找供应商已批准文件

View File

@@ -16,7 +16,7 @@ import org.springframework.stereotype.Service;
import com.ecep.contract.IEntityService;
import com.ecep.contract.ds.company.service.CompanyOldNameService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorApprovedItemRepository;
import com.ecep.contract.ds.vendor.repository.VendorApprovedItemRepository;
import com.ecep.contract.model.Company;
import com.ecep.contract.model.CompanyOldName;
import com.ecep.contract.model.Vendor;
@@ -28,10 +28,10 @@ import jakarta.persistence.criteria.Predicate;
@Lazy
@Service
public class CompanyVendorApprovedItemService implements IEntityService<VendorApprovedItem>, QueryService<VendorApprovedItem> {
public class VendorApprovedItemService implements IEntityService<VendorApprovedItem>, QueryService<VendorApprovedItem> {
@Lazy
@Autowired
private CompanyVendorApprovedItemRepository repository;
private VendorApprovedItemRepository repository;
@Lazy
@Autowired
private CompanyOldNameService companyOldNameService;

View File

@@ -6,7 +6,7 @@ import com.ecep.contract.MyDateTimeUtils;
import com.ecep.contract.QueryService;
import com.ecep.contract.constant.CompanyVendorConstant;
import com.ecep.contract.ds.other.service.SysConfService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorApprovedListRepository;
import com.ecep.contract.ds.vendor.repository.VendorApprovedRepository;
import com.ecep.contract.model.VendorApprovedFile;
import com.ecep.contract.model.VendorApproved;
import com.ecep.contract.util.FileUtils;
@@ -33,17 +33,17 @@ import java.util.function.Consumer;
@Lazy
@Service
public class CompanyVendorApprovedListService implements IEntityService<VendorApproved>, QueryService<VendorApproved> {
private static final Logger logger = LoggerFactory.getLogger(CompanyVendorApprovedListService.class);
public class VendorApprovedService implements IEntityService<VendorApproved>, QueryService<VendorApproved> {
private static final Logger logger = LoggerFactory.getLogger(VendorApprovedService.class);
@Lazy
@Autowired
private CompanyVendorApprovedListRepository repository;
private VendorApprovedRepository repository;
@Lazy
@Autowired
private CompanyVendorApprovedItemService itemService;
private VendorApprovedItemService itemService;
@Lazy
@Autowired
private CompanyVendorApprovedFileService fileService;
private VendorApprovedFileService fileService;
@Lazy
@Autowired

View File

@@ -16,7 +16,7 @@ import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import com.ecep.contract.IEntityService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorEntityRepository;
import com.ecep.contract.ds.vendor.repository.VendorEntityRepository;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.VendorEntity;
import com.ecep.contract.util.SpecificationUtils;
@@ -25,10 +25,10 @@ import com.fasterxml.jackson.databind.JsonNode;
@Lazy
@Service
@CacheConfig(cacheNames = "company-vendor-entity")
public class CompanyVendorEntityService implements IEntityService<VendorEntity>, QueryService<VendorEntity> {
public class VendorEntityService implements IEntityService<VendorEntity>, QueryService<VendorEntity> {
@Lazy
@Autowired
private CompanyVendorEntityRepository repository;
private VendorEntityRepository repository;
@Cacheable(key = "#p0")
@Override

View File

@@ -22,7 +22,7 @@ import org.springframework.stereotype.Service;
import com.ecep.contract.ds.company.service.CompanyBasicService;
import com.ecep.contract.ds.contract.service.ContractFileService;
import com.ecep.contract.ds.contract.service.ContractService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorFileRepository;
import com.ecep.contract.ds.vendor.repository.VendorFileRepository;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.model.VendorFile;
import com.ecep.contract.model.Contract;
@@ -30,13 +30,13 @@ import com.ecep.contract.model.Contract;
@Lazy
@Service
public class CompanyVendorFileService implements IEntityService<VendorFile>, QueryService<VendorFile> {
public class VendorFileService implements IEntityService<VendorFile>, QueryService<VendorFile> {
private static final Logger logger = LoggerFactory.getLogger(CompanyVendorFileService.class);
private static final Logger logger = LoggerFactory.getLogger(VendorFileService.class);
@Autowired
private CompanyVendorFileRepository repository;
private VendorFileRepository repository;
@Autowired
private ContractFileService contractFileService;

View File

@@ -4,8 +4,6 @@ import java.util.List;
import com.ecep.contract.IEntityService;
import com.ecep.contract.QueryService;
import com.ecep.contract.model.CompanyVendorFile;
import com.ecep.contract.util.SpecificationUtils;
import com.fasterxml.jackson.databind.JsonNode;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheConfig;

View File

@@ -5,7 +5,7 @@ import com.ecep.contract.constant.CompanyVendorConstant;
import com.ecep.contract.constant.ServiceConstant;
import com.ecep.contract.ds.company.service.CompanyBasicService;
import com.ecep.contract.ds.other.service.SysConfService;
import com.ecep.contract.ds.vendor.repository.CompanyVendorRepository;
import com.ecep.contract.ds.vendor.repository.VendorRepository;
import com.ecep.contract.ds.vendor.repository.VendorClassRepository;
import com.ecep.contract.ds.vendor.repository.VendorTypeLocalRepository;
import com.ecep.contract.model.*;
@@ -39,23 +39,23 @@ import java.util.stream.Collectors;
@Lazy
@Service
@CacheConfig(cacheNames = CompanyVendorConstant.CACHE_NAME)
public class CompanyVendorService extends CompanyBasicService
public class VendorService extends CompanyBasicService
implements IEntityService<Vendor>, QueryService<Vendor> {
private static final Logger logger = LoggerFactory.getLogger(CompanyVendorService.class);
private static final Logger logger = LoggerFactory.getLogger(VendorService.class);
@Lazy
@Autowired
private CompanyVendorRepository companyVendorRepository;
private VendorRepository repository;
@Lazy
@Autowired
private CompanyVendorFileService companyVendorFileService;
private VendorFileService vendorFileService;
@Lazy
@Autowired
private SysConfService confService;
@Lazy
@Autowired
private CompanyVendorEntityService companyVendorEntityService;
private VendorEntityService vendorEntityService;
@Lazy
@Autowired
private VendorTypeLocalRepository vendorTypeLocalRepository;
@@ -64,11 +64,11 @@ public class CompanyVendorService extends CompanyBasicService
@Cacheable(key = "#p0")
public Vendor findById(Integer id) {
return companyVendorRepository.findById(id).orElse(null);
return repository.findById(id).orElse(null);
}
public Page<Vendor> findAll(Specification<Vendor> spec, Pageable pageable) {
return companyVendorRepository.findAll(spec, pageable);
return repository.findAll(spec, pageable);
}
@Override
@@ -87,14 +87,14 @@ public class CompanyVendorService extends CompanyBasicService
}
public Vendor findByCompany(Company company) {
return companyVendorRepository.findByCompany(company).orElse(null);
return repository.findByCompany(company).orElse(null);
}
@Caching(evict = {
@CacheEvict(key = "#p0.id")
})
public Vendor save(Vendor vendor) {
return companyVendorRepository.save(vendor);
return repository.save(vendor);
}
@Caching(evict = {
@@ -102,7 +102,7 @@ public class CompanyVendorService extends CompanyBasicService
})
@Override
public void delete(Vendor entity) {
companyVendorRepository.delete(entity);
repository.delete(entity);
}
@Override
@@ -125,7 +125,7 @@ public class CompanyVendorService extends CompanyBasicService
} catch (Exception ignored) {
}
}
List<VendorEntity> searched = companyVendorEntityService.search(searchText);
List<VendorEntity> searched = vendorEntityService.search(searchText);
if (!searched.isEmpty()) {
nameSpec = SpecificationUtils.or(nameSpec, (root, query, builder) -> {
return builder.in(root.get("id")).value(searched.stream()
@@ -141,12 +141,12 @@ public class CompanyVendorService extends CompanyBasicService
@Override
public List<Vendor> search(String searchText) {
Specification<Vendor> spec = getSpecification(searchText);
return companyVendorRepository.findAll(spec, Pageable.ofSize(10)).getContent();
return repository.findAll(spec, Pageable.ofSize(10)).getContent();
}
@Override
public <T, F extends CompanyBasicFile<T>, ID> void deleteFile(F file) {
companyVendorFileService.delete((VendorFile) file);
vendorFileService.delete((VendorFile) file);
}
public File getBasePath() {
@@ -160,7 +160,7 @@ public class CompanyVendorService extends CompanyBasicService
* @param status 输出
*/
public boolean reBuildingFiles(Vendor vendor, Consumer<String> status) {
List<VendorFile> dbFiles = companyVendorFileService.findAllByVendor(vendor);
List<VendorFile> dbFiles = vendorFileService.findAllByVendor(vendor);
Map<String, VendorFile> map = new HashMap<>();
boolean modified = fetchDbFiles(dbFiles, map, status);
@@ -180,7 +180,7 @@ public class CompanyVendorService extends CompanyBasicService
if (!retrieveFiles.isEmpty()) {
// update db
retrieveFiles.forEach(v -> v.setVendor(vendor));
companyVendorFileService.saveAll(retrieveFiles);
vendorFileService.saveAll(retrieveFiles);
modified = true;
}
@@ -193,7 +193,7 @@ public class CompanyVendorService extends CompanyBasicService
Consumer<String> status) {
dbFile.setType((T) VendorFileType.General);
fillFile(dbFile, file, null, status);
companyVendorFileService.save((VendorFile) dbFile);
vendorFileService.save((VendorFile) dbFile);
return true;
}
@@ -336,10 +336,10 @@ public class CompanyVendorService extends CompanyBasicService
holder.error("未设置文件夹");
}
companyVendorFileService.verify(vendor, verifyDate, holder);
vendorFileService.verify(vendor, verifyDate, holder);
if (modified) {
companyVendorRepository.save(vendor);
repository.save(vendor);
}
return modified;
}
@@ -401,17 +401,17 @@ public class CompanyVendorService extends CompanyBasicService
}
public void resetTo(Company from, Company to) {
Optional<Vendor> optional = companyVendorRepository.findByCompany(from);
Optional<Vendor> optional = repository.findByCompany(from);
optional.ifPresent(companyVendor -> {
companyVendor
.setDescription(MyStringUtils.appendIfAbsent(companyVendor.getDescription(), "转自 " + from.getId()));
companyVendor.setCompany(to);
companyVendorRepository.save(companyVendor);
repository.save(companyVendor);
});
}
public void deleteByCompany(Company company) {
int deleted = companyVendorRepository.deleteAllByCompany(company);
int deleted = repository.deleteAllByCompany(company);
if (deleted > 0) {
if (logger.isInfoEnabled()) {
logger.info("Delete {} records by company:#{}", deleted, company.getId());
@@ -449,7 +449,7 @@ public class CompanyVendorService extends CompanyBasicService
}
public long count(Specification<Vendor> spec) {
return companyVendorRepository.count(spec);
return repository.count(spec);
}
}

View File

@@ -15,7 +15,7 @@ import org.springframework.util.StringUtils;
import com.ecep.contract.MessageHolder;
import com.ecep.contract.ds.contract.tasker.ContractRepairComm;
import com.ecep.contract.ds.vendor.service.CompanyVendorService;
import com.ecep.contract.ds.vendor.service.VendorService;
import com.ecep.contract.model.Vendor;
import com.ecep.contract.ui.Tasker;
@@ -33,7 +33,7 @@ public class VendorVerifyAllTasker extends Tasker<Object> {
AtomicInteger counter = new AtomicInteger(0);
Specification<Vendor> spec = null;
CompanyVendorService vendorService = getBean(CompanyVendorService.class);
VendorService vendorService = getBean(VendorService.class);
long total = vendorService.count(spec);
while (true) {
if (isCancelled()) {