|
@@ -4,17 +4,20 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.bz.smart_city.commom.exception.ServiceException;
|
|
|
import com.bz.smart_city.commom.model.Pagination;
|
|
|
import com.bz.smart_city.commom.model.ResultStatus;
|
|
|
+import com.bz.smart_city.commom.util.AssistantUserUtil;
|
|
|
import com.bz.smart_city.commom.util.ExcelUtil;
|
|
|
import com.bz.smart_city.commom.util.UserUtil;
|
|
|
import com.bz.smart_city.dao.DeviceMapper;
|
|
|
import com.bz.smart_city.dao.DeviceTypeMapper;
|
|
|
import com.bz.smart_city.dto.*;
|
|
|
+import com.bz.smart_city.dto.assistant.LoginAssistantUser;
|
|
|
import com.bz.smart_city.entity.Device;
|
|
|
import com.bz.smart_city.service.BuildingService;
|
|
|
import com.bz.smart_city.service.udip.UdipUnitService;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.apache.kafka.clients.ClientUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import javax.annotation.Resource;
|
|
@@ -25,6 +28,7 @@ import java.util.List;
|
|
|
import com.bz.smart_city.entity.WaterMeterReplaceLog;
|
|
|
import com.bz.smart_city.dao.WaterMeterReplaceLogMapper;
|
|
|
import com.bz.smart_city.service.WaterMeterReplaceLogService;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import static com.google.common.collect.Lists.newArrayList;
|
|
|
|
|
@@ -128,30 +132,47 @@ public class WaterMeterReplaceLogServiceImpl implements WaterMeterReplaceLogServ
|
|
|
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional
|
|
|
public void submitWaterMeterReplace(WaterMeterReplaceInputDto waterMeterReplaceInputDto) {
|
|
|
log.info("begin submitWaterMeterReplace waterMeterReplaceInputDto:{}", JSON.toJSON(waterMeterReplaceInputDto));
|
|
|
LoginUser loginUser = UserUtil.getCurrentUser();
|
|
|
+ LoginAssistantUser loginAssistantUser = AssistantUserUtil.getCurrentUser();
|
|
|
+
|
|
|
+ String username = null;
|
|
|
+ String userPhone = null;
|
|
|
+ if(loginUser != null){
|
|
|
+ username = loginUser.getName();
|
|
|
+ userPhone = loginUser.getMobilePhone();
|
|
|
+ }
|
|
|
+ if(loginAssistantUser != null){
|
|
|
+ username = loginAssistantUser.getUsername();
|
|
|
+ userPhone = loginAssistantUser.getPhoneNumber();
|
|
|
+ }
|
|
|
+
|
|
|
Device device = deviceMapper.findByDeviceId(waterMeterReplaceInputDto.getDeviceId());
|
|
|
|
|
|
//判断设备编号和电子号是否已经存在
|
|
|
- int resultDeviceNo = deviceMapper.findByDeviceNoUnique(waterMeterReplaceInputDto.getDeviceId(), waterMeterReplaceInputDto.getNewDeviceNo());
|
|
|
- if (resultDeviceNo > 0) {
|
|
|
- throw new ServiceException(ResultStatus.DEVICE_NO_NOT_EXISTED);
|
|
|
- }
|
|
|
+ if (loginUser != null) {
|
|
|
+ int resultDeviceNo = deviceMapper.findByDeviceNoUnique(waterMeterReplaceInputDto.getDeviceId(), waterMeterReplaceInputDto.getNewDeviceNo());
|
|
|
+ if (resultDeviceNo > 0) {
|
|
|
+ throw new ServiceException(ResultStatus.DEVICE_NO_NOT_EXISTED);
|
|
|
+ }
|
|
|
|
|
|
- if (waterMeterReplaceInputDto.getNewElectronicNo() != null && !StringUtils.equals("",waterMeterReplaceInputDto.getNewElectronicNo())) {
|
|
|
- int resultWaterMeterNo = deviceMapper.findByWaterMeterNoUnique(waterMeterReplaceInputDto.getDeviceId(), waterMeterReplaceInputDto.getNewElectronicNo());
|
|
|
- if (resultWaterMeterNo > 0) {
|
|
|
- throw new ServiceException(ResultStatus.DEVICE_ELECTRONIC_NO_NOT_EXISTED);
|
|
|
+ if (waterMeterReplaceInputDto.getNewElectronicNo() != null && !StringUtils.equals("",waterMeterReplaceInputDto.getNewElectronicNo())) {
|
|
|
+ int resultWaterMeterNo = deviceMapper.findByWaterMeterNoUnique(waterMeterReplaceInputDto.getDeviceId(), waterMeterReplaceInputDto.getNewElectronicNo());
|
|
|
+ if (resultWaterMeterNo > 0) {
|
|
|
+ throw new ServiceException(ResultStatus.DEVICE_ELECTRONIC_NO_NOT_EXISTED);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
Integer deviceTypeId = waterMeterReplaceInputDto.getNewDeviceTypeId()!=null?waterMeterReplaceInputDto.getNewDeviceTypeId():device.getDeviceType();
|
|
|
|
|
|
//1、换表记录
|
|
|
WaterMeterReplaceLog waterMeterReplaceLog = new WaterMeterReplaceLog();
|
|
|
//waterMeterReplaceLog.setMainLogId(waterMeterMaintenanceLog.getId());
|
|
|
- waterMeterReplaceLog.setSiteId(loginUser.getSiteId());
|
|
|
+ waterMeterReplaceLog.setSiteId(device.getSiteId());
|
|
|
waterMeterReplaceLog.setDeviceId(waterMeterReplaceInputDto.getDeviceId());
|
|
|
waterMeterReplaceLog.setReplaceMethod(waterMeterReplaceInputDto.getReplaceMethod());
|
|
|
waterMeterReplaceLog.setNewDeviceTypeId(deviceTypeId);
|
|
@@ -167,12 +188,12 @@ public class WaterMeterReplaceLogServiceImpl implements WaterMeterReplaceLogServ
|
|
|
//waterMeterReplaceLog.setNewDeviceFlagNo(waterMeterMaintenanceLog.getNewDeviceFlagNo());
|
|
|
//waterMeterReplaceLog.setOldDeviceFlagNo(waterMeterMaintenanceLog.getOldDeviceFlagNo());
|
|
|
//waterMeterReplaceLog.setRemark(waterMeterMaintenanceLog.getRemark());
|
|
|
- waterMeterReplaceLog.setReplaceUsername(loginUser.getName());
|
|
|
- waterMeterReplaceLog.setReplaceUserPhone(loginUser.getMobilePhone());
|
|
|
+ waterMeterReplaceLog.setReplaceUsername(username);
|
|
|
+ waterMeterReplaceLog.setReplaceUserPhone(userPhone);
|
|
|
waterMeterReplaceLog.setStatus(1);
|
|
|
- waterMeterReplaceLog.setCreateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
+ waterMeterReplaceLog.setCreateBy(username);
|
|
|
waterMeterReplaceLog.setDateCreate(LocalDateTime.now());
|
|
|
- waterMeterReplaceLog.setUpdateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
+ waterMeterReplaceLog.setUpdateBy(username);
|
|
|
waterMeterReplaceLog.setDateUpdate(LocalDateTime.now());
|
|
|
waterMeterReplaceLogMapper.insertSelective(waterMeterReplaceLog);
|
|
|
|