|
@@ -13,9 +13,12 @@ import com.zcxk.rmcp.api.dto.meterReplace.MeterReplacePageDto;
|
|
import com.zcxk.rmcp.api.dto.meterReplace.WaterMeterReplaceInputDto;
|
|
import com.zcxk.rmcp.api.dto.meterReplace.WaterMeterReplaceInputDto;
|
|
import com.zcxk.rmcp.api.enums.ReplaceMethodEnum;
|
|
import com.zcxk.rmcp.api.enums.ReplaceMethodEnum;
|
|
import com.zcxk.rmcp.api.enums.RmcpErrorEnum;
|
|
import com.zcxk.rmcp.api.enums.RmcpErrorEnum;
|
|
|
|
+import com.zcxk.rmcp.api.vo.DeviceVo;
|
|
import com.zcxk.rmcp.api.vo.MeterReplaceVo;
|
|
import com.zcxk.rmcp.api.vo.MeterReplaceVo;
|
|
import com.zcxk.rmcp.core.dao.DeviceMapper;
|
|
import com.zcxk.rmcp.core.dao.DeviceMapper;
|
|
|
|
+import com.zcxk.rmcp.core.dao.ProductMapper;
|
|
import com.zcxk.rmcp.core.entity.Device;
|
|
import com.zcxk.rmcp.core.entity.Device;
|
|
|
|
+import com.zcxk.rmcp.core.entity.Product;
|
|
import com.zcxk.rmcp.web.service.MeterReplaceLogService;
|
|
import com.zcxk.rmcp.web.service.MeterReplaceLogService;
|
|
import io.swagger.models.auth.In;
|
|
import io.swagger.models.auth.In;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -45,6 +48,9 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
@Resource
|
|
@Resource
|
|
private DeviceMapper deviceMapper;
|
|
private DeviceMapper deviceMapper;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private ProductMapper productMapper;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public int insertSelective(MeterReplaceLog record) {
|
|
public int insertSelective(MeterReplaceLog record) {
|
|
return meterReplaceLogMapper.insertSelective(record);
|
|
return meterReplaceLogMapper.insertSelective(record);
|
|
@@ -81,7 +87,7 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
public void submitWaterMeterReplace(WaterMeterReplaceInputDto waterMeterReplaceDto) {
|
|
public void submitWaterMeterReplace(WaterMeterReplaceInputDto waterMeterReplaceDto) {
|
|
log.info("begin submitWaterMeterReplace waterMeterReplaceInputDto:{}", JSON.toJSON(waterMeterReplaceDto));
|
|
log.info("begin submitWaterMeterReplace waterMeterReplaceInputDto:{}", JSON.toJSON(waterMeterReplaceDto));
|
|
Boolean remoteMeterFlag = false;
|
|
Boolean remoteMeterFlag = false;
|
|
- Device device = deviceMapper.findById(waterMeterReplaceDto.getDeviceId());
|
|
|
|
|
|
+ DeviceVo device = deviceMapper.findById(waterMeterReplaceDto.getDeviceId());
|
|
// 判断设备编号和电子号是否已经存在
|
|
// 判断设备编号和电子号是否已经存在
|
|
if (ZoniotStringUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceNo())) {
|
|
if (ZoniotStringUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceNo())) {
|
|
int resultDeviceNo = deviceMapper.findByDeviceNoUnique(waterMeterReplaceDto.getDeviceId(), waterMeterReplaceDto.getNewDeviceNo());
|
|
int resultDeviceNo = deviceMapper.findByDeviceNoUnique(waterMeterReplaceDto.getDeviceId(), waterMeterReplaceDto.getNewDeviceNo());
|
|
@@ -99,6 +105,8 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
insertSelective(waterMeterReplaceDto, device);
|
|
insertSelective(waterMeterReplaceDto, device);
|
|
// 2、更改设备信息
|
|
// 2、更改设备信息
|
|
updateDevice(waterMeterReplaceDto, device);
|
|
updateDevice(waterMeterReplaceDto, device);
|
|
|
|
+
|
|
|
|
+ // TODO waterRelatedDeviceMapper.realDelByDeviceId(waterMeterReplaceInputDto.getDeviceId());
|
|
/*if (remoteMeterFlag) {
|
|
/*if (remoteMeterFlag) {
|
|
//先删除再插入
|
|
//先删除再插入
|
|
waterRelatedDeviceMapper.realDelByDeviceId(waterMeterReplaceInputDto.getDeviceId());
|
|
waterRelatedDeviceMapper.realDelByDeviceId(waterMeterReplaceInputDto.getDeviceId());
|
|
@@ -148,7 +156,7 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
* @param waterMeterReplaceDto:换标记录, device, deviceTypeId]
|
|
* @param waterMeterReplaceDto:换标记录, device, deviceTypeId]
|
|
* @return void
|
|
* @return void
|
|
**/
|
|
**/
|
|
- private void insertSelective(WaterMeterReplaceInputDto waterMeterReplaceDto, Device device){
|
|
|
|
|
|
+ private void insertSelective(WaterMeterReplaceInputDto waterMeterReplaceDto, DeviceVo device){
|
|
Integer deviceTypeId = waterMeterReplaceDto.getNewDeviceTypeId() != null ? waterMeterReplaceDto.getNewDeviceTypeId() : device.getProductId();
|
|
Integer deviceTypeId = waterMeterReplaceDto.getNewDeviceTypeId() != null ? waterMeterReplaceDto.getNewDeviceTypeId() : device.getProductId();
|
|
LoginUser loginUser = UserUtil.getCurrentUser();
|
|
LoginUser loginUser = UserUtil.getCurrentUser();
|
|
String username = loginUser.getUsername();
|
|
String username = loginUser.getUsername();
|
|
@@ -181,8 +189,7 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
* @param waterMeterReplaceDto:换表信息, device:设备信息]
|
|
* @param waterMeterReplaceDto:换表信息, device:设备信息]
|
|
* @return void
|
|
* @return void
|
|
**/
|
|
**/
|
|
- private void updateDevice(WaterMeterReplaceInputDto waterMeterReplaceDto, Device device){
|
|
|
|
-
|
|
|
|
|
|
+ private void updateDevice(WaterMeterReplaceInputDto waterMeterReplaceDto, DeviceVo device){
|
|
Device newDevice = new Device();
|
|
Device newDevice = new Device();
|
|
newDevice.setId(device.getId());
|
|
newDevice.setId(device.getId());
|
|
if (ZoniotStringUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceNo())) {
|
|
if (ZoniotStringUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceNo())) {
|
|
@@ -192,12 +199,14 @@ public class MeterReplaceLogServiceImpl implements MeterReplaceLogService {
|
|
newDevice.setMeterNo(waterMeterReplaceDto.getNewMeterNo());
|
|
newDevice.setMeterNo(waterMeterReplaceDto.getNewMeterNo());
|
|
}
|
|
}
|
|
if (ZoniotIntegerUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceTypeId())) {
|
|
if (ZoniotIntegerUtils.isNotEmpty(waterMeterReplaceDto.getNewDeviceTypeId())) {
|
|
- // TODO 根据产品ID,查询产品
|
|
|
|
- // ChannelDeviceTypeUse use = channelDeviceTypeUseMapper.findByDeviceId(waterMeterReplaceDto.getNewDeviceTypeId());
|
|
|
|
- // newDevice.setCategoryId();
|
|
|
|
|
|
+ Product product = productMapper.findById(waterMeterReplaceDto.getNewDeviceTypeId());
|
|
|
|
+ if (product != null) {
|
|
|
|
+ newDevice.setCategoryId(product.getProductCategoryId());
|
|
|
|
+ }
|
|
}
|
|
}
|
|
newDevice.setSealNo(waterMeterReplaceDto.getSealNo());
|
|
newDevice.setSealNo(waterMeterReplaceDto.getSealNo());
|
|
newDevice.setUpdateDate(LocalDateTime.now());
|
|
newDevice.setUpdateDate(LocalDateTime.now());
|
|
|
|
+ newDevice.setUpdateBy(UserUtil.getUsername());
|
|
deviceMapper.updateByPrimaryKeySelective(newDevice);
|
|
deviceMapper.updateByPrimaryKeySelective(newDevice);
|
|
}
|
|
}
|
|
}
|
|
}
|