|
@@ -22,6 +22,7 @@ import com.xy.dto.SysWorkUser.ListDto;
|
|
|
import com.xy.dto.SysWorkUser.SysWorkVo;
|
|
|
import com.xy.dto.be.MercDto;
|
|
|
import com.xy.entity.DeviceCreateIds;
|
|
|
+import com.xy.entity.DeviceInfo;
|
|
|
import com.xy.mapper.DeviceCreateIdsMapper;
|
|
|
import com.xy.service.be.MercService;
|
|
|
import com.xy.utils.*;
|
|
@@ -31,6 +32,7 @@ import lombok.Data;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.SneakyThrows;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
@@ -61,7 +63,7 @@ import static com.xy.utils.PlusBeans.toPageBean;
|
|
|
*/
|
|
|
@Slf4j
|
|
|
@Service
|
|
|
-@RequiredArgsConstructor
|
|
|
+@RequiredArgsConstructor(onConstructor_ = @Lazy)
|
|
|
@Api(tags = "设备-机器ID号生成")
|
|
|
public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMapper, DeviceCreateIds> implements DeviceCreateIdsService {
|
|
|
|
|
@@ -71,6 +73,8 @@ public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMappe
|
|
|
|
|
|
private final MercService mercService;
|
|
|
|
|
|
+ private final DeviceInfoServiceImpl deviceInfoService;
|
|
|
+
|
|
|
@SneakyThrows
|
|
|
@PostMapping("save")
|
|
|
@ApiOperation("添加")
|
|
@@ -213,11 +217,12 @@ public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMappe
|
|
|
@PostMapping("getQrCode")
|
|
|
@ApiOperation("获取二维码")
|
|
|
public R<List<String>> getQrCode(@RequestBody @Validated DeviceQualityDto.Qrcode qrcode) {
|
|
|
- DeviceCreateIds deviceCreateIds = getById(qrcode.getDeviceId());
|
|
|
- //查询商户特有二维码地址
|
|
|
+ //默认二维码
|
|
|
String qrUrl = SysDictUtils.getValue(EnumDeviceQrCode.Code.CODE.getCode(), EnumDeviceQrCode.URL.getCode(), String.class);
|
|
|
- if (Emptys.check(deviceCreateIds.getDeviceQrMercId()) && deviceCreateIds.getDeviceQrMercId() > 0) {
|
|
|
- MercDeviceQrConfigDto.Vo mercDeviceQrConfig = mercDeviceQrConfigService.obj(new MercDeviceQrConfigDto.Vo().setMercId(deviceCreateIds.getDeviceQrMercId())).getData();
|
|
|
+ //查询商户特有二维码地址
|
|
|
+ DeviceCreateIds deviceCreateIds = getById(qrcode.getDeviceId());
|
|
|
+ if (Emptys.check(deviceCreateIds.getDeviceQrMercId())) {
|
|
|
+ MercDeviceQrConfigDto.Vo mercDeviceQrConfig = mercDeviceQrConfigService.getQrUrl(new MercDeviceQrConfigDto.GetQrUrl().setMercId(deviceCreateIds.getDeviceQrMercId())).getData();
|
|
|
if (Emptys.check(mercDeviceQrConfig)) {
|
|
|
qrUrl = mercDeviceQrConfig.getQrUrl() + "?deviceId=";
|
|
|
}
|
|
@@ -229,6 +234,7 @@ public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMappe
|
|
|
.set(qrUrl + deviceId);
|
|
|
JList<String> deviceIdInfos = new JArrayList<String>()
|
|
|
.set(deviceId);
|
|
|
+
|
|
|
if (deviceCreateIds.getDeviceType() == deviceType) {
|
|
|
deviceIds.clear();
|
|
|
deviceIdInfos.clear();
|
|
@@ -251,20 +257,14 @@ public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMappe
|
|
|
List<String> deviceIdInfos = new ArrayList<>();
|
|
|
List<DeviceCreateIds> updateDeviceCreateIds = new ArrayList<>();
|
|
|
JList<DeviceCreateIds> deviceCreateIdss = new JArrayList<>(listByIds(exportQrCode.getDeviceIds()));
|
|
|
- //查询商户特有二维码地址
|
|
|
- JMap<Long, MercDeviceQrConfigDto.Vo> mercDeviceQrConfigsJMas;
|
|
|
- JList<Long> mercIds = deviceCreateIdss.filter().isNotNull(DeviceCreateIds::getDeviceQrMercId).gt(DeviceCreateIds::getDeviceQrMercId, 0).list().getProperty(DeviceCreateIds::getDeviceQrMercId);
|
|
|
- if (Emptys.check(mercIds)) {
|
|
|
- List<MercDeviceQrConfigDto.Vo> mercDeviceQrConfigs = mercDeviceQrConfigService.list(new MercDeviceQrConfigDto.SelectList().setMercId(mercIds)).getData();
|
|
|
- mercDeviceQrConfigsJMas = new JArrayList<>(mercDeviceQrConfigs).toMap(MercDeviceQrConfigDto.Vo::getMercId).cover();
|
|
|
- } else {
|
|
|
- mercDeviceQrConfigsJMas = new JHashMap<>();
|
|
|
- }
|
|
|
+ List<DeviceInfo> deviceInfos = deviceInfoService.listByIds(exportQrCode.getDeviceIds());
|
|
|
+ JMap<Long, DeviceInfo> deviceInfoJMaps = new JArrayList<>(deviceInfos).toMap(DeviceInfo::getDeviceId).cover();
|
|
|
//循环
|
|
|
deviceCreateIdss.forEach(deviceCreateIds -> {
|
|
|
String qrUrl = url;
|
|
|
+ //查询商户特有二维码地址
|
|
|
if (Emptys.check(deviceCreateIds.getDeviceQrMercId())) {
|
|
|
- MercDeviceQrConfigDto.Vo mercDeviceQrConfig = mercDeviceQrConfigsJMas.get(deviceCreateIds.getDeviceQrMercId());
|
|
|
+ MercDeviceQrConfigDto.Vo mercDeviceQrConfig = mercDeviceQrConfigService.getQrUrl(new MercDeviceQrConfigDto.GetQrUrl().setMercId(deviceCreateIds.getDeviceQrMercId())).getData();
|
|
|
if (Emptys.check(mercDeviceQrConfig)) {
|
|
|
qrUrl = mercDeviceQrConfig.getQrUrl() + "?deviceId=";
|
|
|
}
|