|
@@ -1,7 +1,8 @@
|
|
|
package com.fjhx.iot.service.tda.impl;
|
|
|
|
|
|
-import cn.hutool.core.bean.BeanUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.fjhx.iot.constants.RedisConstant;
|
|
@@ -11,8 +12,12 @@ import com.fjhx.iot.entity.tda.po.TdaDevice;
|
|
|
import com.fjhx.iot.entity.tda.vo.TdaDeviceVo;
|
|
|
import com.fjhx.iot.mapper.tda.TdaDeviceMapper;
|
|
|
import com.fjhx.iot.service.tda.TdaDeviceService;
|
|
|
+import com.fjhx.item.entity.product.po.ProductInfo;
|
|
|
+import com.fjhx.item.service.product.ProductInfoService;
|
|
|
import com.fjhx.tenant.utils.DeptUstil;
|
|
|
+import com.ruoyi.common.core.domain.BasePo;
|
|
|
import com.ruoyi.common.core.redis.RedisCache;
|
|
|
+import com.ruoyi.common.exception.ServiceException;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
import com.ruoyi.common.utils.wrapper.SqlField;
|
|
@@ -20,10 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
-import java.util.Set;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@@ -40,6 +42,8 @@ public class TdaDeviceServiceImpl extends ServiceImpl<TdaDeviceMapper, TdaDevice
|
|
|
|
|
|
@Autowired
|
|
|
private RedisCache redisCache;
|
|
|
+ @Autowired
|
|
|
+ private ProductInfoService productInfoService;
|
|
|
|
|
|
@Override
|
|
|
public Page<TdaDeviceVo> getPage(TdaDeviceSelectDto dto) {
|
|
@@ -48,7 +52,7 @@ public class TdaDeviceServiceImpl extends ServiceImpl<TdaDeviceMapper, TdaDevice
|
|
|
wrapper.keyword(dto, new SqlField("td.device_name"));
|
|
|
|
|
|
//权限过滤:设备管理-子公司看自己的,总公司看全部
|
|
|
- wrapper.in("td.company_id", SecurityUtils.getCompanyIds());
|
|
|
+ wrapper.in("td.company_id", SecurityUtils.getCompanyIds());
|
|
|
wrapper.eq("td.company_id", dto.getCompanyId());
|
|
|
|
|
|
|
|
@@ -110,9 +114,28 @@ public class TdaDeviceServiceImpl extends ServiceImpl<TdaDeviceMapper, TdaDevice
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public TdaDeviceVo detail(Long id) {
|
|
|
- TdaDevice TdaDevice = this.getById(id);
|
|
|
- TdaDeviceVo result = BeanUtil.toBean(TdaDevice, TdaDeviceVo.class);
|
|
|
+ public TdaDeviceVo detail(TdaDeviceSelectDto dto) {
|
|
|
+ if (ObjectUtil.isEmpty(dto.getId()) && ObjectUtil.isEmpty(dto.getUserUuid())) {
|
|
|
+ throw new ServiceException("设备id/用户唯一标识,其中之一不能为空!");
|
|
|
+ }
|
|
|
+
|
|
|
+ //赋值任务信息
|
|
|
+ IWrapper<TdaDevice> wrapper = getWrapper();
|
|
|
+ wrapper.eq("td", TdaDevice::getId, dto.getId());
|
|
|
+ wrapper.eq("td", TdaDevice::getUserUuid, dto.getUserUuid());
|
|
|
+ TdaDeviceVo result = baseMapper.detail(wrapper);
|
|
|
+
|
|
|
+ //赋值产品信息
|
|
|
+ ProductInfo productInfo = productInfoService.getById(result.getProductId());
|
|
|
+ if (ObjectUtil.isNotEmpty(productInfo)) {
|
|
|
+ result.setProductName(productInfo.getName());
|
|
|
+ result.setProductCode(productInfo.getCustomCode());
|
|
|
+ result.setProductLength(productInfo.getLength());
|
|
|
+ result.setProductWidth(productInfo.getWidth());
|
|
|
+ result.setProductHeight(productInfo.getHeight());
|
|
|
+ result.setProductColor(productInfo.getColor());
|
|
|
+ }
|
|
|
+
|
|
|
return result;
|
|
|
}
|
|
|
|
|
@@ -145,7 +168,20 @@ public class TdaDeviceServiceImpl extends ServiceImpl<TdaDeviceMapper, TdaDevice
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @DSTransactional
|
|
|
public void edit(TdaDeviceDto tdaDeviceDto) {
|
|
|
+ String userUuid = tdaDeviceDto.getUserUuid();
|
|
|
+
|
|
|
+ //机台设置 更新用户设备唯一id
|
|
|
+ if (ObjectUtil.isNotEmpty(userUuid)) {
|
|
|
+ this.update(q -> q
|
|
|
+ .eq(TdaDevice::getUserUuid, userUuid)
|
|
|
+ .set(TdaDevice::getUserUuid, null)
|
|
|
+ .set(BasePo::getUpdateTime, new Date())
|
|
|
+ .set(BasePo::getUpdateUser, SecurityUtils.getUserId())
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
this.updateById(tdaDeviceDto);
|
|
|
}
|
|
|
|