refactor(service): 实现VoableService接口以统一VO与实体映射逻辑
refactor(model): 重构实体类与VO类的字段映射关系 style: 调整代码格式与注释 fix: 修复部分字段映射错误
This commit is contained in:
@@ -28,6 +28,7 @@ import org.springframework.util.StringUtils;
|
||||
|
||||
import com.ecep.contract.BlackReasonType;
|
||||
import com.ecep.contract.IEntityService;
|
||||
import com.ecep.contract.SpringApp;
|
||||
import com.ecep.contract.cloud.CloudInfo;
|
||||
import com.ecep.contract.ds.company.repository.CompanyBlackReasonRepository;
|
||||
import com.ecep.contract.ds.company.repository.CompanyOldNameRepository;
|
||||
@@ -36,9 +37,11 @@ import com.ecep.contract.ds.other.service.SysConfService;
|
||||
import com.ecep.contract.model.CloudRk;
|
||||
import com.ecep.contract.model.Company;
|
||||
import com.ecep.contract.model.CompanyBlackReason;
|
||||
import com.ecep.contract.service.VoableService;
|
||||
import com.ecep.contract.util.FileUtils;
|
||||
import com.ecep.contract.util.HttpJsonUtils;
|
||||
import com.ecep.contract.util.MyStringUtils;
|
||||
import com.ecep.contract.vo.CloudRkVo;
|
||||
import com.fasterxml.jackson.annotation.JsonAlias;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.fasterxml.jackson.databind.JsonMappingException;
|
||||
@@ -52,7 +55,7 @@ import lombok.Data;
|
||||
@Lazy
|
||||
@Service
|
||||
@CacheConfig(cacheNames = "cloud-rk")
|
||||
public class CloudRkService implements IEntityService<CloudRk> {
|
||||
public class CloudRkService implements IEntityService<CloudRk>, VoableService<CloudRk, CloudRkVo> {
|
||||
private static final Logger logger = LoggerFactory.getLogger(CloudRkService.class);
|
||||
|
||||
public static final String KEY_PROXY = "cloud.rk.proxy";
|
||||
@@ -375,4 +378,68 @@ public class CloudRkService implements IEntityService<CloudRk> {
|
||||
}
|
||||
cloudRKRepository.saveAll(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateByVo(CloudRk cloudRk, CloudRkVo vo) {
|
||||
if (cloudRk == null || vo == null) {
|
||||
throw new IllegalArgumentException("CloudRk and CloudRkVo cannot be null");
|
||||
}
|
||||
|
||||
// 更新基本属性
|
||||
if (vo.getCloudId() != null) {
|
||||
cloudRk.setCloudId(vo.getCloudId());
|
||||
}
|
||||
|
||||
cloudRk.setAutoUpdate(vo.isAutoUpdate());
|
||||
cloudRk.setUpdateDays(vo.getUpdateDays());
|
||||
|
||||
if (vo.getCustomerGrade() != null) {
|
||||
cloudRk.setCustomerGrade(vo.getCustomerGrade());
|
||||
}
|
||||
if (vo.getCustomerScore() != null) {
|
||||
cloudRk.setCustomerScore(vo.getCustomerScore());
|
||||
}
|
||||
if (vo.getCustomerDescription() != null) {
|
||||
cloudRk.setCustomerDescription(vo.getCustomerDescription());
|
||||
}
|
||||
if (vo.getVendorGrade() != null) {
|
||||
cloudRk.setVendorGrade(vo.getVendorGrade());
|
||||
}
|
||||
if (vo.getVendorScore() != null) {
|
||||
cloudRk.setVendorScore(vo.getVendorScore());
|
||||
}
|
||||
if (vo.getVendorDescription() != null) {
|
||||
cloudRk.setVendorDescription(vo.getVendorDescription());
|
||||
}
|
||||
if (vo.getRank() != null) {
|
||||
cloudRk.setRank(vo.getRank());
|
||||
}
|
||||
if (vo.getRankDescription() != null) {
|
||||
cloudRk.setRankDescription(vo.getRankDescription());
|
||||
}
|
||||
if (vo.getCloudLatest() != null) {
|
||||
cloudRk.setCloudLatest(vo.getCloudLatest());
|
||||
}
|
||||
if (vo.getCloudBlackListUpdated() != null) {
|
||||
cloudRk.setCloudBlackListUpdated(vo.getCloudBlackListUpdated());
|
||||
}
|
||||
if (vo.getCloudEntUpdate() != null) {
|
||||
cloudRk.setCloudEntUpdate(vo.getCloudEntUpdate());
|
||||
}
|
||||
if (vo.getDescription() != null) {
|
||||
cloudRk.setDescription(vo.getDescription());
|
||||
}
|
||||
if (vo.getLatestUpdate() != null) {
|
||||
cloudRk.setLatestUpdate(vo.getLatestUpdate());
|
||||
}
|
||||
|
||||
// 更新关联的公司
|
||||
if (vo.getCompanyId() != null) {
|
||||
CompanyService companyService = SpringApp.getBean(CompanyService.class);
|
||||
Company company = companyService.findById(vo.getCompanyId());
|
||||
if (company != null) {
|
||||
cloudRk.setCompany(company);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user