fix: 同步设备信息时,过滤设备编号为空的数据

This commit is contained in:
曹鹏飞 2025-03-24 14:57:23 +08:00
parent 22dbad1a41
commit a0f4b92bd1
1 changed files with 27 additions and 31 deletions

View File

@ -3,7 +3,6 @@ package com.nflg.mobilebroken.admin.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.ImmutableList;
import com.nflg.mobilebroken.admin.constant.DeviceSourceFromEnum;
@ -15,17 +14,12 @@ import com.nflg.mobilebroken.common.constant.STATE;
import com.nflg.mobilebroken.common.util.AdminUserUtil;
import com.nflg.mobilebroken.common.util.VUtils;
import com.nflg.mobilebroken.repository.entity.Device;
import com.nflg.mobilebroken.repository.entity.TBaseCustomer;
import com.nflg.mobilebroken.repository.service.IDeviceService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestBody;
import javax.annotation.Resource;
import java.nio.file.LinkOption;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
@ -134,33 +128,35 @@ public class AdminDeviceService {
Map<String, Device> deviceMap = deviceList.stream().collect(Collectors.toMap(Device::getDeviceNo, device -> device));
crmDeviceList.forEach(u -> {
Device ent = deviceMap.get(u.getMachine_Number__c());
if (Objects.nonNull(ent)) {
ent = deviceMap.get(u.getMachine_Number__c());
ent.setUpdateBy("crm");
ent.setUpdateTime(LocalDateTime.now());
if (StrUtil.isNotBlank(u.getMachine_Number__c())) {
Device ent = deviceMap.get(u.getMachine_Number__c());
if (Objects.nonNull(ent)) {
ent = deviceMap.get(u.getMachine_Number__c());
ent.setUpdateBy("crm");
ent.setUpdateTime(LocalDateTime.now());
} else {
ent = new Device();
ent.setUpdateBy("crm");
ent.setUpdateTime(LocalDateTime.now());
ent.setCreateBy("crm");
ent.setCreateTime(LocalDateTime.now());
}
ent.setDeviceNo(u.getMachine_Number__c());
ent.setDeviceType(u.getAssetProductLine3__c());
ent.setDeviceTypeSub(u.getAssetProductLine4__c());
ent.setModelNo(u.getProductLine5__c());
if (StrUtil.isNotBlank(u.getAccount())) {
JSONObject jsonObject = JSONObject.parseObject(u.getAccount());
String cname = jsonObject.getString("Name");
ent.setCustomerName(cname);
}
} else {
ent = new Device();
ent.setUpdateBy("crm");
ent.setUpdateTime(LocalDateTime.now());
ent.setCreateBy("crm");
ent.setCreateTime(LocalDateTime.now());
}
ent.setDeviceNo(u.getMachine_Number__c());
ent.setDeviceType(u.getAssetProductLine3__c());
ent.setDeviceTypeSub(u.getAssetProductLine4__c());
ent.setModelNo(u.getProductLine5__c());
if (StrUtil.isNotBlank(u.getAccount())) {
JSONObject jsonObject = JSONObject.parseObject(u.getAccount());
String cname = jsonObject.getString("Name");
ent.setCustomerName(cname);
}
ent.setSourceFrom(DeviceSourceFromEnum.FROM_CRM.getSourceKey());
ent.setCustomerId(0);
ent.setDeviceState(0);
result.add(ent);
ent.setSourceFrom(DeviceSourceFromEnum.FROM_CRM.getSourceKey());
ent.setCustomerId(0);
ent.setDeviceState(0);
result.add(ent);
}
});
if (CollUtil.isNotEmpty(result)) {