|
@@ -6,6 +6,8 @@ import com.bz.smart_city.commom.util.UserUtil;
|
|
|
import com.bz.smart_city.dao.*;
|
|
|
import com.bz.smart_city.dao.assistant.InstallListMapper;
|
|
|
import com.bz.smart_city.dto.DeviceErrorDto;
|
|
|
+import com.bz.smart_city.dto.DeviceTypeDto;
|
|
|
+import com.bz.smart_city.dto.LoginUser;
|
|
|
import com.bz.smart_city.dto.WaterMeterMaintenanceLogDto;
|
|
|
import com.bz.smart_city.entity.*;
|
|
|
import com.bz.smart_city.entity.assistant.InstallList;
|
|
@@ -88,6 +90,7 @@ public class WaterMeterMaintenanceLogServiceImpl implements WaterMeterMaintenanc
|
|
|
@Transactional
|
|
|
public void submitWaterMeterWorkOrder(WaterMeterMaintenanceLogDto waterMeterMaintenanceLog) {
|
|
|
log.info("begin WaterMeterMaintenanceLogServiceImpl submitWaterMeterWorkOrder waterMeterMaintenanceLog:" + JSON.toJSONString(waterMeterMaintenanceLog));
|
|
|
+ LoginUser loginUser = UserUtil.getCurrentUser();
|
|
|
WorkOrder workOrder = workOrderMapper.findbyOrderNo(waterMeterMaintenanceLog.getOrdeNo());
|
|
|
DeviceErrorDto deviceErrorDto = deviceErrorMapper.getDetail(Long.valueOf(workOrder.getReleationId()));
|
|
|
Device device = deviceMapper.findByDeviceId(deviceErrorDto.getDeviceId());
|
|
@@ -117,66 +120,48 @@ public class WaterMeterMaintenanceLogServiceImpl implements WaterMeterMaintenanc
|
|
|
waterMeterMaintenanceImagesMapper.insertList(imagesList);
|
|
|
}
|
|
|
|
|
|
- //3、根据解决方案添加相关的记录(1 维修,2换表)
|
|
|
- if (waterMeterMaintenanceLog.getSolutionMethod() == 1) {
|
|
|
- WaterMeterRepairLog waterMeterRepairLog = new WaterMeterRepairLog();
|
|
|
- waterMeterRepairLog.setMainLogId(waterMeterMaintenanceLog.getId());
|
|
|
- waterMeterRepairLog.setDeviceId(deviceErrorDto.getDeviceId());
|
|
|
- waterMeterRepairLog.setDeviceTypeId(device.getDeviceType());
|
|
|
- waterMeterRepairLog.setNewWaterNo(waterMeterMaintenanceLog.getNewWaterNo());
|
|
|
- waterMeterRepairLog.setOldWaterNo(waterMeterMaintenanceLog.getOldWaterNo());
|
|
|
- waterMeterRepairLog.setNewBeginWsv(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
- waterMeterRepairLog.setOldEndWsv(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
- waterMeterRepairLog.setNewWaterNo(waterMeterMaintenanceLog.getNewWaterNo());
|
|
|
- waterMeterRepairLog.setOldWaterNo(waterMeterMaintenanceLog.getOldWaterNo());
|
|
|
- waterMeterRepairLog.setNewBeginWsv(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
- waterMeterRepairLog.setOldEndWsv(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
- waterMeterRepairLog.setNewDeviceNo(waterMeterMaintenanceLog.getNewDeviceNo());
|
|
|
- waterMeterRepairLog.setOldDeviceNo(waterMeterMaintenanceLog.getOldDeviceNo());
|
|
|
- waterMeterRepairLog.setRemark(waterMeterMaintenanceLog.getRemark());
|
|
|
- waterMeterRepairLog.setStatus(1);
|
|
|
- waterMeterRepairLog.setCreateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
- waterMeterRepairLog.setDateCreate(LocalDateTime.now());
|
|
|
- waterMeterRepairLog.setUpdateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
- waterMeterRepairLog.setDateUpdate(LocalDateTime.now());
|
|
|
- waterMeterRepairLogMapper.insert(waterMeterRepairLog);
|
|
|
+ //3、根据解决方案添加相关的记录(1 更换模块,2 更换整表)
|
|
|
+ WaterMeterReplaceLog waterMeterReplaceLog = new WaterMeterReplaceLog();
|
|
|
+ waterMeterReplaceLog.setMainLogId(waterMeterMaintenanceLog.getId());
|
|
|
+ waterMeterReplaceLog.setSiteId(loginUser.getSiteId());
|
|
|
+ waterMeterReplaceLog.setDeviceId(waterMeterMaintenanceLog.getDeviceId());
|
|
|
+ waterMeterReplaceLog.setReplaceMethod(waterMeterMaintenanceLog.getSolutionMethod());
|
|
|
+ waterMeterReplaceLog.setNewDeviceTypeId(waterMeterMaintenanceLog.getNewDeviceTypeId());
|
|
|
+ waterMeterReplaceLog.setOldDeviceTypeId(device.getDeviceType());
|
|
|
+ waterMeterReplaceLog.setNewWaterNo(waterMeterMaintenanceLog.getNewWaterNo());
|
|
|
+ waterMeterReplaceLog.setOldWaterNo(device.getWaterMeterNo());
|
|
|
+ waterMeterReplaceLog.setNewBeginWsv(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
+ waterMeterReplaceLog.setOldEndWsv(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
+ waterMeterReplaceLog.setNewDeviceNo(waterMeterMaintenanceLog.getNewDeviceNo());
|
|
|
+ waterMeterReplaceLog.setOldDeviceNo(device.getDeviceNo());
|
|
|
+ waterMeterReplaceLog.setNewSimNo(waterMeterMaintenanceLog.getNewSimNo());
|
|
|
+ waterMeterReplaceLog.setOldSimNo(waterMeterMaintenanceLog.getOldSimNo());
|
|
|
+ waterMeterReplaceLog.setNewDeviceFlagNo(waterMeterMaintenanceLog.getNewDeviceFlagNo());
|
|
|
+ waterMeterReplaceLog.setOldDeviceFlagNo(waterMeterMaintenanceLog.getOldDeviceFlagNo());
|
|
|
+ waterMeterReplaceLog.setRemark(waterMeterMaintenanceLog.getRemark());
|
|
|
+ waterMeterReplaceLog.setReplaceUsername(loginUser.getName());
|
|
|
+ waterMeterReplaceLog.setReplaceUserPhone(loginUser.getMobilePhone());
|
|
|
+ waterMeterReplaceLog.setStatus(1);
|
|
|
+ waterMeterReplaceLog.setCreateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
+ waterMeterReplaceLog.setDateCreate(LocalDateTime.now());
|
|
|
+ waterMeterReplaceLog.setUpdateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
+ waterMeterReplaceLog.setDateUpdate(LocalDateTime.now());
|
|
|
+ waterMeterReplaceLogMapper.insertSelective(waterMeterReplaceLog);
|
|
|
+
|
|
|
+ //更新安装列表中的初始读数和旧表读数
|
|
|
+ InstallList installList = new InstallList();
|
|
|
+ installList.setDeviceId(waterMeterMaintenanceLog.getDeviceId());
|
|
|
+ installList.setNewMeterStart(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
+ installList.setOldMeterEnd(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
+ installList.setDateUpdate(LocalDateTime.now());
|
|
|
+ installListMapper.updateByDeviceId2(installList);
|
|
|
|
|
|
+ if (waterMeterMaintenanceLog.getSolutionMethod() == 1) {
|
|
|
//完成工单任务
|
|
|
- workOrderService.handle(waterMeterMaintenanceLog.getTaskId(), "维修", null);
|
|
|
+ workOrderService.handle(waterMeterMaintenanceLog.getTaskId(), "更换模块", null);
|
|
|
} else {
|
|
|
- WaterMeterReplaceLog waterMeterReplaceLog = new WaterMeterReplaceLog();
|
|
|
- waterMeterReplaceLog.setMainLogId(waterMeterMaintenanceLog.getId());
|
|
|
- waterMeterReplaceLog.setDeviceId(waterMeterMaintenanceLog.getDeviceId());
|
|
|
- waterMeterReplaceLog.setNewDeviceTypeId(waterMeterMaintenanceLog.getDeviceTypeId());
|
|
|
- waterMeterReplaceLog.setNewWaterNo(waterMeterMaintenanceLog.getNewWaterNo());
|
|
|
- waterMeterReplaceLog.setOldWaterNo(waterMeterMaintenanceLog.getOldWaterNo());
|
|
|
- waterMeterReplaceLog.setNewBeginWsv(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
- waterMeterReplaceLog.setOldEndWsv(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
- waterMeterReplaceLog.setNewDeviceNo(waterMeterMaintenanceLog.getNewDeviceNo());
|
|
|
- waterMeterReplaceLog.setOldDeviceNo(waterMeterMaintenanceLog.getOldDeviceNo());
|
|
|
- waterMeterReplaceLog.setNewSimNo(waterMeterMaintenanceLog.getNewSimNo());
|
|
|
- waterMeterReplaceLog.setOldSimNo(waterMeterMaintenanceLog.getOldSimNo());
|
|
|
- waterMeterReplaceLog.setNewDeviceFlagNo(waterMeterMaintenanceLog.getNewDeviceFlagNo());
|
|
|
- waterMeterReplaceLog.setOldDeviceFlagNo(waterMeterMaintenanceLog.getOldDeviceFlagNo());
|
|
|
- waterMeterReplaceLog.setRemark(waterMeterMaintenanceLog.getRemark());
|
|
|
- waterMeterReplaceLog.setStatus(1);
|
|
|
- waterMeterReplaceLog.setCreateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
- waterMeterReplaceLog.setDateCreate(LocalDateTime.now());
|
|
|
- waterMeterReplaceLog.setUpdateBy(UserUtil.getCurrentUser().getUsername());
|
|
|
- waterMeterReplaceLog.setDateUpdate(LocalDateTime.now());
|
|
|
- waterMeterReplaceLogMapper.insertSelective(waterMeterReplaceLog);
|
|
|
-
|
|
|
//完成工单任务
|
|
|
- workOrderService.handle(waterMeterMaintenanceLog.getTaskId(), "换表", null);
|
|
|
-
|
|
|
- //更新安装列表中的初始读数和旧表读数
|
|
|
- InstallList installList = new InstallList();
|
|
|
- installList.setDeviceId(waterMeterMaintenanceLog.getDeviceId());
|
|
|
- installList.setNewMeterStart(waterMeterMaintenanceLog.getNewBeginWsv());
|
|
|
- installList.setOldMeterEnd(waterMeterMaintenanceLog.getOldEndWsv());
|
|
|
- installList.setDateUpdate(LocalDateTime.now());
|
|
|
- installListMapper.updateByDeviceId2(installList);
|
|
|
-
|
|
|
+ workOrderService.handle(waterMeterMaintenanceLog.getTaskId(), "更换整表", null);
|
|
|
}
|
|
|
//4、更新设备信息
|
|
|
Device newDevice = new Device();
|
|
@@ -190,6 +175,19 @@ public class WaterMeterMaintenanceLogServiceImpl implements WaterMeterMaintenanc
|
|
|
if (waterMeterMaintenanceLog.getNewWaterNo() != null && !"".equals(waterMeterMaintenanceLog.getNewWaterNo())) {
|
|
|
newDevice.setWaterMeterNo(waterMeterMaintenanceLog.getNewWaterNo());
|
|
|
}
|
|
|
+ if (waterMeterMaintenanceLog.getNewDeviceTypeId() != null && waterMeterMaintenanceLog.getNewDeviceTypeId()!=0) {
|
|
|
+ DeviceTypeDto deviceTypeDto = deviceTypeMapper.getById(waterMeterMaintenanceLog.getNewDeviceTypeId());
|
|
|
+ if(!device.getDeviceType().equals(waterMeterMaintenanceLog.getNewDeviceTypeId())){
|
|
|
+ if (deviceTypeDto != null && deviceTypeDto.getIsRegister() == 1) {
|
|
|
+ String udipId = udipUnitService.saveUdipUnit(waterMeterReplaceLog.getNewDeviceNo(),device.getCustomerId(),deviceTypeDto);
|
|
|
+ newDevice.setUdipId(udipId);
|
|
|
+ newDevice.setRegisterStatus(1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ newDevice.setDeviceType(waterMeterMaintenanceLog.getNewDeviceTypeId());
|
|
|
+ }
|
|
|
+ newDevice.setDateUpdate(LocalDateTime.now());
|
|
|
deviceMapper.updateByPrimaryKeySelective(newDevice);
|
|
|
} else {
|
|
|
throw new ServiceException(-900, "该工单已经处理");
|
|
@@ -205,27 +203,17 @@ public class WaterMeterMaintenanceLogServiceImpl implements WaterMeterMaintenanc
|
|
|
|
|
|
WaterMeterMaintenanceLogDto waterMeterMaintenanceLogDto = waterMeterMaintenanceLogMapper.findByOrdeNo(ordeNo);
|
|
|
if (waterMeterMaintenanceLogDto != null) {
|
|
|
- if (waterMeterMaintenanceLogDto.getSolutionMethod() == 1) {
|
|
|
- WaterMeterRepairLog waterMeterRepairLog = waterMeterRepairLogMapper.findByMainLogId(waterMeterMaintenanceLogDto.getId());
|
|
|
- waterMeterMaintenanceLogDto.setNewWaterNo(waterMeterRepairLog.getNewWaterNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldWaterNo(waterMeterRepairLog.getOldWaterNo());
|
|
|
- waterMeterMaintenanceLogDto.setNewBeginWsv(waterMeterRepairLog.getNewBeginWsv());
|
|
|
- waterMeterMaintenanceLogDto.setOldEndWsv(waterMeterRepairLog.getOldEndWsv());
|
|
|
- waterMeterMaintenanceLogDto.setNewDeviceNo(waterMeterRepairLog.getNewDeviceNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldDeviceNo(waterMeterRepairLog.getOldDeviceNo());
|
|
|
- } else {
|
|
|
- WaterMeterReplaceLog waterMeterReplaceLog = waterMeterReplaceLogMapper.findByMainLogId(waterMeterMaintenanceLogDto.getId());
|
|
|
- waterMeterMaintenanceLogDto.setNewWaterNo(waterMeterReplaceLog.getNewWaterNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldWaterNo(waterMeterReplaceLog.getOldWaterNo());
|
|
|
- waterMeterMaintenanceLogDto.setNewBeginWsv(waterMeterReplaceLog.getNewBeginWsv());
|
|
|
- waterMeterMaintenanceLogDto.setOldEndWsv(waterMeterReplaceLog.getOldEndWsv());
|
|
|
- waterMeterMaintenanceLogDto.setNewDeviceNo(waterMeterReplaceLog.getNewDeviceNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldDeviceNo(waterMeterReplaceLog.getOldDeviceNo());
|
|
|
- waterMeterMaintenanceLogDto.setNewSimNo(waterMeterReplaceLog.getNewSimNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldSimNo(waterMeterReplaceLog.getOldSimNo());
|
|
|
- waterMeterMaintenanceLogDto.setNewDeviceFlagNo(waterMeterReplaceLog.getNewDeviceFlagNo());
|
|
|
- waterMeterMaintenanceLogDto.setOldDeviceFlagNo(waterMeterReplaceLog.getOldDeviceFlagNo());
|
|
|
- }
|
|
|
+ WaterMeterReplaceLog waterMeterReplaceLog = waterMeterReplaceLogMapper.findByMainLogId(waterMeterMaintenanceLogDto.getId());
|
|
|
+ waterMeterMaintenanceLogDto.setNewWaterNo(waterMeterReplaceLog.getNewWaterNo());
|
|
|
+ waterMeterMaintenanceLogDto.setOldWaterNo(waterMeterReplaceLog.getOldWaterNo());
|
|
|
+ waterMeterMaintenanceLogDto.setNewBeginWsv(waterMeterReplaceLog.getNewBeginWsv());
|
|
|
+ waterMeterMaintenanceLogDto.setOldEndWsv(waterMeterReplaceLog.getOldEndWsv());
|
|
|
+ waterMeterMaintenanceLogDto.setNewDeviceNo(waterMeterReplaceLog.getNewDeviceNo());
|
|
|
+ waterMeterMaintenanceLogDto.setOldDeviceNo(waterMeterReplaceLog.getOldDeviceNo());
|
|
|
+ waterMeterMaintenanceLogDto.setNewSimNo(waterMeterReplaceLog.getNewSimNo());
|
|
|
+ waterMeterMaintenanceLogDto.setOldSimNo(waterMeterReplaceLog.getOldSimNo());
|
|
|
+ waterMeterMaintenanceLogDto.setNewDeviceFlagNo(waterMeterReplaceLog.getNewDeviceFlagNo());
|
|
|
+ waterMeterMaintenanceLogDto.setOldDeviceFlagNo(waterMeterReplaceLog.getOldDeviceFlagNo());
|
|
|
//获取图片
|
|
|
waterMeterMaintenanceLogDto.setImageUrls(waterMeterMaintenanceImagesMapper.findByMainLogId(waterMeterMaintenanceLogDto.getId()));
|
|
|
return waterMeterMaintenanceLogDto;
|