|  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 
|---|
|  |  |  | import com.moral.api.entity.Organization; | 
|---|
|  |  |  | import com.moral.api.entity.ServicesScope; | 
|---|
|  |  |  | import com.moral.api.entity.ServicesScopeDevice; | 
|---|
|  |  |  | import com.moral.api.mapper.OrganizationMapper; | 
|---|
|  |  |  | import com.moral.api.mapper.ServicesScopeDeviceMapper; | 
|---|
|  |  |  | import com.moral.api.mapper.ServicesScopeMapper; | 
|---|
|  |  |  | import com.moral.api.pojo.form.ServiceScope.AddBoundaryBindDevice; | 
|---|
|  |  |  | import com.moral.api.service.ServicesScopeService; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 
|---|
|  |  |  | import com.moral.api.util.LogUtils; | 
|---|
|  |  |  | 
|---|
|  |  |  | import javax.servlet.http.HttpServletRequest; | 
|---|
|  |  |  | import java.text.SimpleDateFormat; | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  | import java.util.stream.Collectors; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * <p> | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrganizationMapper organizationMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private ServicesScopeDeviceMapper servicesScopeDeviceMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Map<String, Object> getDataByCondition(Map<String, Object> map) { | 
|---|
|  |  |  | 
|---|
|  |  |  | //操作日志记录 | 
|---|
|  |  |  | HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); | 
|---|
|  |  |  | StringBuilder content = new StringBuilder(); | 
|---|
|  |  |  | content.append("修改了政府站点:").append("id:").append(servicesScope.getId() + ";"); | 
|---|
|  |  |  | content.append("修改了服务范围:").append("id:").append(servicesScope.getId() + ";"); | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(servicesScope.getOrganizationId())) { | 
|---|
|  |  |  | content.append("organization_id:").append(oldServicesScope.getOrganizationId()).append("->").append(newServicesScope.getOrganizationId()).append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | content.append("删除了服务范围:").append("id:").append(id).append(";"); | 
|---|
|  |  |  | LogUtils.saveOperationForManage(request, content.toString(), Constants.DELETE_OPERATE_TYPE); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public void addBoundaryBindDevice(AddBoundaryBindDevice addBoundaryBindDevice) { | 
|---|
|  |  |  | String devices = addBoundaryBindDevice.getDevices(); | 
|---|
|  |  |  | if (!ObjectUtils.isEmpty(devices) && !devices.equals("")){ | 
|---|
|  |  |  | String[] deviceIds = devices.split(","); | 
|---|
|  |  |  | List<String> deviceIds_String = Arrays.asList(deviceIds); | 
|---|
|  |  |  | List<Integer> deviceIdList = new ArrayList<>(); | 
|---|
|  |  |  | for (String deviceId_String:deviceIds_String) { | 
|---|
|  |  |  | deviceIdList.add(Integer.parseInt(deviceId_String)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | QueryWrapper<ServicesScopeDevice> servicesScopeDeviceQueryWrapper = new QueryWrapper<>(); | 
|---|
|  |  |  | servicesScopeDeviceQueryWrapper.eq("is_delete",Constants.NOT_DELETE); | 
|---|
|  |  |  | servicesScopeDeviceQueryWrapper.eq("services_scope_id",addBoundaryBindDevice.getServicesScope().getId()); | 
|---|
|  |  |  | List<ServicesScopeDevice> servicesScopeDevices = servicesScopeDeviceMapper.selectList(servicesScopeDeviceQueryWrapper); | 
|---|
|  |  |  | List<Integer> oldDeviceIds = servicesScopeDevices.stream().map(p -> p.getDeviceId()).collect(Collectors.toList()); | 
|---|
|  |  |  | List<Integer> insertList = new ArrayList<>(); | 
|---|
|  |  |  | for (Integer deviceId:deviceIdList) { | 
|---|
|  |  |  | if (!oldDeviceIds.contains(deviceId)){ | 
|---|
|  |  |  | insertList.add(deviceId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (insertList.size()>0){ | 
|---|
|  |  |  | servicesScopeDeviceMapper.insertBatch(addBoundaryBindDevice.getServicesScope().getId(),insertList); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | servicesScopeDeviceQueryWrapper.notIn("device_id",deviceIdList); | 
|---|
|  |  |  | ServicesScopeDevice servicesScopeDevice = new ServicesScopeDevice(); | 
|---|
|  |  |  | servicesScopeDevice.setIsDelete(Constants.DELETE); | 
|---|
|  |  |  | servicesScopeDeviceMapper.update(servicesScopeDevice,servicesScopeDeviceQueryWrapper); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ServicesScope oldServicesScope = servicesScopeMapper.selectById(addBoundaryBindDevice.getServicesScope().getId()); | 
|---|
|  |  |  | servicesScopeMapper.updateById(addBoundaryBindDevice.getServicesScope()); | 
|---|
|  |  |  | ServicesScope newServicesScope = servicesScopeMapper.selectById(addBoundaryBindDevice.getServicesScope().getId()); | 
|---|
|  |  |  | //操作日志记录 | 
|---|
|  |  |  | HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); | 
|---|
|  |  |  | StringBuilder content = new StringBuilder(); | 
|---|
|  |  |  | content.append("修改了服务范围:").append("id:").append(addBoundaryBindDevice.getServicesScope().getId() + ";"); | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(addBoundaryBindDevice.getServicesScope().getOrganizationId())) { | 
|---|
|  |  |  | content.append("organization_id:").append(oldServicesScope.getOrganizationId()).append("->").append(newServicesScope.getOrganizationId()).append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(addBoundaryBindDevice.getServicesScope().getName())) { | 
|---|
|  |  |  | content.append("name:").append(oldServicesScope.getName()).append("->").append(newServicesScope.getName()).append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(addBoundaryBindDevice.getServicesScope().getCenterLongitude())) { | 
|---|
|  |  |  | content.append("center_longitude:").append(oldServicesScope.getCenterLongitude()).append("->").append(newServicesScope.getCenterLongitude()).append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(addBoundaryBindDevice.getServicesScope().getCenterLatitude())) { | 
|---|
|  |  |  | content.append("center_latitude:").append(oldServicesScope.getCenterLatitude()).append("->").append(newServicesScope.getCenterLatitude()).append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isEmpty(addBoundaryBindDevice.getServicesScope().getBoundary())) { | 
|---|
|  |  |  | content.append("boundary:").append("数据过长").append(";"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LogUtils.saveOperationForManage(request, content.toString(), Constants.UPDATE_OPERATE_TYPE); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|