Commit afe65a2d98714567c3063c213f2d4070b797bded
1 parent
1b122441
1.调度加入异常停车提示
Showing
12 changed files
with
3343 additions
and
2902 deletions
src/main/java/com/bsth/Application.java
| 1 | -package com.bsth; | ||
| 2 | - | ||
| 3 | -import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 4 | -import com.fasterxml.jackson.databind.SerializationFeature; | ||
| 5 | -import org.springframework.boot.SpringApplication; | ||
| 6 | -import org.springframework.boot.autoconfigure.SpringBootApplication; | ||
| 7 | -import org.springframework.boot.builder.SpringApplicationBuilder; | ||
| 8 | -import org.springframework.boot.context.web.SpringBootServletInitializer; | ||
| 9 | -import org.springframework.context.annotation.Bean; | ||
| 10 | -import org.springframework.context.annotation.Primary; | ||
| 11 | -import org.springframework.transaction.annotation.EnableTransactionManagement; | ||
| 12 | - | ||
| 13 | -import java.util.concurrent.Executors; | ||
| 14 | -import java.util.concurrent.ScheduledExecutorService; | ||
| 15 | - | ||
| 16 | -@EnableTransactionManagement | ||
| 17 | -@SpringBootApplication | ||
| 18 | -public class Application extends SpringBootServletInitializer { | ||
| 19 | - | ||
| 20 | - public static ScheduledExecutorService mainServices = Executors.newScheduledThreadPool(18); | ||
| 21 | - | ||
| 22 | - @Override | ||
| 23 | - protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { | ||
| 24 | - return application.sources(Application.class); | ||
| 25 | - } | ||
| 26 | - | ||
| 27 | - @Bean | ||
| 28 | - @Primary | ||
| 29 | - public ObjectMapper objectMapper() { | ||
| 30 | - ObjectMapper objectMapper = new ObjectMapper(); | ||
| 31 | - objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); | ||
| 32 | - | ||
| 33 | - return objectMapper; | ||
| 34 | - } | ||
| 35 | - | ||
| 36 | - public static void main(String[] args) throws Exception { | ||
| 37 | - SpringApplication.run(Application.class, args); | ||
| 38 | - } | 1 | +package com.bsth; |
| 2 | + | ||
| 3 | +import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 4 | +import com.fasterxml.jackson.databind.SerializationFeature; | ||
| 5 | +import org.springframework.boot.SpringApplication; | ||
| 6 | +import org.springframework.boot.autoconfigure.SpringBootApplication; | ||
| 7 | +import org.springframework.boot.builder.SpringApplicationBuilder; | ||
| 8 | +import org.springframework.boot.context.web.SpringBootServletInitializer; | ||
| 9 | +import org.springframework.context.annotation.Bean; | ||
| 10 | +import org.springframework.context.annotation.Primary; | ||
| 11 | +import org.springframework.scheduling.annotation.EnableScheduling; | ||
| 12 | +import org.springframework.transaction.annotation.EnableTransactionManagement; | ||
| 13 | + | ||
| 14 | +import java.util.concurrent.Executors; | ||
| 15 | +import java.util.concurrent.ScheduledExecutorService; | ||
| 16 | + | ||
| 17 | +@EnableScheduling | ||
| 18 | +@EnableTransactionManagement | ||
| 19 | +@SpringBootApplication | ||
| 20 | +public class Application extends SpringBootServletInitializer { | ||
| 21 | + | ||
| 22 | + public static ScheduledExecutorService mainServices = Executors.newScheduledThreadPool(18); | ||
| 23 | + | ||
| 24 | + @Override | ||
| 25 | + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { | ||
| 26 | + return application.sources(Application.class); | ||
| 27 | + } | ||
| 28 | + | ||
| 29 | + @Bean | ||
| 30 | + @Primary | ||
| 31 | + public ObjectMapper objectMapper() { | ||
| 32 | + ObjectMapper objectMapper = new ObjectMapper(); | ||
| 33 | + objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); | ||
| 34 | + | ||
| 35 | + return objectMapper; | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + public static void main(String[] args) throws Exception { | ||
| 39 | + SpringApplication.run(Application.class, args); | ||
| 40 | + } | ||
| 39 | } | 41 | } |
| 40 | \ No newline at end of file | 42 | \ No newline at end of file |
src/main/java/com/bsth/common/SystemParamKeys.java
| @@ -6,4 +6,6 @@ package com.bsth.common; | @@ -6,4 +6,6 @@ package com.bsth.common; | ||
| 6 | public class SystemParamKeys { | 6 | public class SystemParamKeys { |
| 7 | 7 | ||
| 8 | public static final String SPECIAL_ROLES = "special.roles"; | 8 | public static final String SPECIAL_ROLES = "special.roles"; |
| 9 | + | ||
| 10 | + public static final String API_URL_CARERRORSTOP = "api.url.carerrorstop"; | ||
| 9 | } | 11 | } |
src/main/java/com/bsth/entity/CarErrorStop.java
0 → 100644
| 1 | +package com.bsth.entity; | ||
| 2 | + | ||
| 3 | +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||
| 4 | +import org.joda.time.format.DateTimeFormat; | ||
| 5 | +import org.joda.time.format.DateTimeFormatter; | ||
| 6 | +import org.springframework.util.StringUtils; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * 企业信息化运行监控中心 | ||
| 10 | + * 车辆异常停车(理论上超过5分钟) | ||
| 11 | + * @author Hill | ||
| 12 | + */ | ||
| 13 | +@JsonIgnoreProperties(ignoreUnknown = true) | ||
| 14 | +public class CarErrorStop { | ||
| 15 | + | ||
| 16 | + /** | ||
| 17 | + * ID | ||
| 18 | + */ | ||
| 19 | + private long id; | ||
| 20 | + | ||
| 21 | + /** | ||
| 22 | + * 日期 | ||
| 23 | + */ | ||
| 24 | + private String rq; | ||
| 25 | + | ||
| 26 | + /** | ||
| 27 | + * 公司编码 | ||
| 28 | + */ | ||
| 29 | + private String company; | ||
| 30 | + | ||
| 31 | + /** | ||
| 32 | + * 分公司名称 | ||
| 33 | + */ | ||
| 34 | + private String branchCompany; | ||
| 35 | + | ||
| 36 | + /** | ||
| 37 | + * 线路名称 | ||
| 38 | + */ | ||
| 39 | + private String line; | ||
| 40 | + | ||
| 41 | + /** | ||
| 42 | + * 线路代码 | ||
| 43 | + */ | ||
| 44 | + private String lineId; | ||
| 45 | + | ||
| 46 | + /** | ||
| 47 | + * 车辆内部编码 | ||
| 48 | + */ | ||
| 49 | + private String nbbm; | ||
| 50 | + | ||
| 51 | + private String carCode; | ||
| 52 | + | ||
| 53 | + private String driver; | ||
| 54 | + | ||
| 55 | + private double lat; | ||
| 56 | + | ||
| 57 | + private double lon; | ||
| 58 | + | ||
| 59 | + /** | ||
| 60 | + * 发生地址 | ||
| 61 | + */ | ||
| 62 | + private String address; | ||
| 63 | + | ||
| 64 | + /** | ||
| 65 | + * 异常停车起始时间 | ||
| 66 | + */ | ||
| 67 | + private String startTime; | ||
| 68 | + | ||
| 69 | + private long startTimestamp; | ||
| 70 | + | ||
| 71 | + /** | ||
| 72 | + * 异常停车结束时间 | ||
| 73 | + */ | ||
| 74 | + private String endTime; | ||
| 75 | + | ||
| 76 | + private long endTimestamp; | ||
| 77 | + | ||
| 78 | + /** | ||
| 79 | + * 上下行 | ||
| 80 | + */ | ||
| 81 | + private int upDown; | ||
| 82 | + | ||
| 83 | + /** | ||
| 84 | + * 备注 | ||
| 85 | + */ | ||
| 86 | + private String remark; | ||
| 87 | + | ||
| 88 | + private static DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss"); | ||
| 89 | + | ||
| 90 | + public long getId() { | ||
| 91 | + return id; | ||
| 92 | + } | ||
| 93 | + | ||
| 94 | + public void setId(long id) { | ||
| 95 | + this.id = id; | ||
| 96 | + } | ||
| 97 | + | ||
| 98 | + public String getRq() { | ||
| 99 | + return rq; | ||
| 100 | + } | ||
| 101 | + | ||
| 102 | + public void setRq(String rq) { | ||
| 103 | + this.rq = rq; | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + public String getCompany() { | ||
| 107 | + return company; | ||
| 108 | + } | ||
| 109 | + | ||
| 110 | + public void setCompany(String company) { | ||
| 111 | + this.company = company; | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + public String getBranchCompany() { | ||
| 115 | + return branchCompany; | ||
| 116 | + } | ||
| 117 | + | ||
| 118 | + public void setBranchCompany(String branchCompany) { | ||
| 119 | + this.branchCompany = branchCompany; | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | + public String getLine() { | ||
| 123 | + return line; | ||
| 124 | + } | ||
| 125 | + | ||
| 126 | + public void setLine(String line) { | ||
| 127 | + this.line = line; | ||
| 128 | + } | ||
| 129 | + | ||
| 130 | + public String getLineId() { | ||
| 131 | + return lineId; | ||
| 132 | + } | ||
| 133 | + | ||
| 134 | + public void setLineId(String lineId) { | ||
| 135 | + this.lineId = lineId; | ||
| 136 | + } | ||
| 137 | + | ||
| 138 | + public String getNbbm() { | ||
| 139 | + return nbbm; | ||
| 140 | + } | ||
| 141 | + | ||
| 142 | + public void setNbbm(String nbbm) { | ||
| 143 | + this.nbbm = nbbm; | ||
| 144 | + } | ||
| 145 | + | ||
| 146 | + public String getCarCode() { | ||
| 147 | + return carCode; | ||
| 148 | + } | ||
| 149 | + | ||
| 150 | + public void setCarCode(String carCode) { | ||
| 151 | + this.carCode = carCode; | ||
| 152 | + } | ||
| 153 | + | ||
| 154 | + public String getDriver() { | ||
| 155 | + return driver; | ||
| 156 | + } | ||
| 157 | + | ||
| 158 | + public void setDriver(String driver) { | ||
| 159 | + this.driver = driver; | ||
| 160 | + } | ||
| 161 | + | ||
| 162 | + public double getLat() { | ||
| 163 | + return lat; | ||
| 164 | + } | ||
| 165 | + | ||
| 166 | + public void setLat(double lat) { | ||
| 167 | + this.lat = lat; | ||
| 168 | + } | ||
| 169 | + | ||
| 170 | + public double getLon() { | ||
| 171 | + return lon; | ||
| 172 | + } | ||
| 173 | + | ||
| 174 | + public void setLon(double lon) { | ||
| 175 | + this.lon = lon; | ||
| 176 | + } | ||
| 177 | + | ||
| 178 | + public String getAddress() { | ||
| 179 | + return address; | ||
| 180 | + } | ||
| 181 | + | ||
| 182 | + public void setAddress(String address) { | ||
| 183 | + this.address = address; | ||
| 184 | + } | ||
| 185 | + | ||
| 186 | + public String getStartTime() { | ||
| 187 | + return startTime; | ||
| 188 | + } | ||
| 189 | + | ||
| 190 | + public void setStartTime(String startTime) { | ||
| 191 | + this.startTime = startTime; | ||
| 192 | + if (StringUtils.hasLength(startTime)) { | ||
| 193 | + this.startTimestamp = formatter.parseDateTime(startTime).getMillis(); | ||
| 194 | + } | ||
| 195 | + } | ||
| 196 | + | ||
| 197 | + public long getStartTimestamp() { | ||
| 198 | + return startTimestamp; | ||
| 199 | + } | ||
| 200 | + | ||
| 201 | + public void setStartTimestamp(long startTimestamp) { | ||
| 202 | + this.startTimestamp = startTimestamp; | ||
| 203 | + } | ||
| 204 | + | ||
| 205 | + public String getEndTime() { | ||
| 206 | + return endTime; | ||
| 207 | + } | ||
| 208 | + | ||
| 209 | + public void setEndTime(String endTime) { | ||
| 210 | + this.endTime = endTime; | ||
| 211 | + if (StringUtils.hasLength(endTime)) { | ||
| 212 | + this.endTimestamp = formatter.parseDateTime(endTime).getMillis(); | ||
| 213 | + } | ||
| 214 | + } | ||
| 215 | + | ||
| 216 | + public long getEndTimestamp() { | ||
| 217 | + return endTimestamp; | ||
| 218 | + } | ||
| 219 | + | ||
| 220 | + public void setEndTimestamp(long endTimestamp) { | ||
| 221 | + this.endTimestamp = endTimestamp; | ||
| 222 | + } | ||
| 223 | + | ||
| 224 | + public int getUpDown() { | ||
| 225 | + return upDown; | ||
| 226 | + } | ||
| 227 | + | ||
| 228 | + public void setUpDown(int upDown) { | ||
| 229 | + this.upDown = upDown; | ||
| 230 | + } | ||
| 231 | + | ||
| 232 | + public String getRemark() { | ||
| 233 | + return remark; | ||
| 234 | + } | ||
| 235 | + | ||
| 236 | + public void setRemark(String remark) { | ||
| 237 | + this.remark = remark; | ||
| 238 | + } | ||
| 239 | + | ||
| 240 | + @Override | ||
| 241 | + public boolean equals(Object o) { | ||
| 242 | + return this.id == ((CarErrorStop) o).id; | ||
| 243 | + } | ||
| 244 | + | ||
| 245 | + @Override | ||
| 246 | + public int hashCode() { | ||
| 247 | + return Long.hashCode(id); | ||
| 248 | + } | ||
| 249 | +} |
src/main/java/com/bsth/task/TimedTask.java
0 → 100644
| 1 | +package com.bsth.task; | ||
| 2 | + | ||
| 3 | +import com.bsth.common.SystemParamKeys; | ||
| 4 | +import com.bsth.data.BasicData; | ||
| 5 | +import com.bsth.entity.CarErrorStop; | ||
| 6 | +import com.bsth.entity.SystemParam; | ||
| 7 | +import com.bsth.util.HttpClientUtils; | ||
| 8 | +import com.bsth.websocket.handler.SendUtils; | ||
| 9 | +import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 10 | +import org.joda.time.DateTime; | ||
| 11 | +import org.slf4j.Logger; | ||
| 12 | +import org.slf4j.LoggerFactory; | ||
| 13 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 14 | +import org.springframework.scheduling.annotation.Scheduled; | ||
| 15 | +import org.springframework.stereotype.Component; | ||
| 16 | + | ||
| 17 | +import java.util.HashSet; | ||
| 18 | +import java.util.List; | ||
| 19 | +import java.util.Set; | ||
| 20 | + | ||
| 21 | +@Component | ||
| 22 | +public class TimedTask { | ||
| 23 | + | ||
| 24 | + private final static Logger log = LoggerFactory.getLogger(TimedTask.class); | ||
| 25 | + | ||
| 26 | + private ObjectMapper mapper = new ObjectMapper(); | ||
| 27 | + | ||
| 28 | + @Autowired | ||
| 29 | + private SendUtils sendUtils; | ||
| 30 | + | ||
| 31 | + private Set<CarErrorStop> carErrorStopSet = new HashSet<>(); | ||
| 32 | + | ||
| 33 | + @Scheduled(cron = "10 0 0 * * *") | ||
| 34 | + public void clear() { | ||
| 35 | + carErrorStopSet.clear(); | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + @Scheduled(initialDelay = 10000, fixedDelay = 10000) | ||
| 39 | + public void carErrorStopTask() { | ||
| 40 | + SystemParam param = BasicData.getSystemParam().get(SystemParamKeys.API_URL_CARERRORSTOP); | ||
| 41 | + String url = null; | ||
| 42 | + if (param != null && param.getValue() != null) { | ||
| 43 | + url = param.getValue(); | ||
| 44 | + } | ||
| 45 | + if (url == null) { | ||
| 46 | + log.error("carErrorStopTask url is null"); | ||
| 47 | + return; | ||
| 48 | + } | ||
| 49 | + url = String.format(url, new DateTime().toString("yyyyMMdd")); | ||
| 50 | + try { | ||
| 51 | + StringBuilder sb = HttpClientUtils.get(url); | ||
| 52 | + if (sb != null) { | ||
| 53 | + List<CarErrorStop> carErrorStopList = mapper.readValue(sb.toString(), mapper.getTypeFactory().constructParametricType(List.class, CarErrorStop.class)); | ||
| 54 | + for (CarErrorStop carErrorStop : carErrorStopList) { | ||
| 55 | + //if (!carErrorStopSet.contains(carErrorStop)) { | ||
| 56 | + // carErrorStopSet.add(carErrorStop); | ||
| 57 | + sendUtils.sendCarErrorStop(carErrorStop); | ||
| 58 | + //} | ||
| 59 | + } | ||
| 60 | + } | ||
| 61 | + } catch (Exception e) { | ||
| 62 | + log.error("getAndSendCarErrorStop异常", e); | ||
| 63 | + } | ||
| 64 | + } | ||
| 65 | +} |
src/main/java/com/bsth/websocket/handler/SendUtils.java
| 1 | -package com.bsth.websocket.handler; | ||
| 2 | - | ||
| 3 | -import com.alibaba.fastjson.JSONObject; | ||
| 4 | -import com.bsth.data.BasicData; | ||
| 5 | -import com.bsth.data.LineConfigData; | ||
| 6 | -import com.bsth.data.gpsdata_v2.entity.GpsEntity; | ||
| 7 | -import com.bsth.data.safe_driv.SafeDriv; | ||
| 8 | -import com.bsth.entity.directive.D80; | ||
| 9 | -import com.bsth.entity.realcontrol.ScheduleRealInfo; | ||
| 10 | -import com.bsth.websocket.dto.WsScheduleRealInfo; | ||
| 11 | -import com.fasterxml.jackson.core.JsonProcessingException; | ||
| 12 | -import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 13 | -import org.apache.commons.lang3.StringUtils; | ||
| 14 | -import org.slf4j.Logger; | ||
| 15 | -import org.slf4j.LoggerFactory; | ||
| 16 | -import org.springframework.beans.factory.annotation.Autowired; | ||
| 17 | -import org.springframework.stereotype.Component; | ||
| 18 | - | ||
| 19 | -import java.text.SimpleDateFormat; | ||
| 20 | -import java.util.*; | ||
| 21 | - | ||
| 22 | -@Component | ||
| 23 | -public class SendUtils{ | ||
| 24 | - | ||
| 25 | - @Autowired | ||
| 26 | - private RealControlSocketHandler socketHandler; | ||
| 27 | - | ||
| 28 | - @Autowired | ||
| 29 | - LineConfigData lineConfigData; | ||
| 30 | - | ||
| 31 | - private static SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); | ||
| 32 | - | ||
| 33 | - private static Logger logger = LoggerFactory.getLogger(SendUtils.class); | ||
| 34 | - | ||
| 35 | - /** | ||
| 36 | - * @throws JsonProcessingException | ||
| 37 | - * TODO(推送发车信息) | ||
| 38 | - */ | ||
| 39 | - public void sendFcsj(ScheduleRealInfo sch) { | ||
| 40 | - | ||
| 41 | - Map<String, Object> map = new HashMap<>(); | ||
| 42 | - map.put("fn", "faChe"); | ||
| 43 | - map.put("t", WsScheduleRealInfo.getInstance(sch)); | ||
| 44 | - map.put("dataStr", sdf.format(new Date())); | ||
| 45 | - | ||
| 46 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 47 | - | ||
| 48 | - try { | ||
| 49 | - socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 50 | - } catch (Exception e) { | ||
| 51 | - logger.error("", e); | ||
| 52 | - } | ||
| 53 | - } | ||
| 54 | - | ||
| 55 | - /** | ||
| 56 | - * | ||
| 57 | - * @Title: sendFcsjArtificial | ||
| 58 | - * @Description: TODO(要求页面刷新班次) | ||
| 59 | - * @throws | ||
| 60 | - */ | ||
| 61 | - public void refreshSch(List<ScheduleRealInfo> list){ | ||
| 62 | - if(null == list || list.size() == 0) | ||
| 63 | - return; | ||
| 64 | - | ||
| 65 | - Map<String, Object> map = new HashMap<>(); | ||
| 66 | - map.put("fn", "refreshSch"); | ||
| 67 | - map.put("ts", WsScheduleRealInfo.getMultiInstance(list)); | ||
| 68 | - | ||
| 69 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 70 | - | ||
| 71 | - try { | ||
| 72 | - socketHandler.sendMessageToLine(list.get(0).getXlBm(), mapper.writeValueAsString(map)); | ||
| 73 | - } catch (Exception e) { | ||
| 74 | - logger.error("", e); | ||
| 75 | - } | ||
| 76 | - } | ||
| 77 | - | ||
| 78 | - /** | ||
| 79 | - * @throws JsonProcessingException | ||
| 80 | - * @throws NumberFormatException @Title: sendFcsj @Description: | ||
| 81 | - * TODO(推送到达终点时间) @param @param schedule 班次 @throws | ||
| 82 | - */ | ||
| 83 | - public void sendZdsj(ScheduleRealInfo sch, ScheduleRealInfo nextSch, int finish) { | ||
| 84 | - | ||
| 85 | - Map<String, Object> map = new HashMap<>(); | ||
| 86 | - map.put("fn", "zhongDian"); | ||
| 87 | - map.put("t", WsScheduleRealInfo.getInstance(sch)); | ||
| 88 | - map.put("nt", WsScheduleRealInfo.getInstance(nextSch)); | ||
| 89 | - map.put("finish", finish); | ||
| 90 | - map.put("dataStr", sdf.format(new Date())); | ||
| 91 | - | ||
| 92 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 93 | - | ||
| 94 | - try { | ||
| 95 | - socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 96 | - } catch (Exception e) { | ||
| 97 | - logger.error("", e); | ||
| 98 | - } | ||
| 99 | - } | ||
| 100 | - | ||
| 101 | - /** | ||
| 102 | - * 推送班次信号状态 | ||
| 103 | - * @param state | ||
| 104 | - | ||
| 105 | - public void sendSignalState(SignalState state){ | ||
| 106 | - Map<String, Object> map = new HashMap<>(); | ||
| 107 | - map.put("fn", "signal_state"); | ||
| 108 | - map.put("data", state); | ||
| 109 | - | ||
| 110 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 111 | - | ||
| 112 | - try { | ||
| 113 | - socketHandler.sendMessageToLine(state.getLineCode(), mapper.writeValueAsString(map)); | ||
| 114 | - } catch (Exception e) { | ||
| 115 | - logger.error("", e); | ||
| 116 | - } | ||
| 117 | - }*/ | ||
| 118 | - | ||
| 119 | - /** | ||
| 120 | - * | ||
| 121 | - * @Title: sendDirectiveToPage | ||
| 122 | - * @Description: TODO(调度指令状态推送) | ||
| 123 | - */ | ||
| 124 | - public void sendDirectiveToPage(ScheduleRealInfo sch) { | ||
| 125 | - | ||
| 126 | - Map<String, Object> map = new HashMap<>(); | ||
| 127 | - map.put("fn", "directive"); | ||
| 128 | - map.put("t", WsScheduleRealInfo.getInstance(sch));; | ||
| 129 | - | ||
| 130 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 131 | - | ||
| 132 | - try { | ||
| 133 | - socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 134 | - } catch (JsonProcessingException e) { | ||
| 135 | - logger.error("", e); | ||
| 136 | - } | ||
| 137 | - } | ||
| 138 | - | ||
| 139 | - public void send80ToPage(D80 d80) { | ||
| 140 | - d80.getData().setNbbm(BasicData.deviceId2NbbmMap.get(d80.getDeviceId())); | ||
| 141 | - JSONObject json = JSONObject.parseObject(JSONObject.toJSONString(d80)); | ||
| 142 | - json.put("fn", "report80"); | ||
| 143 | - socketHandler.sendMessageToLine(d80.getData().getLineId().toString(), json.toJSONString()); | ||
| 144 | - } | ||
| 145 | - | ||
| 146 | - public void refreshSch(ScheduleRealInfo sch) { | ||
| 147 | - List<ScheduleRealInfo> list = new ArrayList<>(); | ||
| 148 | - list.add(sch); | ||
| 149 | - refreshSch(list); | ||
| 150 | - } | ||
| 151 | - | ||
| 152 | - public void deviceOffline(GpsEntity gps){ | ||
| 153 | - Map<String, Object> map = new HashMap<>(); | ||
| 154 | - map.put("fn", "deviceOffline"); | ||
| 155 | - map.put("gps", gps); | ||
| 156 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 157 | - | ||
| 158 | - try { | ||
| 159 | - socketHandler.sendMessageToLine(gps.getLineId().toString(), mapper.writeValueAsString(map)); | ||
| 160 | - } catch (JsonProcessingException e) { | ||
| 161 | - logger.error("", e); | ||
| 162 | - } | ||
| 163 | - } | ||
| 164 | - | ||
| 165 | - public void sendSafeDriv(SafeDriv sd){ | ||
| 166 | - Map<String, Object> map = new HashMap<>(); | ||
| 167 | - map.put("fn", "safeDriv"); | ||
| 168 | - map.put("t", sd);; | ||
| 169 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 170 | - | ||
| 171 | - try { | ||
| 172 | - socketHandler.sendMessageToLine(sd.getXlbm(), mapper.writeValueAsString(map)); | ||
| 173 | - } catch (JsonProcessingException e) { | ||
| 174 | - logger.error("", e); | ||
| 175 | - } | ||
| 176 | - } | ||
| 177 | - | ||
| 178 | - /** | ||
| 179 | - * 通知客户端,开始进行误点调整 | ||
| 180 | - * @param sch | ||
| 181 | - */ | ||
| 182 | - public void sendAutoWdtz(ScheduleRealInfo sch, ScheduleRealInfo cancel){ | ||
| 183 | - Map<String, Object> map = new HashMap<>(); | ||
| 184 | - map.put("fn", "auto_wdtz"); | ||
| 185 | - map.put("id", sch.getId()); | ||
| 186 | - if(cancel != null) | ||
| 187 | - map.put("cancelId", cancel.getId()); | ||
| 188 | - map.put("lineCode", sch.getXlBm()); | ||
| 189 | - map.put("minute", sch.getLateMinute()); | ||
| 190 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 191 | - | ||
| 192 | - try { | ||
| 193 | - socketHandler.sendMessageToLine(sch.getXlBm() ,mapper.writeValueAsString(map)); | ||
| 194 | - | ||
| 195 | - } catch (JsonProcessingException e) { | ||
| 196 | - logger.error("", e); | ||
| 197 | - } | ||
| 198 | - } | ||
| 199 | - | ||
| 200 | - /** | ||
| 201 | - * 对所有线调用户进行广播 | ||
| 202 | - * @param t | ||
| 203 | - */ | ||
| 204 | - public void sendRadioText(String t, String lineCode){ | ||
| 205 | - Map<String, Object> map = new HashMap<>(); | ||
| 206 | - map.put("fn", "admin_radio_text"); | ||
| 207 | - map.put("t", t); | ||
| 208 | - ObjectMapper mapper = new ObjectMapper(); | ||
| 209 | - | ||
| 210 | - try { | ||
| 211 | - if(StringUtils.isNotEmpty(lineCode)) | ||
| 212 | - socketHandler.sendMessageToLine(lineCode, mapper.writeValueAsString(map)); | ||
| 213 | - else | ||
| 214 | - socketHandler.sendMessage(mapper.writeValueAsString(map)); | ||
| 215 | - } catch (JsonProcessingException e) { | ||
| 216 | - logger.error("", e); | ||
| 217 | - } | ||
| 218 | - } | ||
| 219 | -} | 1 | +package com.bsth.websocket.handler; |
| 2 | + | ||
| 3 | +import com.alibaba.fastjson.JSONObject; | ||
| 4 | +import com.bsth.data.BasicData; | ||
| 5 | +import com.bsth.data.LineConfigData; | ||
| 6 | +import com.bsth.data.gpsdata_v2.entity.GpsEntity; | ||
| 7 | +import com.bsth.data.safe_driv.SafeDriv; | ||
| 8 | +import com.bsth.entity.directive.D80; | ||
| 9 | +import com.bsth.entity.realcontrol.ScheduleRealInfo; | ||
| 10 | +import com.bsth.entity.CarErrorStop; | ||
| 11 | +import com.bsth.websocket.dto.WsScheduleRealInfo; | ||
| 12 | +import com.fasterxml.jackson.core.JsonProcessingException; | ||
| 13 | +import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 14 | +import org.apache.commons.lang3.StringUtils; | ||
| 15 | +import org.slf4j.Logger; | ||
| 16 | +import org.slf4j.LoggerFactory; | ||
| 17 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 18 | +import org.springframework.stereotype.Component; | ||
| 19 | + | ||
| 20 | +import java.text.SimpleDateFormat; | ||
| 21 | +import java.util.*; | ||
| 22 | + | ||
| 23 | +@Component | ||
| 24 | +public class SendUtils{ | ||
| 25 | + | ||
| 26 | + @Autowired | ||
| 27 | + private RealControlSocketHandler socketHandler; | ||
| 28 | + | ||
| 29 | + @Autowired | ||
| 30 | + LineConfigData lineConfigData; | ||
| 31 | + | ||
| 32 | + private static SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); | ||
| 33 | + | ||
| 34 | + private static Logger logger = LoggerFactory.getLogger(SendUtils.class); | ||
| 35 | + | ||
| 36 | + /** | ||
| 37 | + * @throws JsonProcessingException | ||
| 38 | + * TODO(推送发车信息) | ||
| 39 | + */ | ||
| 40 | + public void sendFcsj(ScheduleRealInfo sch) { | ||
| 41 | + | ||
| 42 | + Map<String, Object> map = new HashMap<>(); | ||
| 43 | + map.put("fn", "faChe"); | ||
| 44 | + map.put("t", WsScheduleRealInfo.getInstance(sch)); | ||
| 45 | + map.put("dataStr", sdf.format(new Date())); | ||
| 46 | + | ||
| 47 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 48 | + | ||
| 49 | + try { | ||
| 50 | + socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 51 | + } catch (Exception e) { | ||
| 52 | + logger.error("", e); | ||
| 53 | + } | ||
| 54 | + } | ||
| 55 | + | ||
| 56 | + /** | ||
| 57 | + * | ||
| 58 | + * @Title: sendFcsjArtificial | ||
| 59 | + * @Description: TODO(要求页面刷新班次) | ||
| 60 | + * @throws | ||
| 61 | + */ | ||
| 62 | + public void refreshSch(List<ScheduleRealInfo> list){ | ||
| 63 | + if(null == list || list.size() == 0) | ||
| 64 | + return; | ||
| 65 | + | ||
| 66 | + Map<String, Object> map = new HashMap<>(); | ||
| 67 | + map.put("fn", "refreshSch"); | ||
| 68 | + map.put("ts", WsScheduleRealInfo.getMultiInstance(list)); | ||
| 69 | + | ||
| 70 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 71 | + | ||
| 72 | + try { | ||
| 73 | + socketHandler.sendMessageToLine(list.get(0).getXlBm(), mapper.writeValueAsString(map)); | ||
| 74 | + } catch (Exception e) { | ||
| 75 | + logger.error("", e); | ||
| 76 | + } | ||
| 77 | + } | ||
| 78 | + | ||
| 79 | + /** | ||
| 80 | + * @throws JsonProcessingException | ||
| 81 | + * @throws NumberFormatException @Title: sendFcsj @Description: | ||
| 82 | + * TODO(推送到达终点时间) @param @param schedule 班次 @throws | ||
| 83 | + */ | ||
| 84 | + public void sendZdsj(ScheduleRealInfo sch, ScheduleRealInfo nextSch, int finish) { | ||
| 85 | + | ||
| 86 | + Map<String, Object> map = new HashMap<>(); | ||
| 87 | + map.put("fn", "zhongDian"); | ||
| 88 | + map.put("t", WsScheduleRealInfo.getInstance(sch)); | ||
| 89 | + map.put("nt", WsScheduleRealInfo.getInstance(nextSch)); | ||
| 90 | + map.put("finish", finish); | ||
| 91 | + map.put("dataStr", sdf.format(new Date())); | ||
| 92 | + | ||
| 93 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 94 | + | ||
| 95 | + try { | ||
| 96 | + socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 97 | + } catch (Exception e) { | ||
| 98 | + logger.error("", e); | ||
| 99 | + } | ||
| 100 | + } | ||
| 101 | + | ||
| 102 | + /** | ||
| 103 | + * 推送班次信号状态 | ||
| 104 | + * @param state | ||
| 105 | + | ||
| 106 | + public void sendSignalState(SignalState state){ | ||
| 107 | + Map<String, Object> map = new HashMap<>(); | ||
| 108 | + map.put("fn", "signal_state"); | ||
| 109 | + map.put("data", state); | ||
| 110 | + | ||
| 111 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 112 | + | ||
| 113 | + try { | ||
| 114 | + socketHandler.sendMessageToLine(state.getLineCode(), mapper.writeValueAsString(map)); | ||
| 115 | + } catch (Exception e) { | ||
| 116 | + logger.error("", e); | ||
| 117 | + } | ||
| 118 | + }*/ | ||
| 119 | + | ||
| 120 | + /** | ||
| 121 | + * | ||
| 122 | + * @Title: sendDirectiveToPage | ||
| 123 | + * @Description: TODO(调度指令状态推送) | ||
| 124 | + */ | ||
| 125 | + public void sendDirectiveToPage(ScheduleRealInfo sch) { | ||
| 126 | + | ||
| 127 | + Map<String, Object> map = new HashMap<>(); | ||
| 128 | + map.put("fn", "directive"); | ||
| 129 | + map.put("t", WsScheduleRealInfo.getInstance(sch));; | ||
| 130 | + | ||
| 131 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 132 | + | ||
| 133 | + try { | ||
| 134 | + socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map)); | ||
| 135 | + } catch (JsonProcessingException e) { | ||
| 136 | + logger.error("", e); | ||
| 137 | + } | ||
| 138 | + } | ||
| 139 | + | ||
| 140 | + public void send80ToPage(D80 d80) { | ||
| 141 | + d80.getData().setNbbm(BasicData.deviceId2NbbmMap.get(d80.getDeviceId())); | ||
| 142 | + JSONObject json = JSONObject.parseObject(JSONObject.toJSONString(d80)); | ||
| 143 | + json.put("fn", "report80"); | ||
| 144 | + socketHandler.sendMessageToLine(d80.getData().getLineId().toString(), json.toJSONString()); | ||
| 145 | + } | ||
| 146 | + | ||
| 147 | + public void refreshSch(ScheduleRealInfo sch) { | ||
| 148 | + List<ScheduleRealInfo> list = new ArrayList<>(); | ||
| 149 | + list.add(sch); | ||
| 150 | + refreshSch(list); | ||
| 151 | + } | ||
| 152 | + | ||
| 153 | + public void deviceOffline(GpsEntity gps){ | ||
| 154 | + Map<String, Object> map = new HashMap<>(); | ||
| 155 | + map.put("fn", "deviceOffline"); | ||
| 156 | + map.put("gps", gps); | ||
| 157 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 158 | + | ||
| 159 | + try { | ||
| 160 | + socketHandler.sendMessageToLine(gps.getLineId().toString(), mapper.writeValueAsString(map)); | ||
| 161 | + } catch (JsonProcessingException e) { | ||
| 162 | + logger.error("", e); | ||
| 163 | + } | ||
| 164 | + } | ||
| 165 | + | ||
| 166 | + public void sendSafeDriv(SafeDriv sd){ | ||
| 167 | + Map<String, Object> map = new HashMap<>(); | ||
| 168 | + map.put("fn", "safeDriv"); | ||
| 169 | + map.put("t", sd);; | ||
| 170 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 171 | + | ||
| 172 | + try { | ||
| 173 | + socketHandler.sendMessageToLine(sd.getXlbm(), mapper.writeValueAsString(map)); | ||
| 174 | + } catch (JsonProcessingException e) { | ||
| 175 | + logger.error("", e); | ||
| 176 | + } | ||
| 177 | + } | ||
| 178 | + | ||
| 179 | + /** | ||
| 180 | + * 通知客户端,开始进行误点调整 | ||
| 181 | + * @param sch | ||
| 182 | + */ | ||
| 183 | + public void sendAutoWdtz(ScheduleRealInfo sch, ScheduleRealInfo cancel){ | ||
| 184 | + Map<String, Object> map = new HashMap<>(); | ||
| 185 | + map.put("fn", "auto_wdtz"); | ||
| 186 | + map.put("id", sch.getId()); | ||
| 187 | + if(cancel != null) | ||
| 188 | + map.put("cancelId", cancel.getId()); | ||
| 189 | + map.put("lineCode", sch.getXlBm()); | ||
| 190 | + map.put("minute", sch.getLateMinute()); | ||
| 191 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 192 | + | ||
| 193 | + try { | ||
| 194 | + socketHandler.sendMessageToLine(sch.getXlBm() ,mapper.writeValueAsString(map)); | ||
| 195 | + | ||
| 196 | + } catch (JsonProcessingException e) { | ||
| 197 | + logger.error("", e); | ||
| 198 | + } | ||
| 199 | + } | ||
| 200 | + | ||
| 201 | + /** | ||
| 202 | + * 对所有线调用户进行广播 | ||
| 203 | + * @param t | ||
| 204 | + */ | ||
| 205 | + public void sendRadioText(String t, String lineCode){ | ||
| 206 | + Map<String, Object> map = new HashMap<>(); | ||
| 207 | + map.put("fn", "admin_radio_text"); | ||
| 208 | + map.put("t", t); | ||
| 209 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 210 | + | ||
| 211 | + try { | ||
| 212 | + if(StringUtils.isNotEmpty(lineCode)) | ||
| 213 | + socketHandler.sendMessageToLine(lineCode, mapper.writeValueAsString(map)); | ||
| 214 | + else | ||
| 215 | + socketHandler.sendMessage(mapper.writeValueAsString(map)); | ||
| 216 | + } catch (JsonProcessingException e) { | ||
| 217 | + logger.error("", e); | ||
| 218 | + } | ||
| 219 | + } | ||
| 220 | + | ||
| 221 | + /** | ||
| 222 | + * 将车辆异常停车发送至线调页面 | ||
| 223 | + */ | ||
| 224 | + public void sendCarErrorStop(CarErrorStop carErrorStop) { | ||
| 225 | + Map<String, Object> map = new HashMap<>(); | ||
| 226 | + map.put("fn", "carErrorStop"); | ||
| 227 | + map.put("data", carErrorStop); | ||
| 228 | + ObjectMapper mapper = new ObjectMapper(); | ||
| 229 | + | ||
| 230 | + try { | ||
| 231 | + if (carErrorStop.getLineId() != null) { | ||
| 232 | + socketHandler.sendMessageToLine(carErrorStop.getLineId(), mapper.writeValueAsString(map)); | ||
| 233 | + } | ||
| 234 | + } catch (JsonProcessingException e) { | ||
| 235 | + logger.error("sendCarErrorStop", e); | ||
| 236 | + } | ||
| 237 | + } | ||
| 238 | +} |
src/main/resources/application-prod.properties
| @@ -2,13 +2,15 @@ server.port=9088 | @@ -2,13 +2,15 @@ server.port=9088 | ||
| 2 | management.port= 9001 | 2 | management.port= 9001 |
| 3 | management.address= 127.0.0.1 | 3 | management.address= 127.0.0.1 |
| 4 | 4 | ||
| 5 | +spring.task.scheduling.pool.size= 5 | ||
| 6 | + | ||
| 5 | spring.jpa.hibernate.ddl-auto= none | 7 | spring.jpa.hibernate.ddl-auto= none |
| 6 | spring.jpa.hibernate.naming_strategy= org.hibernate.cfg.ImprovedNamingStrategy | 8 | spring.jpa.hibernate.naming_strategy= org.hibernate.cfg.ImprovedNamingStrategy |
| 7 | #DATABASE | 9 | #DATABASE |
| 8 | spring.jpa.database= MYSQL | 10 | spring.jpa.database= MYSQL |
| 9 | spring.jpa.show-sql= false | 11 | spring.jpa.show-sql= false |
| 10 | spring.datasource.driver-class-name= com.mysql.jdbc.Driver | 12 | spring.datasource.driver-class-name= com.mysql.jdbc.Driver |
| 11 | -spring.datasource.url= jdbc:mysql://192.168.168.171:3306/control?useUnicode=true&characterEncoding=utf-8&useSSL=false | 13 | +spring.datasource.url= jdbc:mysql://192.168.168.171/control?useUnicode=true&characterEncoding=utf-8&useSSL=false |
| 12 | spring.datasource.username= root | 14 | spring.datasource.username= root |
| 13 | spring.datasource.password= root2jsp | 15 | spring.datasource.password= root2jsp |
| 14 | #DATASOURCE | 16 | #DATASOURCE |
src/main/resources/application.properties
| 1 | spring.profiles.active= test | 1 | spring.profiles.active= test |
| 2 | 2 | ||
| 3 | -spring.mvc.view.suffix=.html | ||
| 4 | -server.session.timeout=-1 | ||
| 5 | -security.basic.enabled=false | 3 | +spring.mvc.view.suffix= .html |
| 4 | +server.session.timeout= -1 | ||
| 5 | +security.basic.enabled= false | ||
| 6 | 6 | ||
| 7 | # \u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F\u9650\u5236\u914D\u7F6E | 7 | # \u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F\u9650\u5236\u914D\u7F6E |
| 8 | # File size limit | 8 | # File size limit |
| 9 | -multipart.maxFileSize = -1 | 9 | +multipart.maxFileSize= -1 |
| 10 | # Total request size for a multipart/form-data | 10 | # Total request size for a multipart/form-data |
| 11 | -multipart.maxRequestSize = -1 | 11 | +multipart.maxRequestSize= -1 |
| 12 | 12 | ||
| 13 | -server.compression.enabled=true | ||
| 14 | -server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain,text/javascript,text/css,application/javascript | 13 | +server.compression.enabled= true |
| 14 | +server.compression.mime-types= application/json,application/xml,text/html,text/xml,text/plain,text/javascript,text/css,application/javascript | ||
| 15 | 15 | ||
| 16 | # batch insert | 16 | # batch insert |
| 17 | -hibernate.jdbc.batch_size = 50 | ||
| 18 | -debug=true | 17 | +hibernate.jdbc.batch_size= 50 |
| 19 | \ No newline at end of file | 18 | \ No newline at end of file |
src/main/resources/static/real_control_v2/css/main.css
| 1 | -input::-webkit-outer-spin-button, | ||
| 2 | -input::-webkit-inner-spin-button { | ||
| 3 | - display: none; | ||
| 4 | -} | ||
| 5 | - | ||
| 6 | -input::-webkit-calendar-picker-indicator { | ||
| 7 | - display: none; | ||
| 8 | -} | ||
| 9 | - | ||
| 10 | -input::-webkit-datetime-edit { | ||
| 11 | - padding: 1px; | ||
| 12 | -} | ||
| 13 | - | ||
| 14 | -.ps-container > .ps-scrollbar-y-rail { | ||
| 15 | - z-index: 1 !important; | ||
| 16 | -} | ||
| 17 | - | ||
| 18 | -.ps-container > .ps-scrollbar-x-rail, | ||
| 19 | -.ps-container > .ps-scrollbar-y-rail { | ||
| 20 | - opacity: 0.6 !important; | ||
| 21 | - padding: 0 !important; | ||
| 22 | -} | ||
| 23 | - | ||
| 24 | -/* ^_^ baidu map hide logo */ | ||
| 25 | -.anchorBL, .anchorBL, .amap-logo, .amap-copyright { | ||
| 26 | - display: none; | ||
| 27 | -} | ||
| 28 | - | ||
| 29 | -audio, canvas, img, svg, video { | ||
| 30 | - max-width: none; | ||
| 31 | -} | ||
| 32 | - | ||
| 33 | -html, body { | ||
| 34 | - width: 100%; | ||
| 35 | - height: 100%; | ||
| 36 | - overflow: hidden; | ||
| 37 | - margin-left: 0 !important; | ||
| 38 | -} | ||
| 39 | - | ||
| 40 | -.main-container { | ||
| 41 | - height: calc(100% - 120px); | ||
| 42 | -} | ||
| 43 | - | ||
| 44 | -#main-tab-content { | ||
| 45 | - height: 100%; | ||
| 46 | - margin-bottom: 0; | ||
| 47 | -} | ||
| 48 | - | ||
| 49 | -::-webkit-scrollbar { | ||
| 50 | - width: 15px; | ||
| 51 | - height: 16px; | ||
| 52 | -} | ||
| 53 | - | ||
| 54 | -::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb { | ||
| 55 | - border-radius: 999px; | ||
| 56 | - border: 5px solid transparent; | ||
| 57 | -} | ||
| 58 | - | ||
| 59 | -::-webkit-scrollbar-track { | ||
| 60 | - box-shadow: 1px 1px 5px rgba(0, 0, 0, .2) inset; | ||
| 61 | -} | ||
| 62 | - | ||
| 63 | -::-webkit-scrollbar-thumb { | ||
| 64 | - min-height: 20px; | ||
| 65 | - background-clip: content-box; | ||
| 66 | - box-shadow: 0 0 0 5px rgba(0, 0, 0, .2) inset; | ||
| 67 | -} | ||
| 68 | - | ||
| 69 | -::-webkit-scrollbar-corner { | ||
| 70 | - background: transparent; | ||
| 71 | -} | ||
| 72 | - | ||
| 73 | -.uk-modal .uk-form.fv-form, .uk-modal .ct-modal-body { | ||
| 74 | - margin-bottom: -20px !important; | ||
| 75 | -} | ||
| 76 | - | ||
| 77 | -.uk-modal .uk-form.fv-form.fixed-tool { | ||
| 78 | - width: 100%; | ||
| 79 | - position: relative; | ||
| 80 | - height: 100%; | ||
| 81 | -} | ||
| 82 | - | ||
| 83 | -.uk-modal .ct-modal-body .uk-modal-footer { | ||
| 84 | - margin-left: 0; | ||
| 85 | -} | ||
| 86 | - | ||
| 87 | -.uk-modal .uk-form.fv-form.fixed-tool .uk-modal-footer { | ||
| 88 | - position: absolute; | ||
| 89 | - bottom: 0; | ||
| 90 | - width: calc(100% - 20px); | ||
| 91 | -} | ||
| 92 | - | ||
| 93 | -table.ct-fixed-table { | ||
| 94 | - table-layout: fixed; | ||
| 95 | -} | ||
| 96 | - | ||
| 97 | -table.ct-fixed-table tr.context-menu-active { | ||
| 98 | - background: #f0f0f0; | ||
| 99 | -} | ||
| 100 | - | ||
| 101 | -table.ct-fixed-table.uk-table tr td { | ||
| 102 | - white-space: nowrap; | ||
| 103 | - overflow: hidden; | ||
| 104 | - text-overflow: ellipsis; | ||
| 105 | -} | ||
| 106 | - | ||
| 107 | -table.ct-fixed-table.uk-table .uk-badge { | ||
| 108 | - padding: 2px 5px; | ||
| 109 | -} | ||
| 110 | - | ||
| 111 | -.horizontal-field { | ||
| 112 | - vertical-align: middle; | ||
| 113 | - margin: 0 5px; | ||
| 114 | -} | ||
| 115 | - | ||
| 116 | -.legend-tools { | ||
| 117 | - float: right; | ||
| 118 | - font-size: 11px; | ||
| 119 | -} | ||
| 120 | - | ||
| 121 | -.legend-tools a.uk-icon-small { | ||
| 122 | - margin: 0 5px; | ||
| 123 | - cursor: pointer; | ||
| 124 | -} | ||
| 125 | - | ||
| 126 | -.text-succ { | ||
| 127 | - color: #659f13; | ||
| 128 | -} | ||
| 129 | - | ||
| 130 | -.text-err { | ||
| 131 | - color: red; | ||
| 132 | -} | ||
| 133 | - | ||
| 134 | -.text-grey { | ||
| 135 | - color: grey; | ||
| 136 | -} | ||
| 137 | - | ||
| 138 | -svg.line-chart { | ||
| 139 | - width: 100%; | ||
| 140 | - height: 100%; | ||
| 141 | - position: absolute; | ||
| 142 | - left: 0; | ||
| 143 | -} | ||
| 144 | - | ||
| 145 | -svg.line-chart circle.station_circle { | ||
| 146 | - fill: #5e96d2; | ||
| 147 | - r: 5.5; | ||
| 148 | - stroke: rgb(253, 253, 253); | ||
| 149 | - stroke-width: 3; | ||
| 150 | - Pointer-events: none; | ||
| 151 | -} | ||
| 152 | - | ||
| 153 | -svg.line-chart circle.station_circle.down { | ||
| 154 | - fill: #c92121; | ||
| 155 | -} | ||
| 156 | - | ||
| 157 | -svg.line-chart path.station_link { | ||
| 158 | - stroke-width: 3.5px; | ||
| 159 | - stroke: #5E96D2; | ||
| 160 | - Pointer-events: none; | ||
| 161 | -} | ||
| 162 | - | ||
| 163 | -svg.line-chart path.station_link.down { | ||
| 164 | - stroke: #c92121; | ||
| 165 | -} | ||
| 166 | - | ||
| 167 | -svg.line-chart path.station_link.down.loop_line { | ||
| 168 | - stroke-dasharray: 4, 3; | ||
| 169 | - stroke-width: 1px; | ||
| 170 | -} | ||
| 171 | - | ||
| 172 | -svg.line-chart text.station_text { | ||
| 173 | - writing-mode: tb; | ||
| 174 | - fill: #3e3e3e; | ||
| 175 | - letter-spacing: -.2px; | ||
| 176 | - text-shadow: 0 0 2px #dadada; | ||
| 177 | - Pointer-events: none; | ||
| 178 | -} | ||
| 179 | - | ||
| 180 | -svg.line-chart text.station_text.up { | ||
| 181 | - fill: #4556b6; | ||
| 182 | -} | ||
| 183 | - | ||
| 184 | -svg.line-chart text.station_text.down { | ||
| 185 | - fill: #c94f21; | ||
| 186 | -} | ||
| 187 | - | ||
| 188 | -svg.line-chart g.item:first-child > text { | ||
| 189 | - stroke: #6f6e6e; | ||
| 190 | - fill: none; | ||
| 191 | -} | ||
| 192 | - | ||
| 193 | -svg.line-chart g.item:nth-last-child(3) > text { | ||
| 194 | - stroke: #6f6e6e; | ||
| 195 | - fill: none; | ||
| 196 | -} | ||
| 197 | - | ||
| 198 | -svg.line-chart g.item:first-child > text.up, | ||
| 199 | -svg.line-chart g.item:nth-last-child(3) > text.up { | ||
| 200 | - stroke: #4556b6; | ||
| 201 | -} | ||
| 202 | - | ||
| 203 | -svg.line-chart g.item:first-child > text.down, | ||
| 204 | -svg.line-chart g.item:nth-last-child(3) > text.down { | ||
| 205 | - stroke: #c94f21; | ||
| 206 | -} | ||
| 207 | - | ||
| 208 | -svg.line-chart g.gps-wrap > rect { | ||
| 209 | - width: 30px; | ||
| 210 | - height: 15px; | ||
| 211 | - /* fill: #fff; */ | ||
| 212 | - rx: 2px; | ||
| 213 | - cursor: pointer; | ||
| 214 | -} | ||
| 215 | - | ||
| 216 | -svg.line-chart g.gps-wrap > rect[updown="0"] { | ||
| 217 | - stroke: rgb(62, 80, 179); | ||
| 218 | - fill: rgb(62, 80, 179); | ||
| 219 | -} | ||
| 220 | - | ||
| 221 | -svg.line-chart g.gps-wrap > rect[updown="1"] { | ||
| 222 | - stroke: #c94f21; | ||
| 223 | - fill: #c94f21; | ||
| 224 | -} | ||
| 225 | - | ||
| 226 | -svg.line-chart g.gps-wrap > rect.hover { | ||
| 227 | - stroke-width: 2; | ||
| 228 | -} | ||
| 229 | - | ||
| 230 | -svg.line-chart g.gps-wrap > text { | ||
| 231 | - font-size: 12px; | ||
| 232 | - transform: translate(0, 12px); | ||
| 233 | - pointer-events: none; | ||
| 234 | -} | ||
| 235 | - | ||
| 236 | -svg.line-chart g.gps-wrap > text[updown="0"] { | ||
| 237 | - fill: #fff; | ||
| 238 | -} | ||
| 239 | - | ||
| 240 | -svg.line-chart g.gps-wrap > text[updown="1"] { | ||
| 241 | - fill: #fff; | ||
| 242 | -} | ||
| 243 | - | ||
| 244 | -svg.line-chart g.gps-wrap > rect.abnormal[updown="0"], | ||
| 245 | -svg.line-chart g.gps-wrap > rect.abnormal[updown="1"] { | ||
| 246 | - width: 40px; | ||
| 247 | - fill: yellow; | ||
| 248 | - stroke: yellow; | ||
| 249 | -} | ||
| 250 | - | ||
| 251 | -svg.line-chart g.gps-wrap > text.abnormal[updown="0"], | ||
| 252 | -svg.line-chart g.gps-wrap > text.abnormal[updown="1"] { | ||
| 253 | - fill: black; | ||
| 254 | -} | ||
| 255 | - | ||
| 256 | -svg.line-chart .merge_hide { | ||
| 257 | - display: none !important; | ||
| 258 | -} | ||
| 259 | - | ||
| 260 | -svg.line-chart g.merge-item rect { | ||
| 261 | - width: 22px; | ||
| 262 | - height: 22px; | ||
| 263 | - rx: 15px; | ||
| 264 | - fill: #19a53a; | ||
| 265 | - cursor: pointer; | ||
| 266 | - stroke: #19a53a; | ||
| 267 | - stroke-dasharray: 1, 2; | ||
| 268 | - stroke-width: 3px; | ||
| 269 | -} | ||
| 270 | - | ||
| 271 | -svg.line-chart g.merge-item text { | ||
| 272 | - fill: #fff; | ||
| 273 | - pointer-events: none; | ||
| 274 | -} | ||
| 275 | - | ||
| 276 | -.qtip-multi-gps { | ||
| 277 | - max-width: 720px !important; | ||
| 278 | -} | ||
| 279 | - | ||
| 280 | -.qtip-bootstrap.qtip-multi-gps .qtip-content { | ||
| 281 | - padding: 0; | ||
| 282 | -} | ||
| 283 | - | ||
| 284 | -.tooltip { | ||
| 285 | - position: relative; | ||
| 286 | - padding-bottom: 160px; | ||
| 287 | - width: 220px; | ||
| 288 | -} | ||
| 289 | - | ||
| 290 | -.multi-tooltip-wrap { | ||
| 291 | - width: 100%; | ||
| 292 | - max-height: 350px; | ||
| 293 | - overflow: auto; | ||
| 294 | -} | ||
| 295 | - | ||
| 296 | -.tip_map_wrap.multi { | ||
| 297 | - width: 100%; | ||
| 298 | - height: 130px; | ||
| 299 | -} | ||
| 300 | - | ||
| 301 | -.tooltip.multi-tooltip { | ||
| 302 | - width: 160px; | ||
| 303 | - display: inline-block; | ||
| 304 | - padding: 10px 0 10px 12px; | ||
| 305 | - border-right: 1px solid #eeeeee; | ||
| 306 | - border-bottom: 1px solid #eeeeee; | ||
| 307 | -} | ||
| 308 | - | ||
| 309 | -.tooltip hr { | ||
| 310 | - border-top: 1px solid #eeeeee; | ||
| 311 | - width: calc(100% + 30px); | ||
| 312 | - margin: 7px 0 11px -15px; | ||
| 313 | -} | ||
| 314 | - | ||
| 315 | -.tooltip.multi-tooltip hr { | ||
| 316 | - width: calc(100% + 16px); | ||
| 317 | -} | ||
| 318 | - | ||
| 319 | -.tooltip .tooltip-container { | ||
| 320 | - padding: 1px; | ||
| 321 | -} | ||
| 322 | - | ||
| 323 | -.tooltip .tooltip-container div, .tooltip .tooltip-container div a { | ||
| 324 | - margin: 7px 1px; | ||
| 325 | - font-size: 13px; | ||
| 326 | - color: rgb(76, 76, 76); | ||
| 327 | -} | ||
| 328 | - | ||
| 329 | -.tooltip .tooltip-container div.title { | ||
| 330 | - margin: 8px 1px 12px; | ||
| 331 | -} | ||
| 332 | - | ||
| 333 | -.tooltip .tooltip-container .title a { | ||
| 334 | - font-size: 18px; | ||
| 335 | - font-family: 微软雅黑; | ||
| 336 | -} | ||
| 337 | - | ||
| 338 | -.tooltip span.field { | ||
| 339 | - color: #7d7d7b; | ||
| 340 | - margin-right: 5px; | ||
| 341 | - width: 52px; | ||
| 342 | - display: inline-block; | ||
| 343 | - text-align: right; | ||
| 344 | -} | ||
| 345 | - | ||
| 346 | -.tooltip .tip_map_wrap { | ||
| 347 | - position: absolute; | ||
| 348 | - bottom: -16px; | ||
| 349 | - left: -15px; | ||
| 350 | - width: calc(100% + 28px); | ||
| 351 | - background: #fff; | ||
| 352 | - height: 165px; | ||
| 353 | - border-radius: 0 0 5px 5px; | ||
| 354 | - border-top: 1px solid #e6e4e4; | ||
| 355 | -} | ||
| 356 | - | ||
| 357 | -canvas.crosshair-layer { | ||
| 358 | - position: absolute; | ||
| 359 | - width: 100%; | ||
| 360 | - height: 100%; | ||
| 361 | - background: rgba(255, 255, 255, 0.33); | ||
| 362 | - left: 0; | ||
| 363 | -} | ||
| 364 | - | ||
| 365 | -li.map-panel { | ||
| 366 | - height: 100%; | ||
| 367 | - position: relative; | ||
| 368 | -} | ||
| 369 | - | ||
| 370 | -.main-container .load-panel { | ||
| 371 | - display: block; | ||
| 372 | - color: #999797; | ||
| 373 | -} | ||
| 374 | - | ||
| 375 | -.uk-panel-box-danger { | ||
| 376 | - background-color: #fff1f0; | ||
| 377 | - /*color: #d85030;*/ | ||
| 378 | - border-color: rgba(216, 80, 48, .3); | ||
| 379 | -} | ||
| 380 | - | ||
| 381 | -/*.uk-panel-box-danger .uk-panel-title { | ||
| 382 | - color: #d85030; | ||
| 383 | -}*/ | ||
| 384 | - | ||
| 385 | -.uk-badge-default { | ||
| 386 | - background-color: #a09b9c; | ||
| 387 | - background-image: -webkit-linear-gradient(top, #9a9898, #8c8687); | ||
| 388 | - background-image: linear-gradient(to bottom, #9a9898, #8c8687); | ||
| 389 | -} | ||
| 390 | - | ||
| 391 | -.ct-bottom-drawer { | ||
| 392 | - width: 100%; | ||
| 393 | - background: rgb(255, 255, 255); | ||
| 394 | - position: fixed; | ||
| 395 | - bottom: 0; | ||
| 396 | - box-shadow: 0 0 10px rgba(0, 0, 0, .3); | ||
| 397 | - transition: all .3s ease; | ||
| 398 | - height: 0; | ||
| 399 | -} | ||
| 400 | - | ||
| 401 | -.ct-bottom-drawer.open { | ||
| 402 | - height: 320px; | ||
| 403 | -} | ||
| 404 | - | ||
| 405 | -.ct-bottom-drawer a.ct-bottom-drawer-close { | ||
| 406 | - position: absolute; | ||
| 407 | - right: 10px; | ||
| 408 | - top: 10px; | ||
| 409 | - color: #c3c3c3; | ||
| 410 | - width: 20px; | ||
| 411 | - line-height: 20px; | ||
| 412 | - background: #fff; | ||
| 413 | - text-align: center; | ||
| 414 | - z-index: 99; | ||
| 415 | -} | ||
| 416 | - | ||
| 417 | -.ct-bottom-drawer a.ct-bottom-drawer-close:hover { | ||
| 418 | - text-decoration: none; | ||
| 419 | - color: grey; | ||
| 420 | -} | ||
| 421 | - | ||
| 422 | -.ct-bottom-drawer a.ct-bottom-drawer-close:after { | ||
| 423 | - display: block; | ||
| 424 | - content: "\f00d"; | ||
| 425 | - font-family: FontAwesome; | ||
| 426 | -} | ||
| 427 | - | ||
| 428 | -.ct-bottom-drawer-body { | ||
| 429 | - width: 100%; | ||
| 430 | - height: 100%; | ||
| 431 | -} | ||
| 432 | - | ||
| 433 | -#station_route_spacing_chart_drawer .svg_wrap { | ||
| 434 | - width: 80%; | ||
| 435 | - height: 100%; | ||
| 436 | - display: inline-block; | ||
| 437 | - font-size: 14px; | ||
| 438 | - overflow: hidden; | ||
| 439 | - position: relative; | ||
| 440 | -} | ||
| 441 | - | ||
| 442 | -#station_route_spacing_chart_drawer .drawer_right_map { | ||
| 443 | - width: 20%; | ||
| 444 | - height: 100%; | ||
| 445 | - display: inline-block; | ||
| 446 | -} | ||
| 447 | - | ||
| 448 | -#station_route_spacing_chart_drawer .svg_cont_body { | ||
| 449 | - height: 100%; | ||
| 450 | - position: absolute; | ||
| 451 | - top: 0; | ||
| 452 | - left: 0; | ||
| 453 | -} | ||
| 454 | - | ||
| 455 | -#station_route_spacing_chart_drawer svg { | ||
| 456 | - width: 100%; | ||
| 457 | - height: 100%; | ||
| 458 | -} | ||
| 459 | - | ||
| 460 | -#station_route_spacing_chart_drawer svg g._item rect { | ||
| 461 | - stroke: rgb(62, 80, 179); | ||
| 462 | - fill: rgb(62, 80, 179); | ||
| 463 | - width: 30px; | ||
| 464 | - height: 124px; | ||
| 465 | - rx: 5; | ||
| 466 | - transform: translate(-15px); | ||
| 467 | -} | ||
| 468 | - | ||
| 469 | -#station_route_spacing_chart_drawer svg g._item text { | ||
| 470 | - writing-mode: tb; | ||
| 471 | - transform: translate(0, 9px); | ||
| 472 | - fill: #fff; | ||
| 473 | -} | ||
| 474 | - | ||
| 475 | -#station_route_spacing_chart_drawer svg g._item path { | ||
| 476 | - stroke-width: 5.4px; | ||
| 477 | - stroke: #3e50b3; | ||
| 478 | -} | ||
| 479 | - | ||
| 480 | -#station_route_spacing_chart_drawer svg g._item circle { | ||
| 481 | - r: 3px; | ||
| 482 | - fill: #ffffff; | ||
| 483 | -} | ||
| 484 | - | ||
| 485 | -#station_route_spacing_chart_drawer svg g._item path.arc_path { | ||
| 486 | - stroke-width: 1.3px; | ||
| 487 | - stroke: #3e50b3; | ||
| 488 | - stroke-dasharray: 1000; | ||
| 489 | - stroke-dashoffset: 1000; | ||
| 490 | - fill: none; | ||
| 491 | - | ||
| 492 | - animation: dash .9s; | ||
| 493 | - webkit-amimation: dash .9s; | ||
| 494 | - animation-fill-mode: forwards; | ||
| 495 | - -webkit-animation-fill-mode: forwards; | ||
| 496 | -} | ||
| 497 | - | ||
| 498 | -@keyframes dash { | ||
| 499 | - to { | ||
| 500 | - stroke-dashoffset: 0; | ||
| 501 | - stroke-dasharray: 4, 4; | ||
| 502 | - } | ||
| 503 | -} | ||
| 504 | - | ||
| 505 | -@-webkit-keyframes dash { | ||
| 506 | - to { | ||
| 507 | - stroke-dashoffset: 0; | ||
| 508 | - stroke-dasharray: 4, 4; | ||
| 509 | - } | ||
| 510 | -} | ||
| 511 | - | ||
| 512 | -#station_route_spacing_chart_drawer svg g._item text.distance_text { | ||
| 513 | - writing-mode: horizontal-tb; | ||
| 514 | - fill: #3e50b3; | ||
| 515 | -} | ||
| 516 | - | ||
| 517 | -#station_route_spacing_chart_drawer svg g._item rect.distance_rect { | ||
| 518 | - height: 20px; | ||
| 519 | - width: 40px; | ||
| 520 | - fill: #fff !important; | ||
| 521 | - stroke-width: 0; | ||
| 522 | -} | ||
| 523 | - | ||
| 524 | -#station_route_spacing_chart_drawer .tl_desc_text { | ||
| 525 | - position: absolute; | ||
| 526 | - top: 5px; | ||
| 527 | - left: 5px; | ||
| 528 | - font-size: 12px; | ||
| 529 | - color: #525050; | ||
| 530 | - font-family: 微软雅黑; | ||
| 531 | -} | ||
| 532 | - | ||
| 533 | -#station_route_spacing_chart_drawer svg g._item:first-child circle { | ||
| 534 | - fill: #3e50b3; | ||
| 535 | - r: 6px; | ||
| 536 | -} | ||
| 537 | - | ||
| 538 | -#station_route_spacing_chart_drawer svg g._item:last-child circle { | ||
| 539 | - fill: #3e50b3; | ||
| 540 | - r: 6px; | ||
| 541 | -} | ||
| 542 | - | ||
| 543 | -/* 下行 */ | ||
| 544 | -#station_route_spacing_chart_drawer svg.down g._item rect { | ||
| 545 | - stroke: #dd3829; | ||
| 546 | - fill: #dd3829; | ||
| 547 | -} | ||
| 548 | - | ||
| 549 | -#station_route_spacing_chart_drawer svg.down g._item path { | ||
| 550 | - stroke: #dd3829; | ||
| 551 | -} | ||
| 552 | - | ||
| 553 | -#station_route_spacing_chart_drawer svg.down g._item:first-child circle { | ||
| 554 | - fill: #dd3829; | ||
| 555 | -} | ||
| 556 | - | ||
| 557 | -#station_route_spacing_chart_drawer svg.down g._item text.distance_text { | ||
| 558 | - fill: #dd3829; | ||
| 559 | -} | ||
| 560 | - | ||
| 561 | -#station_route_spacing_chart_drawer svg.down g._item path.arc_path { | ||
| 562 | - stroke: #dd3829; | ||
| 563 | -} | ||
| 564 | - | ||
| 565 | -#station_route_spacing_chart_drawer svg.down g._item:last-child circle { | ||
| 566 | - fill: #dd3829; | ||
| 567 | -} | ||
| 568 | - | ||
| 569 | -.svg-edit-panel-wrap { | ||
| 570 | - width: 48%; | ||
| 571 | - border: 1px solid #e1d3d3; | ||
| 572 | - padding: 12px 0 0 0; | ||
| 573 | - border-radius: 4px; | ||
| 574 | - position: relative; | ||
| 575 | - display: inline-block; | ||
| 576 | - vertical-align: top; | ||
| 577 | - height: 440px; | ||
| 578 | -} | ||
| 579 | - | ||
| 580 | -.svg-edit-panel-wrap .title-badge { | ||
| 581 | - position: absolute; | ||
| 582 | - top: -10px; | ||
| 583 | - left: 7px; | ||
| 584 | - font-size: 13px; | ||
| 585 | - background: #fff; | ||
| 586 | - padding: 0 3px; | ||
| 587 | - color: #888888; | ||
| 588 | -} | ||
| 589 | - | ||
| 590 | -.svg-edit-panel-wrap .rename-tools { | ||
| 591 | - height: 21px; | ||
| 592 | - padding: 0 0 0 9px; | ||
| 593 | -} | ||
| 594 | - | ||
| 595 | -.svg-edit-panel-wrap .rename-item-panel { | ||
| 596 | - border-bottom: 1px solid #ede5e5; | ||
| 597 | - padding: 4px; | ||
| 598 | -} | ||
| 599 | - | ||
| 600 | -.svg-edit-panel-wrap .rename-item-panel select { | ||
| 601 | - width: 150px; | ||
| 602 | -} | ||
| 603 | - | ||
| 604 | -.svg-edit-panel-wrap .rename-item-panel input { | ||
| 605 | - margin-left: 7px; | ||
| 606 | -} | ||
| 607 | - | ||
| 608 | -.svg-edit-panel-wrap .rename-item-panel input[type=checkbox] { | ||
| 609 | - margin-top: 2px; | ||
| 610 | - margin-right: 4px; | ||
| 611 | -} | ||
| 612 | - | ||
| 613 | -.svg-edit-panel-wrap .rename-item-panel.active { | ||
| 614 | - background: #65c9f8; | ||
| 615 | - box-shadow: 0px 3px 7px 0 rgba(101, 201, 248, 0.48), 0px 1px 4px 0 rgba(101, 201, 248, 0.32); | ||
| 616 | -} | ||
| 617 | - | ||
| 618 | -.svg-edit-panel-wrap .rename-item-panel.active select, | ||
| 619 | -.svg-edit-panel-wrap .rename-item-panel.active input { | ||
| 620 | - background: #65c9f8; | ||
| 621 | - color: #fff; | ||
| 622 | -} | ||
| 623 | - | ||
| 624 | -.svg-edit-panel-wrap .rename-item-panel.active i { | ||
| 625 | - color: #e4f6ff; | ||
| 626 | -} | ||
| 627 | - | ||
| 628 | -.svg-edit-panel-wrap .rename-item-panel.active input[type=checkbox] { | ||
| 629 | - border: none; | ||
| 630 | -} | ||
| 631 | - | ||
| 632 | -.svg-edit-panel-wrap .rename-item-panel.active input[type=checkbox]:before { | ||
| 633 | - color: #fff; | ||
| 634 | -} | ||
| 635 | - | ||
| 636 | -.svg-edit-panel-wrap .rename-tools a { | ||
| 637 | - font-size: 14px; | ||
| 638 | - padding: 5px; | ||
| 639 | -} | ||
| 640 | - | ||
| 641 | -.svg-edit-panel-wrap .rename-tools a:hover { | ||
| 642 | - background: #e8edef; | ||
| 643 | - border-radius: 5px; | ||
| 644 | -} | ||
| 645 | - | ||
| 646 | -.station-list { | ||
| 647 | - width: 190px; | ||
| 648 | - padding: 2px 7px; | ||
| 649 | - height: 100%; | ||
| 650 | - overflow: auto; | ||
| 651 | - display: inline-block; | ||
| 652 | -} | ||
| 653 | - | ||
| 654 | -.station-list .station-item { | ||
| 655 | - padding: 3px 0; | ||
| 656 | - margin: 5px 0; | ||
| 657 | - border-radius: 3px; | ||
| 658 | - font-size: 13px; | ||
| 659 | - text-indent: 7px; | ||
| 660 | - cursor: pointer; | ||
| 661 | - white-space: nowrap; | ||
| 662 | - overflow: hidden; | ||
| 663 | - text-overflow: ellipsis; | ||
| 664 | -} | ||
| 665 | - | ||
| 666 | -.station-list .station-item.disable, | ||
| 667 | -.station-list .station-item.disable:hover { | ||
| 668 | - background: #d5c9c9 !important; | ||
| 669 | - color: #686565 !important; | ||
| 670 | -} | ||
| 671 | - | ||
| 672 | -.station-list.up .station-item { | ||
| 673 | - background: #5364c3; | ||
| 674 | - color: white; | ||
| 675 | -} | ||
| 676 | - | ||
| 677 | -.station-list.up .station-item:hover { | ||
| 678 | - box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.2), 0px 1px 4px 0 rgba(0, 0, 0, 0.19); | ||
| 679 | - background: #4556b6; | ||
| 680 | -} | ||
| 681 | - | ||
| 682 | -.station-list.down .station-item { | ||
| 683 | - background: #f95858; | ||
| 684 | - color: white; | ||
| 685 | -} | ||
| 686 | - | ||
| 687 | -.station-list.down .station-item:hover { | ||
| 688 | - box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.2), 0px 1px 4px 0 rgba(0, 0, 0, 0.19); | ||
| 689 | - background: #e95151; | ||
| 690 | -} | ||
| 691 | - | ||
| 692 | -.modal-dotted-hr { | ||
| 693 | - height: 1px; | ||
| 694 | - border: none; | ||
| 695 | - border-top: 1px dashed #d1d1d1; | ||
| 696 | - width: calc(100% + 40px); | ||
| 697 | - margin-left: -20px; | ||
| 698 | -} | ||
| 699 | - | ||
| 700 | -#add-sub-task-range_turn-modal .main-sch-panel { | ||
| 701 | - height: 60px; | ||
| 702 | - border: 1px solid #dddddd; | ||
| 703 | - border-radius: 5px; | ||
| 704 | - position: relative; | ||
| 705 | - padding: 20px 0 0 8px; | ||
| 706 | -} | ||
| 707 | - | ||
| 708 | -#add-sub-task-range_turn-modal .main-sch-panel:before { | ||
| 709 | - content: '主任务'; | ||
| 710 | - position: absolute; | ||
| 711 | - top: -10px; | ||
| 712 | - left: 10px; | ||
| 713 | - background: #fff; | ||
| 714 | - padding: 0 4px; | ||
| 715 | - font-size: 12px; | ||
| 716 | - color: #adadad; | ||
| 717 | -} | ||
| 718 | - | ||
| 719 | -.ct_row { | ||
| 720 | - font-size: 0; | ||
| 721 | -} | ||
| 722 | - | ||
| 723 | -.ct_row .ct_cell { | ||
| 724 | - display: inline-block; | ||
| 725 | - font-size: 13px; | ||
| 726 | - white-space: nowrap; | ||
| 727 | - overflow: hidden; | ||
| 728 | - text-overflow: ellipsis; | ||
| 729 | -} | ||
| 730 | - | ||
| 731 | -.ct_row .ct_cell label { | ||
| 732 | - color: #979393; | ||
| 733 | - margin-right: 3px; | ||
| 734 | -} | ||
| 735 | - | ||
| 736 | -.ct_row .ct_cell.c_1_3 { | ||
| 737 | - width: 33%; | ||
| 738 | -} | ||
| 739 | - | ||
| 740 | -#schedule-lp_change-modal .sch-list dl dd { | ||
| 741 | - font-size: 14px; | ||
| 742 | -} | ||
| 743 | - | ||
| 744 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(1) { | ||
| 745 | - width: 5%; | ||
| 746 | - border-left: 1px solid #dedede; | ||
| 747 | -} | ||
| 748 | - | ||
| 749 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(2) { | ||
| 750 | - width: 22%; | ||
| 751 | -} | ||
| 752 | - | ||
| 753 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(3) { | ||
| 754 | - width: 17%; | ||
| 755 | -} | ||
| 756 | - | ||
| 757 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(4) { | ||
| 758 | - width: 10%; | ||
| 759 | -} | ||
| 760 | - | ||
| 761 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(5) { | ||
| 762 | - width: 21%; | ||
| 763 | -} | ||
| 764 | - | ||
| 765 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(6) { | ||
| 766 | - width: 10%; | ||
| 767 | -} | ||
| 768 | - | ||
| 769 | -#schedule-lp_change-modal .sch-list dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(7) { | ||
| 770 | - width: 14%; | ||
| 771 | -} | ||
| 772 | - | ||
| 773 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(1) { | ||
| 774 | - width: 5%; | ||
| 775 | - border-left: 1px solid #dedede; | ||
| 776 | -} | ||
| 777 | - | ||
| 778 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(2) { | ||
| 779 | - width: 14%; | ||
| 780 | -} | ||
| 781 | - | ||
| 782 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(3) { | ||
| 783 | - width: 10%; | ||
| 784 | -} | ||
| 785 | - | ||
| 786 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(4) { | ||
| 787 | - width: 21%; | ||
| 788 | -} | ||
| 789 | - | ||
| 790 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(5) { | ||
| 791 | - width: 10%; | ||
| 792 | -} | ||
| 793 | - | ||
| 794 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(6) { | ||
| 795 | - width: 17%; | ||
| 796 | -} | ||
| 797 | - | ||
| 798 | -#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(7) { | ||
| 799 | - width: 22%; | ||
| 800 | -} | ||
| 801 | - | ||
| 802 | -#schedule-lp_change-modal .ct_table.sch-list .ct_table_body dl.active { | ||
| 803 | - background: #b9d2ff; | ||
| 804 | -} | ||
| 805 | - | ||
| 806 | -#schedule-lp_change-modal .ct_table.sch-list .ct_table_body dl.active dd { | ||
| 807 | - border-top: 1px solid #b9d2ff; | ||
| 808 | -} | ||
| 809 | - | ||
| 810 | -#schedule-lp_change-modal .ct_table.sch-list dl.active input[type=checkbox] { | ||
| 811 | - border: none; | ||
| 812 | -} | ||
| 813 | - | ||
| 814 | -#schedule-lp_change-modal .ct_table.sch-list.reverse .ct_table_body dl.active { | ||
| 815 | - background: #ffe2b9; | ||
| 816 | -} | ||
| 817 | - | ||
| 818 | -#schedule-lp_change-modal .ct_table.sch-list.reverse .ct_table_body dl.active dd { | ||
| 819 | - border-top: 1px solid #ffe2b9; | ||
| 820 | -} | ||
| 821 | - | ||
| 822 | -#cache_data_manage-modal .uk-table td { | ||
| 823 | - vertical-align: bottom; | ||
| 824 | -} | ||
| 825 | - | ||
| 826 | -#cache_data_manage-modal .uk-table td, | ||
| 827 | -#cache_data_manage-modal .uk-table th { | ||
| 828 | - padding: 8px 8px 6px; | ||
| 829 | -} | ||
| 830 | - | ||
| 831 | -.ps-help-panel { | ||
| 832 | - color: grey; | ||
| 833 | - padding: 5px 2px; | ||
| 834 | -} | ||
| 835 | - | ||
| 836 | -.ps-help-panel small { | ||
| 837 | - display: block; | ||
| 838 | -} | ||
| 839 | - | ||
| 840 | -svg text.offline { | ||
| 841 | - fill: #6f6a6a !important; | ||
| 842 | -} | ||
| 843 | - | ||
| 844 | -svg rect.offline { | ||
| 845 | - stroke: #dbdada !important; | ||
| 846 | - fill: #dbdada !important; | ||
| 847 | -} | ||
| 848 | - | ||
| 849 | -.tooltip .tooltip-container .title a > .abnormal-text { | ||
| 850 | - font-size: 14px; | ||
| 851 | - color: #ff5e5e; | ||
| 852 | - font-weight: 600; | ||
| 853 | -} | ||
| 854 | - | ||
| 855 | -#addChildTaskBtn { | ||
| 856 | - margin-left: 5px; | ||
| 857 | - color: #36729b; | ||
| 858 | - padding: 1px 5px 1px 6px; | ||
| 859 | -} | ||
| 860 | - | ||
| 861 | -#addChildTaskBtn:hover { | ||
| 862 | - box-shadow: 2px 1px 3px 0 rgba(0, 0, 0, 0.2), 0px 3px 8px 0 rgba(0, 0, 0, 0.19); | ||
| 863 | -} | ||
| 864 | - | ||
| 865 | -.edit-icon { | ||
| 866 | - color: #aba9a9; | ||
| 867 | - font-size: 12px; | ||
| 868 | - margin-left: 5px; | ||
| 869 | - display: none; | ||
| 870 | -} | ||
| 871 | - | ||
| 872 | -.operation-real-text { | ||
| 873 | - position: absolute; | ||
| 874 | - top: 9px; | ||
| 875 | - width: 100%; | ||
| 876 | - left: 0; | ||
| 877 | - text-align: center; | ||
| 878 | - pointer-events: none; | ||
| 879 | -} | ||
| 880 | - | ||
| 881 | -.operation-real-text span { | ||
| 882 | - padding: 15px; | ||
| 883 | - background: #ff4f4f; | ||
| 884 | - color: white; | ||
| 885 | - box-shadow: 0px 4px 6px 0 rgba(0, 0, 0, 0.2), 0px 4px 10px 0 rgba(0, 0, 0, 0.19); | ||
| 886 | - border-radius: 1px 1px 4px 4px; | ||
| 887 | -} | ||
| 888 | - | ||
| 889 | -#oil_station-modal.ct-form-modal form.uk-form-horizontal .uk-form-label { | ||
| 890 | - width: 120px; | ||
| 891 | -} | ||
| 892 | - | ||
| 893 | -#oil_station-modal.ct-form-modal form.uk-form-horizontal .uk-form-controls { | ||
| 894 | - margin-left: 125px; | ||
| 895 | -} | ||
| 896 | - | ||
| 897 | -#oil_station-modal .uk-form-icon > [class*=uk-icon-] { | ||
| 898 | - right: 23px; | ||
| 899 | -} | ||
| 900 | - | ||
| 901 | -#oil_station-modal .uk-form-icon:not(.uk-form-icon-flip) > input { | ||
| 902 | - padding-left: 10px !important; | ||
| 903 | -} | ||
| 904 | - | ||
| 905 | -#oil_station-modal .uk-form-icon { | ||
| 906 | - width: calc(100% - 145px); | ||
| 907 | -} | ||
| 908 | - | ||
| 909 | -#oil_station-modal .uk-icon-mile:before { | ||
| 910 | - content: '公里'; | ||
| 911 | -} | ||
| 912 | - | ||
| 913 | -#oil_station-modal .uk-icon-minute:before { | ||
| 914 | - content: '分钟'; | ||
| 915 | -} | ||
| 916 | - | ||
| 917 | -option.oil_station_opt { | ||
| 918 | - color: red; | ||
| 919 | -} | ||
| 920 | - | ||
| 921 | -#oil_station-modal .uk-modal .uk-form.fv-form { | ||
| 922 | - margin-bottom: 0 !important; | ||
| 923 | -} | ||
| 924 | - | ||
| 925 | -#gb_wait_modal .uk-modal-spinner { | ||
| 926 | - top: 25px; | ||
| 927 | - -webkit-transform: translate(-50%, 0); | ||
| 928 | - transform: translate(-50%, 0); | ||
| 929 | -} | ||
| 930 | - | ||
| 931 | -#gb_wait_modal .wait-modal-text { | ||
| 932 | - text-align: center; | ||
| 933 | - margin-top: 35px; | ||
| 934 | - font-size: 15px; | ||
| 935 | - color: #635e5e; | ||
| 936 | -} | ||
| 937 | - | ||
| 938 | -.park-and-station-wrap { | ||
| 939 | - margin-top: 25px; | ||
| 940 | - border: 1px solid #b9b9b9; | ||
| 941 | - width: 580px; | ||
| 942 | - padding: 12px; | ||
| 943 | - border-radius: 5px; | ||
| 944 | - box-shadow: 0 2px 5px rgba(0,0,0,.1); | ||
| 945 | - margin-bottom: 15px; | ||
| 946 | -} | ||
| 947 | - | ||
| 948 | -.park-and-station-wrap select { | ||
| 949 | - width: auto !important; | ||
| 950 | -} | ||
| 951 | - | ||
| 952 | -.park-and-station-wrap>span{ | ||
| 953 | - vertical-align: middle; | ||
| 954 | - margin-top: 9px; | ||
| 955 | - display: inline-block; | ||
| 956 | -} | ||
| 957 | - | ||
| 958 | -/** 安全驾驶相关css */ | ||
| 959 | -.safe_driv_pop_wrap { | ||
| 960 | - position: absolute; | ||
| 961 | - right: 12px; | ||
| 962 | - bottom: 12px; | ||
| 963 | - z-index: 99; | ||
| 964 | -} | ||
| 965 | - | ||
| 966 | -.safe_driv_pop { | ||
| 967 | - background: #d44b4b; | ||
| 968 | - font-size: 15px; | ||
| 969 | - padding: 9px 10px 0; | ||
| 970 | - border: 1px solid #f4f0f0; | ||
| 971 | - border-radius: 5px; | ||
| 972 | - cursor: pointer; | ||
| 973 | - box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); | ||
| 974 | - transition: all .03s; | ||
| 975 | - color: #f2f2f2; | ||
| 976 | -} | ||
| 977 | - | ||
| 978 | -.safe_driv_pop:hover { | ||
| 979 | - background: #bc2a2a; | ||
| 980 | -} | ||
| 981 | - | ||
| 982 | -.safe_driv_pop .title { | ||
| 983 | -} | ||
| 984 | - | ||
| 985 | -.safe_driv_pop .desc { | ||
| 986 | - display: block; | ||
| 987 | - font-size: 12px; | ||
| 988 | - color: #ff9d9d; | ||
| 989 | - text-align: right; | ||
| 990 | - margin-right: 5px; | ||
| 991 | -} | ||
| 992 | - | ||
| 993 | -/** 嵌入表单modal滚动条样式 */ | ||
| 994 | -#formFragmentModal::-webkit-scrollbar { | ||
| 995 | - width: 10px; | ||
| 996 | - background-color: #F5F5F5; | ||
| 997 | -} | ||
| 998 | - | ||
| 999 | -#formFragmentModal::-webkit-scrollbar-thumb { | ||
| 1000 | - background-color: #000000; | ||
| 1001 | -} | ||
| 1002 | - | ||
| 1003 | -#formFragmentModal::-webkit-scrollbar-track { | ||
| 1004 | - border: 0; | ||
| 1005 | - background-color: #F5F5F5; | ||
| 1006 | - border-radius: 0; | ||
| 1007 | -} | ||
| 1008 | - | ||
| 1009 | -#formFragmentModal::-webkit-scrollbar-thumb { | ||
| 1010 | - border: 5px solid rgb(226, 122, 122); | ||
| 1011 | -} | ||
| 1012 | - | ||
| 1013 | -#schedule-addsch_oil-modal select { | ||
| 1014 | - height: 30px !important; | ||
| 1015 | -} | ||
| 1016 | - | ||
| 1017 | -#oil_station-modal .input_clear_icon { | ||
| 1018 | - position: absolute; | ||
| 1019 | - top: 6px; | ||
| 1020 | - right: 108px; | ||
| 1021 | - color: #f75757; | ||
| 1022 | - height: 18px; | ||
| 1023 | - line-height: 18px; | ||
| 1024 | - border-radius: 7px; | ||
| 1025 | - font-size: 16px; | ||
| 1026 | - display: none; | ||
| 1027 | - cursor: pointer; | ||
| 1028 | -} | ||
| 1029 | - | ||
| 1030 | -#oil_station-modal .input_clear_icon:hover { | ||
| 1031 | - color: #de2020; | ||
| 1032 | -} | ||
| 1033 | - | ||
| 1034 | -#oil_station-modal .input_clear_icon:before { | ||
| 1035 | - display: block; | ||
| 1036 | - font-family: FontAwesome; | ||
| 1037 | - content: "\f057"; | ||
| 1038 | -} | ||
| 1039 | - | ||
| 1040 | -#oil_station-modal input.readonly { | ||
| 1041 | - background: #dddddd; | ||
| 1042 | -} | ||
| 1043 | - | ||
| 1044 | -.ct_tags { | ||
| 1045 | - margin-bottom: 12px; | ||
| 1046 | -} | ||
| 1047 | - | ||
| 1048 | -.ct_tags > span { | ||
| 1049 | - padding: 3px 7px; | ||
| 1050 | - background: #e8e8e8; | ||
| 1051 | - color: #3a3939; | ||
| 1052 | - cursor: pointer; | ||
| 1053 | - margin-right: 5px; | ||
| 1054 | -} | ||
| 1055 | - | ||
| 1056 | -.ct_tags > span.active { | ||
| 1057 | - background: #62a9e1; | ||
| 1058 | - color: white; | ||
| 1059 | - box-shadow: 0 0 4px rgba(0, 0, 0, 0.35); | ||
| 1060 | -} | ||
| 1061 | - | ||
| 1062 | -.ct_tags > span.active:before { | ||
| 1063 | - content: "\f00c"; | ||
| 1064 | - font-family: FontAwesome; | ||
| 1065 | - margin-right: 2px; | ||
| 1066 | - font-size: 13px; | ||
| 1067 | -} | ||
| 1068 | - | ||
| 1069 | -.ct_tags > span:hover { | ||
| 1070 | - box-shadow: 0 0 4px rgba(0, 0, 0, .3); | ||
| 1071 | -} | ||
| 1072 | - | ||
| 1073 | -span.late-badge { | ||
| 1074 | - height: 20px; | ||
| 1075 | - line-height: 20px; | ||
| 1076 | - margin-top: 8px; | ||
| 1077 | - color: grey; | ||
| 1078 | - margin-left: 2px; | ||
| 1079 | -} | ||
| 1080 | - | ||
| 1081 | -dl.intimity span.late-badge { | ||
| 1082 | - color: #fbfbfb; | ||
| 1083 | -} | ||
| 1084 | - | ||
| 1085 | -/** badge tooltip */ | ||
| 1086 | -.uk-badge.c_task:hover, | ||
| 1087 | -.uk-badge.sch_region:hover { | ||
| 1088 | - background-image: none; | ||
| 1089 | - background: #38b3e1; | ||
| 1090 | - border: 1px solid #7ebad1; | ||
| 1091 | -} | ||
| 1092 | - | ||
| 1093 | -.uk-badge.out:hover { | ||
| 1094 | - background-image: none; | ||
| 1095 | - background: #8fc650; | ||
| 1096 | - border: 1px solid #949f86; | ||
| 1097 | -} | ||
| 1098 | - | ||
| 1099 | -.uk-badge.in:hover { | ||
| 1100 | - background-image: none; | ||
| 1101 | - background: #fabc64; | ||
| 1102 | - border: 1px solid #a68c67; | ||
| 1103 | -} | ||
| 1104 | - | ||
| 1105 | -.qtip.sch-badge-tip { | ||
| 1106 | - max-width: 700px; | ||
| 1107 | -} | ||
| 1108 | - | ||
| 1109 | -.tip_task_list { | ||
| 1110 | - width: 530px; | ||
| 1111 | - margin-bottom: -10px; | ||
| 1112 | -} | ||
| 1113 | - | ||
| 1114 | -.tip_task_list dl { | ||
| 1115 | - font-size: 0; | ||
| 1116 | - border-bottom: 1px solid #e6e6e6; | ||
| 1117 | - margin: 0; | ||
| 1118 | -} | ||
| 1119 | - | ||
| 1120 | -.tip_task_list dl:last-child { | ||
| 1121 | - border-bottom: none; | ||
| 1122 | -} | ||
| 1123 | - | ||
| 1124 | -.tip_task_list dl dt, | ||
| 1125 | -.tip_task_list dl dd { | ||
| 1126 | - display: inline-block; | ||
| 1127 | - font-size: 13px; | ||
| 1128 | - white-space: nowrap; | ||
| 1129 | - overflow: hidden; | ||
| 1130 | - text-overflow: ellipsis; | ||
| 1131 | - height: 24px; | ||
| 1132 | - line-height: 24px; | ||
| 1133 | -} | ||
| 1134 | - | ||
| 1135 | -.tip_task_list dl dt:nth-of-type(1), .tip_task_list dl dd:nth-of-type(1) { | ||
| 1136 | - width: 38px; | ||
| 1137 | - border-right: 1px solid #c8c8c8; | ||
| 1138 | -} | ||
| 1139 | - | ||
| 1140 | -.tip_task_list dl dt:nth-of-type(2), .tip_task_list dl dd:nth-of-type(2) { | ||
| 1141 | - width: 18%; | ||
| 1142 | - text-indent: 5px; | ||
| 1143 | -} | ||
| 1144 | - | ||
| 1145 | -.tip_task_list dl dt:nth-of-type(3), .tip_task_list dl dd:nth-of-type(3) { | ||
| 1146 | - width: 11%; | ||
| 1147 | -} | ||
| 1148 | - | ||
| 1149 | -.tip_task_list dl dt:nth-of-type(4), .tip_task_list dl dd:nth-of-type(4) { | ||
| 1150 | - width: 25%; | ||
| 1151 | -} | ||
| 1152 | - | ||
| 1153 | -.tip_task_list dl dt:nth-of-type(5), .tip_task_list dl dd:nth-of-type(5) { | ||
| 1154 | - width: 25%; | ||
| 1155 | -} | ||
| 1156 | - | ||
| 1157 | -.tip_task_list dl dt:nth-of-type(6), .tip_task_list dl dd:nth-of-type(6) { | ||
| 1158 | - width: 12%; | ||
| 1159 | -} | ||
| 1160 | - | ||
| 1161 | -.tip_task_list dl dd:nth-of-type(1) a { | ||
| 1162 | - color: #3c3c3c; | ||
| 1163 | - text-decoration: underline; | ||
| 1164 | - font-size: 12px; | ||
| 1165 | -} | ||
| 1166 | - | ||
| 1167 | -.tip_task_list dl.service { | ||
| 1168 | - color: blue; | ||
| 1169 | -} | ||
| 1170 | - | ||
| 1171 | -.tip_task_list dl.service.destroy { | ||
| 1172 | - color: red; | ||
| 1173 | -} | ||
| 1174 | - | ||
| 1175 | -.tip_task_list dl.service.temp_add { | ||
| 1176 | - color: #9C27B0; | ||
| 1177 | -} | ||
| 1178 | - | ||
| 1179 | -.tip_task_list dl span { | ||
| 1180 | - margin: 0; | ||
| 1181 | - width: auto; | ||
| 1182 | -} | ||
| 1183 | - | ||
| 1184 | -ul.left_tabs_lg { | ||
| 1185 | - border: 1px solid #efeded; | ||
| 1186 | - height: 100%; | ||
| 1187 | - background: #fafafa; | ||
| 1188 | -} | ||
| 1189 | - | ||
| 1190 | -ul.left_tabs_lg li { | ||
| 1191 | - line-height: 40px; | ||
| 1192 | - font-size: 15px; | ||
| 1193 | -} | ||
| 1194 | - | ||
| 1195 | -#schedule-addsch-modal .uk-modal-footer { | ||
| 1196 | - border-top: none; | ||
| 1197 | - background: none; | ||
| 1198 | -} | ||
| 1199 | - | ||
| 1200 | -.ct_line_lp_badge { | ||
| 1201 | - float: left; | ||
| 1202 | - margin-top: 6px; | ||
| 1203 | - background: #e0e0e0; | ||
| 1204 | - padding: 2px 7px; | ||
| 1205 | - border-radius: 3px; | ||
| 1206 | -} | ||
| 1207 | - | ||
| 1208 | -.uk-badge.sch_ldks { | ||
| 1209 | - background: #8c8c8c; | ||
| 1210 | - background-image: linear-gradient(to bottom, #a7a7a7, #8c8c8c); | ||
| 1211 | -} | ||
| 1212 | - | ||
| 1213 | -.ct_layer_modal { | ||
| 1214 | - background: #e5e5e5; | ||
| 1215 | - height: 100%; | ||
| 1216 | - width: 100%; | ||
| 1217 | - overflow: auto; | ||
| 1218 | -} | ||
| 1219 | - | ||
| 1220 | -.layui-layer-setwin { | ||
| 1221 | - | ||
| 1222 | -} | ||
| 1223 | - | ||
| 1224 | -.device_config_table dl dt:nth-of-type(1), .device_config_table dl dd:nth-of-type(1) { | ||
| 1225 | - width: 7%; | ||
| 1226 | - text-indent: 10px; | ||
| 1227 | -} | ||
| 1228 | - | ||
| 1229 | -.device_config_table dl dt:nth-of-type(2), .device_config_table dl dd:nth-of-type(2) { | ||
| 1230 | - width: 7%; | ||
| 1231 | -} | ||
| 1232 | - | ||
| 1233 | -.device_config_table dl dt:nth-of-type(3), .device_config_table dl dd:nth-of-type(3) { | ||
| 1234 | - width: 8%; | ||
| 1235 | -} | ||
| 1236 | - | ||
| 1237 | -.device_config_table dl dt:nth-of-type(4), .device_config_table dl dd:nth-of-type(4) { | ||
| 1238 | - width: 5%; | ||
| 1239 | -} | ||
| 1240 | - | ||
| 1241 | -.device_config_table dl dt:nth-of-type(5), .device_config_table dl dd:nth-of-type(5) { | ||
| 1242 | - width: 4%; | ||
| 1243 | -} | ||
| 1244 | - | ||
| 1245 | -.device_config_table dl dt:nth-of-type(6), .device_config_table dl dd:nth-of-type(6) { | ||
| 1246 | - width: 4%; | ||
| 1247 | -} | ||
| 1248 | - | ||
| 1249 | -.device_config_table dl dt:nth-of-type(7), .device_config_table dl dd:nth-of-type(7) { | ||
| 1250 | - width: 4%; | ||
| 1251 | -} | ||
| 1252 | - | ||
| 1253 | -.device_config_table dl dt:nth-of-type(8), .device_config_table dl dd:nth-of-type(8) { | ||
| 1254 | - width: 5%; | ||
| 1255 | -} | ||
| 1256 | - | ||
| 1257 | -.device_config_table dl dt:nth-of-type(9), .device_config_table dl dd:nth-of-type(9) { | ||
| 1258 | - width: 5%; | ||
| 1259 | -} | ||
| 1260 | - | ||
| 1261 | -.device_config_table dl dt:nth-of-type(10), .device_config_table dl dd:nth-of-type(10) { | ||
| 1262 | - width: 8%; | ||
| 1263 | -} | ||
| 1264 | - | ||
| 1265 | -.device_config_table dl dt:nth-of-type(11), .device_config_table dl dd:nth-of-type(11) { | ||
| 1266 | - width: 5%; | ||
| 1267 | -} | ||
| 1268 | - | ||
| 1269 | -.device_config_table dl dt:nth-of-type(12), .device_config_table dl dd:nth-of-type(12) { | ||
| 1270 | - width: 5%; | ||
| 1271 | -} | ||
| 1272 | - | ||
| 1273 | -.device_config_table dl dt:nth-of-type(13), .device_config_table dl dd:nth-of-type(13) { | ||
| 1274 | - width: 4%; | ||
| 1275 | -} | ||
| 1276 | - | ||
| 1277 | -.device_config_table dl dt:nth-of-type(14), .device_config_table dl dd:nth-of-type(14) { | ||
| 1278 | - width: 4%; | ||
| 1279 | -} | ||
| 1280 | - | ||
| 1281 | -.device_config_table dl dt:nth-of-type(15), .device_config_table dl dd:nth-of-type(15) { | ||
| 1282 | - width: 4%; | ||
| 1283 | -} | ||
| 1284 | - | ||
| 1285 | -.device_config_table dl dt:nth-of-type(16), .device_config_table dl dd:nth-of-type(16) { | ||
| 1286 | - width: 3%; | ||
| 1287 | -} | ||
| 1288 | - | ||
| 1289 | -.device_config_table dl dt:nth-of-type(17), .device_config_table dl dd:nth-of-type(17) { | ||
| 1290 | - width: 4%; | ||
| 1291 | -} | ||
| 1292 | - | ||
| 1293 | -.device_config_table dl dt:nth-of-type(18), .device_config_table dl dd:nth-of-type(18) { | ||
| 1294 | - width: 13%; | ||
| 1295 | -} | ||
| 1296 | - | ||
| 1297 | -.uk-tooltip { | ||
| 1298 | - z-index: 29999999 !important; | ||
| 1299 | -} | ||
| 1300 | - | ||
| 1301 | -.device_config_table.ct_table dl dd, | ||
| 1302 | -.device_config_table.ct_table dl dt { | ||
| 1303 | - border-right: 1px solid #dedede !important; | ||
| 1304 | -} | ||
| 1305 | - | ||
| 1306 | -.device_configs_manager .search_form { | ||
| 1307 | - text-indent: 12px; | ||
| 1308 | - margin-bottom: 0; | ||
| 1309 | - padding: 18px 5px; | ||
| 1310 | -} | ||
| 1311 | - | ||
| 1312 | -.sub_task_form_v2 { | ||
| 1313 | - background: #f9f9f9; | ||
| 1314 | - padding: 12px 15px; | ||
| 1315 | - border-radius: 5px 0 5px 5px; | ||
| 1316 | - border: 1px solid #dfdfdf; | ||
| 1317 | - position: relative; | ||
| 1318 | - margin-bottom: 20px; | ||
| 1319 | -} | ||
| 1320 | - | ||
| 1321 | -.task_form_close_icon { | ||
| 1322 | - background: #f9f9f9; | ||
| 1323 | - padding: 0px 4px; | ||
| 1324 | - position: absolute; | ||
| 1325 | - top: -8px; | ||
| 1326 | - right: -8px; | ||
| 1327 | - color: #898989; | ||
| 1328 | - font-size: 15px; | ||
| 1329 | - border: 1px solid #dfdfdf; | ||
| 1330 | - border-radius: 100%; | ||
| 1331 | - border-left: none; | ||
| 1332 | - border-bottom: none; | ||
| 1333 | - transition: all .03s; | ||
| 1334 | -} | ||
| 1335 | - | ||
| 1336 | -.task_form_close_icon:hover { | ||
| 1337 | - border: 1px solid #ff1515; | ||
| 1338 | - border-left: none; | ||
| 1339 | - border-bottom: none; | ||
| 1340 | - color: #e03e3e; | ||
| 1341 | -} | ||
| 1342 | - | ||
| 1343 | -.sub_task_form_v2:hover::after { | ||
| 1344 | - color: #5f5b5b; | ||
| 1345 | -} | ||
| 1346 | - | ||
| 1347 | -.sub_task_form_v2.uk-form-horizontal .uk-form-label { | ||
| 1348 | - width: 80px; | ||
| 1349 | -} | ||
| 1350 | - | ||
| 1351 | -.sub_task_form_v2.uk-form-horizontal .uk-form-controls { | ||
| 1352 | - margin-left: 85px; | ||
| 1353 | -} | ||
| 1354 | - | ||
| 1355 | -.sub_task_form_v2.uk-form-horizontal .uk-form-controls input[type=text], | ||
| 1356 | -.sub_task_form_v2.uk-form-horizontal .uk-form-controls input[type=time], | ||
| 1357 | -.sub_task_form_v2.uk-form-horizontal .uk-form-controls select { | ||
| 1358 | - width: 100%; | ||
| 1359 | -} | ||
| 1360 | - | ||
| 1361 | -#add-sub-task-main-modal .uk-modal-footer { | ||
| 1362 | - background: none; | ||
| 1363 | - border-top: none; | ||
| 1364 | -} | ||
| 1365 | - | ||
| 1366 | -#add-sub-task-main-modal .uk-grid + .uk-grid { | ||
| 1367 | - margin-top: 12px; | ||
| 1368 | -} | ||
| 1369 | - | ||
| 1370 | -#add-sub-task-main-modal .plus_icon_span { | ||
| 1371 | - font-size: 26px; | ||
| 1372 | - color: #b2b2b2; | ||
| 1373 | - padding: 10px 64px; | ||
| 1374 | - display: inline-block; | ||
| 1375 | - border: 1px dashed grey; | ||
| 1376 | - margin: 15px 0; | ||
| 1377 | - border-radius: 5px; | ||
| 1378 | - cursor: pointer; | ||
| 1379 | -} | ||
| 1380 | - | ||
| 1381 | -#add-sub-task-main-modal .uk-animation-fade { | ||
| 1382 | - animation-duration: .3s; | ||
| 1383 | -} | ||
| 1384 | - | ||
| 1385 | -#add-sub-task-main-modal .forms { | ||
| 1386 | - max-height: 642px; | ||
| 1387 | - overflow-y: auto; | ||
| 1388 | - overflow-x: hidden; | ||
| 1389 | - padding: 8px 8px 0 0; | ||
| 1390 | -} | ||
| 1391 | - | ||
| 1392 | -.add_custom_wrap .forms .sub_task_form_v2:last-child { | ||
| 1393 | - margin-bottom: 0; | ||
| 1394 | -} | ||
| 1395 | - | ||
| 1396 | -.sub_task_form_v2.destroy_form { | ||
| 1397 | - background-color: #fff5f4 !important; | ||
| 1398 | -} | ||
| 1399 | - | ||
| 1400 | -.uk-form > .half_change_car_box { | ||
| 1401 | - margin: -10px 0 15px; | ||
| 1402 | - padding: 3px 5px; | ||
| 1403 | - display: inline-block; | ||
| 1404 | - border: 1px solid #dfdddd; | ||
| 1405 | - color: #918f8f; | ||
| 1406 | -} | ||
| 1407 | - | ||
| 1408 | -.half_change_car_box input[type=checkbox] { | ||
| 1409 | - vertical-align: top; | ||
| 1410 | -} | ||
| 1411 | - | ||
| 1412 | -.uk-form > .half_change_car_box.active { | ||
| 1413 | - background: #4CAF50; | ||
| 1414 | - color: #fff; | ||
| 1415 | -} | ||
| 1416 | - | ||
| 1417 | -.uk-form > .half_change_car_box.active input[type=checkbox] { | ||
| 1418 | - background: #4caf50; | ||
| 1419 | - border-color: #4caf50; | ||
| 1420 | -} | ||
| 1421 | - | ||
| 1422 | -.uk-form > .half_change_car_box.active input[type=checkbox]:before { | ||
| 1423 | - color: #ffffff; | ||
| 1424 | -} | ||
| 1425 | - | ||
| 1426 | -.sub_task_form_v2.change_car { | ||
| 1427 | - z-index: 99; | ||
| 1428 | -} | ||
| 1429 | - | ||
| 1430 | -.st_range_top_form { | ||
| 1431 | - padding: 0 0 15px 5px; | ||
| 1432 | - border: 1px solid #c4bb76; | ||
| 1433 | - background: #e5e1c1; | ||
| 1434 | - margin-bottom: 15px; | ||
| 1435 | - box-shadow: 0px 4px 3px 0 rgba(142, 138, 138, 0.2), 0px 4px 5px 0 rgba(157, 156, 156, 0.19); | ||
| 1436 | -} | ||
| 1437 | - | ||
| 1438 | -.st_range_top_form .uk-form-row { | ||
| 1439 | - margin-top: 20px; | ||
| 1440 | -} | ||
| 1441 | - | ||
| 1442 | -.uk-form-horizontal.st_range_top_form .uk-form-label { | ||
| 1443 | - width: 80px; | ||
| 1444 | -} | ||
| 1445 | - | ||
| 1446 | -.uk-form-horizontal.st_range_top_form .uk-form-controls { | ||
| 1447 | - margin-left: 84px; | ||
| 1448 | -} | ||
| 1449 | - | ||
| 1450 | -.uk-form-horizontal.st_range_top_form .uk-form-controls select { | ||
| 1451 | - width: calc(100% - 2px); | ||
| 1452 | -} | ||
| 1453 | - | ||
| 1454 | -.sub_task_form_v2.service_st_form { | ||
| 1455 | - background: #f4faff; | ||
| 1456 | -} | ||
| 1457 | - | ||
| 1458 | -.uk-modal .uk-form.fv-form.sub_task_form_v2 { | ||
| 1459 | - margin-bottom: 20px !important; | ||
| 1460 | -} | ||
| 1461 | - | ||
| 1462 | -.sub_task_table_wrap .ct_table > .ct_table_body { | ||
| 1463 | - border-bottom: none; | ||
| 1464 | -} | ||
| 1465 | - | ||
| 1466 | -.err_panel { | ||
| 1467 | - font-size: 12px; | ||
| 1468 | - color: #7e7d7d; | ||
| 1469 | - font-family: 微软雅黑; | ||
| 1470 | - margin-top: 5px; | ||
| 1471 | -} | ||
| 1472 | - | ||
| 1473 | -#schedule-lp_change-modal .ct_table dl { | ||
| 1474 | - height: 35px; | ||
| 1475 | -} | ||
| 1476 | - | ||
| 1477 | -#schedule-lp_change-modal .ct_table dl dd, #schedule-lp_change-modal .ct_table dl dt { | ||
| 1478 | - line-height: 35px; | ||
| 1479 | -} | ||
| 1480 | - | ||
| 1481 | -/* | ||
| 1482 | -.sub_task_form_v2.repeat_main:before{ | ||
| 1483 | - content: '复'; | ||
| 1484 | - position: absolute; | ||
| 1485 | - top: -10px; | ||
| 1486 | - font-size: 12px; | ||
| 1487 | - color: #2196F3; | ||
| 1488 | - background: #ffffff; | ||
| 1489 | - padding: 0 3px; | ||
| 1490 | - font-weight: 600; | ||
| 1491 | -}*/ | ||
| 1492 | - | ||
| 1493 | -.sub_task_form_v2:before { | ||
| 1494 | - position: absolute; | ||
| 1495 | - top: -7px; | ||
| 1496 | - font-size: 12px; | ||
| 1497 | - padding: 0 3px; | ||
| 1498 | - font-weight: 600; | ||
| 1499 | - line-height: 14px; | ||
| 1500 | -} | ||
| 1501 | - | ||
| 1502 | -.sub_task_form_v2.destroy_form:before { | ||
| 1503 | - content: '烂班' !important; | ||
| 1504 | - color: #f14235 !important; | ||
| 1505 | - background: #ffffff !important; | ||
| 1506 | -} | ||
| 1507 | - | ||
| 1508 | -.sub_task_form_v2.service_form:before { | ||
| 1509 | - content: '营运'; | ||
| 1510 | - color: #2196F3; | ||
| 1511 | - background: #ffffff; | ||
| 1512 | -} | ||
| 1513 | - | ||
| 1514 | -.sub_task_form_v2.service_form.temp_service:before { | ||
| 1515 | - content: '营运 (临加)'; | ||
| 1516 | - color: #9C27B0; | ||
| 1517 | - background: #ffffff; | ||
| 1518 | -} | ||
| 1519 | - | ||
| 1520 | -.sub_task_form_v2.service_form.temp_service { | ||
| 1521 | - background: #faf0fd; | ||
| 1522 | -} | ||
| 1523 | - | ||
| 1524 | -.sub_task_form_v2.empty_form:before { | ||
| 1525 | - content: '空驶'; | ||
| 1526 | - color: #928f92; | ||
| 1527 | - background: #ffffff; | ||
| 1528 | -} | ||
| 1529 | - | ||
| 1530 | -.sub_task_form_v2.service_form { | ||
| 1531 | - background: #f4faff; | ||
| 1532 | -} | ||
| 1533 | - | ||
| 1534 | -/*.sub_task_form_v2.repeat_main.destroy_form:before{ | ||
| 1535 | - color: #F44336; | ||
| 1536 | -} | ||
| 1537 | - | ||
| 1538 | -.sub_task_form_v2.repeat_main{ | ||
| 1539 | - background: #f4faff; | ||
| 1540 | -}*/ | ||
| 1541 | -.footer_tools { | ||
| 1542 | - position: absolute; | ||
| 1543 | - left: 235px; | ||
| 1544 | - bottom: 19px; | ||
| 1545 | -} | ||
| 1546 | - | ||
| 1547 | -.footer_mileage_count { | ||
| 1548 | - border: 1px solid #f2f2f2; | ||
| 1549 | - padding: 5px; | ||
| 1550 | - box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.2), 0px 2px 7px 0 rgba(0, 0, 0, 0.19); | ||
| 1551 | - display: inline-block; | ||
| 1552 | -} | ||
| 1553 | - | ||
| 1554 | -.footer_mileage_count > span { | ||
| 1555 | - padding: 2px 5px; | ||
| 1556 | -} | ||
| 1557 | - | ||
| 1558 | -.footer_mileage_count > span.service_sum { | ||
| 1559 | - color: #2196F3; | ||
| 1560 | -} | ||
| 1561 | - | ||
| 1562 | -.footer_mileage_count > span.empty_sum { | ||
| 1563 | - color: #636363; | ||
| 1564 | -} | ||
| 1565 | - | ||
| 1566 | -.footer_mileage_count > span.destroy_sum { | ||
| 1567 | - color: #f5574b; | ||
| 1568 | -} | ||
| 1569 | - | ||
| 1570 | -.station_to_park_link { | ||
| 1571 | - display: inline-block; | ||
| 1572 | - margin-left: 15px; | ||
| 1573 | - vertical-align: bottom; | ||
| 1574 | - font-size: 12px; | ||
| 1575 | -} | ||
| 1576 | - | ||
| 1577 | -.station_to_park_link > a { | ||
| 1578 | - color: #607D8B; | ||
| 1579 | -} | ||
| 1580 | - | ||
| 1581 | -#station_to_park-modal.ct-form-modal form input[type=text], | ||
| 1582 | -#station_to_park-modal.ct-form-modal form select { | ||
| 1583 | - width: auto; | ||
| 1584 | -} | ||
| 1585 | - | ||
| 1586 | -.s_2_park_form_wrap { | ||
| 1587 | - background: #fafafa; | ||
| 1588 | - border: 1px solid #e5e5e5; | ||
| 1589 | - padding: 7px 16px; | ||
| 1590 | - margin: 15px 0; | ||
| 1591 | - position: relative; | ||
| 1592 | -} | ||
| 1593 | - | ||
| 1594 | -.s_2_park_form_wrap .ct_close { | ||
| 1595 | - position: absolute; | ||
| 1596 | - top: -12px; | ||
| 1597 | - padding: 0 4px; | ||
| 1598 | - right: -8px; | ||
| 1599 | - color: #939393; | ||
| 1600 | - border: 1px solid #f7dfdf; | ||
| 1601 | - border-radius: 25px; | ||
| 1602 | - cursor: pointer; | ||
| 1603 | -} | ||
| 1604 | - | ||
| 1605 | -.s_2_park_form_wrap .ct_close:hover { | ||
| 1606 | - background: #e5e5e5; | ||
| 1607 | - color: #fd6e6e; | ||
| 1608 | -} | ||
| 1609 | - | ||
| 1610 | -.s_2_park_form_wrap label { | ||
| 1611 | - color: #666; | ||
| 1612 | - font-size: 13px; | ||
| 1613 | -} | ||
| 1614 | - | ||
| 1615 | -#station_to_park-modal.ct-form-modal form input[readonly] { | ||
| 1616 | - background: #fafafa; | ||
| 1617 | -} | ||
| 1618 | - | ||
| 1619 | -.s_2_park_form_wrap .bottom_label { | ||
| 1620 | - margin-top: 25px; | ||
| 1621 | - display: block; | ||
| 1622 | -} | ||
| 1623 | - | ||
| 1624 | -.s_2_park_form_wrap .bottom_label_2 { | ||
| 1625 | - margin-top: 4px; | ||
| 1626 | - display: block; | ||
| 1627 | -} | ||
| 1628 | - | ||
| 1629 | -.ct_describe { | ||
| 1630 | - font-size: 12px; | ||
| 1631 | - color: #909090; | ||
| 1632 | - font-family: FontAwesome; | ||
| 1633 | -} | ||
| 1634 | - | ||
| 1635 | -.ct_describe:before { | ||
| 1636 | - content: "\f059"; | ||
| 1637 | - margin-right: 3px; | ||
| 1638 | -} | ||
| 1639 | - | ||
| 1640 | -#add-sub-task-main-modal abbr { | ||
| 1641 | - display: inline-block; | ||
| 1642 | - font-size: 12px; | ||
| 1643 | - margin-left: 25px; | ||
| 1644 | - vertical-align: bottom; | ||
| 1645 | - color: #929292; | ||
| 1646 | -} | ||
| 1647 | - | ||
| 1648 | -#all-devices-modal .search-form input[type=text] { | ||
| 1649 | - width: 100px; | ||
| 1650 | -} | ||
| 1651 | - | ||
| 1652 | -#all-devices-modal .auto-refresh { | ||
| 1653 | - vertical-align: middle; | ||
| 1654 | - margin-left: 5px; | ||
| 1655 | - color: grey; | ||
| 1656 | -} | ||
| 1657 | - | ||
| 1658 | -#all-devices-modal .auto-refresh.active { | ||
| 1659 | - color: #405dff; | ||
| 1660 | -} | ||
| 1661 | - | ||
| 1662 | -#all-devices-modal .uk-margin-small-top { | ||
| 1663 | - margin-top: 0 !important; | ||
| 1664 | -} | ||
| 1665 | - | ||
| 1666 | -#history-sch-maintain-modal .add_lp_link { | ||
| 1667 | - display: inline-block; | ||
| 1668 | - vertical-align: bottom; | ||
| 1669 | - margin-left: 15px; | ||
| 1670 | - text-decoration: underline; | ||
| 1671 | - font-size: 13px; | ||
| 1672 | -} | ||
| 1673 | - | ||
| 1674 | -#schedule-tzrc-modal input[type=checkbox] { | ||
| 1675 | - margin-right: 9px; | ||
| 1676 | -} | ||
| 1677 | - | ||
| 1678 | -#schedule-tzrc-modal span.ct_zt_yzx { | ||
| 1679 | - color: #2196F3; | ||
| 1680 | - font-size: 12px; | ||
| 1681 | -} | ||
| 1682 | - | ||
| 1683 | -#schedule-tzrc-modal span.ct_zt_lb { | ||
| 1684 | - color: red; | ||
| 1685 | - font-size: 12px; | ||
| 1686 | -} | ||
| 1687 | - | ||
| 1688 | -#schedule-tzrc-modal span.ct_zt_zzzx { | ||
| 1689 | - font-size: 12px; | ||
| 1690 | - color: #38ad3c; | ||
| 1691 | -} | ||
| 1692 | - | ||
| 1693 | -#schedule-tzrc-modal .tzrc_form { | ||
| 1694 | - padding: 20px; | ||
| 1695 | - border: 1px solid #f0eded; | ||
| 1696 | - box-shadow: 0px -3px 15px rgba(0, 0, 0, 0.08); | ||
| 1697 | - background: #f9f9f9; | ||
| 1698 | -} | ||
| 1699 | - | ||
| 1700 | -.uk-panel.ct_search_panel { | ||
| 1701 | - padding: 15px; | ||
| 1702 | - border: 1px solid #f0eded; | ||
| 1703 | - box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.08); | ||
| 1704 | - background: #f9f9f9; | ||
| 1705 | -} | ||
| 1706 | - | ||
| 1707 | -.sch-tzrc-table.ct_table dl.active, | ||
| 1708 | -.sch-tzrc-table.ct_table > .ct_table_body dl.active:hover { | ||
| 1709 | - background: #5bd460; | ||
| 1710 | - color: white; | ||
| 1711 | -} | ||
| 1712 | - | ||
| 1713 | -#schedule-tzrc-modal dl.active span.ct_zt_yzx { | ||
| 1714 | - color: #545252; | ||
| 1715 | -} | ||
| 1716 | - | ||
| 1717 | -#schedule-tzrc-modal dl.active span.ct_zt_lb { | ||
| 1718 | - color: #d64949; | ||
| 1719 | -} | ||
| 1720 | - | ||
| 1721 | -#schedule-tzrc-modal dl.active span.ct_zt_zzzx { | ||
| 1722 | - color: white; | ||
| 1723 | -} | ||
| 1724 | - | ||
| 1725 | -#schedule-tzrc-modal dl.active input[type=checkbox] { | ||
| 1726 | - border: 0; | ||
| 1727 | -} | ||
| 1728 | - | ||
| 1729 | -#schedule-tzrc-modal dl.active input[type=checkbox]:before { | ||
| 1730 | - color: #ffffff; | ||
| 1731 | -} | ||
| 1732 | - | ||
| 1733 | -.sch-search-autocom input { | ||
| 1734 | - padding: 0 !important; | ||
| 1735 | - height: 100% !important; | ||
| 1736 | -} | ||
| 1737 | - | ||
| 1738 | -label.blue_checkbox { | ||
| 1739 | - margin-left: 12px; | ||
| 1740 | -} | ||
| 1741 | - | ||
| 1742 | -label.blue_checkbox > input { | ||
| 1743 | - width: 17px !important; | ||
| 1744 | - height: 17px !important; | ||
| 1745 | -} | ||
| 1746 | - | ||
| 1747 | -label.blue_checkbox > input:checked:before, | ||
| 1748 | -label.blue_checkbox > input:indeterminate:before { | ||
| 1749 | - line-height: 15px !important; | ||
| 1750 | -} | ||
| 1751 | - | ||
| 1752 | -dd.disabled { | ||
| 1753 | - color: #b5b3b3; | ||
| 1754 | -} | ||
| 1755 | - | ||
| 1756 | -dl.active > dd.disabled { | ||
| 1757 | - color: #ececec; | ||
| 1758 | -} | ||
| 1759 | - | ||
| 1760 | -#change_user_options-modal .user_info { | ||
| 1761 | - width: 360px; | ||
| 1762 | - margin: auto; | ||
| 1763 | -} | ||
| 1764 | - | ||
| 1765 | -.display_hide { | ||
| 1766 | - display: none; | ||
| 1767 | -} | ||
| 1768 | - | ||
| 1769 | -.ct_eye_icon { | ||
| 1770 | - font-size: 16px; | ||
| 1771 | - cursor: pointer; | ||
| 1772 | -} | ||
| 1773 | - | ||
| 1774 | -.ct_eye_icon.active { | ||
| 1775 | - color: #444; | ||
| 1776 | -} | ||
| 1777 | - | ||
| 1778 | -#tempScheduleContent .forms::-webkit-scrollbar { | ||
| 1779 | - width: 19px; | ||
| 1780 | - height: 16px; | ||
| 1781 | -} | ||
| 1782 | - | ||
| 1783 | -.range_2_normal_tt { | ||
| 1784 | - margin-bottom: 15px; | ||
| 1785 | - border-top: 1px dashed #c7c7c7; | ||
| 1786 | - color: #a6a6a6; | ||
| 1787 | - text-indent: 7px; | ||
| 1788 | - padding-bottom: 5px; | ||
| 1789 | -} | ||
| 1790 | - | ||
| 1791 | -.cancel_link { | ||
| 1792 | - font-size: 12px; | ||
| 1793 | - margin-left: 15px; | ||
| 1794 | - vertical-align: bottom; | ||
| 1795 | - color: #8d8d8d; | ||
| 1796 | - text-decoration: underline; | ||
| 1797 | - position: absolute; | ||
| 1798 | - right: 0; | ||
| 1799 | -} | ||
| 1800 | - | ||
| 1801 | -.edit_link { | ||
| 1802 | - font-size: 12px; | ||
| 1803 | - margin-left: 15px; | ||
| 1804 | - vertical-align: bottom; | ||
| 1805 | - color: #ff2f2f; | ||
| 1806 | - text-decoration: underline; | ||
| 1807 | -} | ||
| 1808 | - | ||
| 1809 | -.c_b_abnorm_notice { | ||
| 1810 | - position: absolute; | ||
| 1811 | - bottom: 0; | ||
| 1812 | - margin: auto; | ||
| 1813 | - width: 351px; | ||
| 1814 | - padding: 7px; | ||
| 1815 | - background: #ffffff; | ||
| 1816 | - box-shadow: 5px 5px 15px rgba(90, 90, 90, 0.48); | ||
| 1817 | - max-height: 125px; | ||
| 1818 | - overflow-y: auto; | ||
| 1819 | - min-height: 40px; | ||
| 1820 | -} | ||
| 1821 | - | ||
| 1822 | -.c_b_abnorm_notice:before { | ||
| 1823 | - content: "-超速报警-"; | ||
| 1824 | - color: #000000; | ||
| 1825 | - font-size: 12px; | ||
| 1826 | - font-family: 微软雅黑; | ||
| 1827 | - position: fixed; | ||
| 1828 | - background: #ffd967; | ||
| 1829 | - margin-top: -10px; | ||
| 1830 | - margin-left: -6px; | ||
| 1831 | - padding: 0 7px; | ||
| 1832 | - box-shadow: 2px 4px 7px rgba(90, 90, 90, 0.25); | ||
| 1833 | -} | ||
| 1834 | - | ||
| 1835 | -.c_b_item { | ||
| 1836 | - margin: 7px 0; | ||
| 1837 | - padding: 7px 12px; | ||
| 1838 | - box-shadow: 0px 0px 10px rgba(90, 90, 90, 0.29); | ||
| 1839 | - color: #FF5722; | ||
| 1840 | - cursor: pointer; | ||
| 1841 | -} | ||
| 1842 | - | ||
| 1843 | -.c_b_abnorm_notice > .c_b_item:first-child { | ||
| 1844 | - margin-top: 20px; | ||
| 1845 | -} | ||
| 1846 | - | ||
| 1847 | -.c_b_item.over { | ||
| 1848 | - color: grey; | ||
| 1849 | -} | ||
| 1850 | - | ||
| 1851 | -.c_b_item > span.c_b_over { | ||
| 1852 | - float: right; | ||
| 1853 | -} | ||
| 1854 | - | ||
| 1855 | -.mileage_elec_panel { | ||
| 1856 | - position: absolute; | ||
| 1857 | - width: 100%; | ||
| 1858 | - /*height: 90px;*/ | ||
| 1859 | - z-index: 1; | ||
| 1860 | - background: white; | ||
| 1861 | - bottom: 0px; | ||
| 1862 | - box-shadow: 1px 0px 15px rgba(90, 90, 90, 0.48); | ||
| 1863 | - padding: 9px 15px; | ||
| 1864 | - border-radius: 0 5px; | ||
| 1865 | - color: #000; | ||
| 1866 | - | ||
| 1867 | - display: none; | ||
| 1868 | -} | ||
| 1869 | - | ||
| 1870 | -.mileage_elec_panel ._title { | ||
| 1871 | - margin: 5px 3px; | ||
| 1872 | - font-size: 15px; | ||
| 1873 | -} | ||
| 1874 | - | ||
| 1875 | -.mileage_elec_panel .LD_item { | ||
| 1876 | - margin: 5px 0; | ||
| 1877 | - font-family: 微软雅黑; | ||
| 1878 | -} | ||
| 1879 | - | ||
| 1880 | -.mileage_elec_panel .LD_item > span { | ||
| 1881 | - padding: 3px; | ||
| 1882 | - display: inline-block; | ||
| 1883 | - width: 85px; | ||
| 1884 | -} | ||
| 1885 | - | ||
| 1886 | -.mileage_elec_panel .lp_name { | ||
| 1887 | - padding: 0 5px; | ||
| 1888 | - background: #f2f2f2; | ||
| 1889 | - border-radius: 15px | ||
| 1890 | -} | ||
| 1891 | - | ||
| 1892 | -.mileage_elec_panel .LD_item > span > a { | ||
| 1893 | - color: #000; | ||
| 1894 | -} | ||
| 1895 | - | ||
| 1896 | -.mileage_elec_panel .LD_item > span:nth-of-type(1) > a { | ||
| 1897 | - color: blue; | ||
| 1898 | -} | ||
| 1899 | - | ||
| 1900 | -/*.mileage_elec_panel .LD_item>span:nth-of-type(2)>a{ | ||
| 1901 | - color: #fa3a2c; | ||
| 1902 | -} | ||
| 1903 | - | ||
| 1904 | -.mileage_elec_panel .LD_item>span:nth-of-type(3)>a{ | ||
| 1905 | - color: #515151; | ||
| 1906 | -}*/ | ||
| 1907 | - | ||
| 1908 | -.mileage_elec_panel hr { | ||
| 1909 | - height: 1px; | ||
| 1910 | - border: none; | ||
| 1911 | - border-top: 1px dashed #b5b5b5; | ||
| 1912 | -} | ||
| 1913 | - | ||
| 1914 | -#edit-sub-task-main-modal .sub_task_form_v2.uk-form-horizontal .uk-form-label { | ||
| 1915 | - width: 70px; | ||
| 1916 | -} | ||
| 1917 | - | ||
| 1918 | -#edit-sub-task-main-modal .sub_task_form_v2.uk-form-horizontal .uk-form-controls { | ||
| 1919 | - margin-left: 75px; | ||
| 1920 | -} | ||
| 1921 | - | ||
| 1922 | -#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid + .uk-grid, | ||
| 1923 | -#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid-margin, | ||
| 1924 | -#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid > * > .uk-panel + .uk-panel { | ||
| 1925 | - margin-top: 22px; | ||
| 1926 | -} | ||
| 1927 | - | ||
| 1928 | -.c_task_mileage_abnormal, | ||
| 1929 | -.c_task_mileage_abnormal .ct_table > .ct_table_head dl, | ||
| 1930 | -.c_task_mileage_abnormal .ct_table dl { | ||
| 1931 | - background: #ffe7e7 !important; | ||
| 1932 | -} | ||
| 1933 | - | ||
| 1934 | -.tip_task_count_dl { | ||
| 1935 | - width: calc(100% + 22px) !important; | ||
| 1936 | - margin-left: -11px !important; | ||
| 1937 | - border-top: 1px solid #e6e6e6 !important; | ||
| 1938 | -} | ||
| 1939 | - | ||
| 1940 | -.tip_task_count_dl > dd:last-child { | ||
| 1941 | - width: calc(100% - 50px) !important; | ||
| 1942 | - border-right: 0 !important; | ||
| 1943 | - height: 35px !important; | ||
| 1944 | - background: #f3f3f3; | ||
| 1945 | - margin-bottom: -3px; | ||
| 1946 | -} | ||
| 1947 | - | ||
| 1948 | -.tip_task_count_dl > dd:nth-of-type(1) { | ||
| 1949 | - text-align: center; | ||
| 1950 | - border-right: 0 !important; | ||
| 1951 | - width: 48px !important; | ||
| 1952 | -} | ||
| 1953 | - | ||
| 1954 | -.tip_task_count_dl > dd:nth-of-type(1) > i { | ||
| 1955 | - padding: 6px; | ||
| 1956 | - cursor: pointer; | ||
| 1957 | -} | ||
| 1958 | - | ||
| 1959 | -.tip_task_count_dl > dd:nth-of-type(1) > i:hover { | ||
| 1960 | - background: #ebebeb; | ||
| 1961 | -} | ||
| 1962 | - | ||
| 1963 | -.tip_task_count_dl.c_task_error > dd:last-child { | ||
| 1964 | - background: #ff8a81; | ||
| 1965 | -} | ||
| 1966 | - | ||
| 1967 | -.tip_task_count_dl > dd > span { | ||
| 1968 | - font-size: 13px; | ||
| 1969 | - color: #000; | ||
| 1970 | - height: 55px; | ||
| 1971 | - display: inline-block; | ||
| 1972 | - padding: 7px 0; | ||
| 1973 | - border-radius: 0; | ||
| 1974 | - text-indent: 12px; | ||
| 1975 | -} | ||
| 1976 | - | ||
| 1977 | -.tip_task_list > dl:nth-last-child(2) { | ||
| 1978 | - border-bottom: 0 !important; | ||
| 1979 | -} | ||
| 1980 | - | ||
| 1981 | -.c_task_mileage_error { | ||
| 1982 | - border: 1px solid rgba(218, 13, 13, 0.2); | ||
| 1983 | - border-bottom-color: rgba(213, 37, 37, 0.3); | ||
| 1984 | - background-image: -webkit-linear-gradient(top, #ff6155, #F44336); | ||
| 1985 | -} | ||
| 1986 | - | ||
| 1987 | -.uk-badge.c_task.c_task_mileage_error:hover:hover { | ||
| 1988 | - background-image: none; | ||
| 1989 | - background: #ff6155; | ||
| 1990 | - border: 1px solid rgba(213, 37, 37, 0.3); | ||
| 1991 | -} | ||
| 1992 | - | ||
| 1993 | -.grey_link { | ||
| 1994 | - color: #adabab; | ||
| 1995 | -} | ||
| 1996 | - | ||
| 1997 | -#sch_car_info_all-modal tr.ct_active { | ||
| 1998 | - -moz-animation: twinkle_bg .9s ease-in-out; | ||
| 1999 | - -webkit-animation: twinkle_bg .9s ease-in-out; | ||
| 2000 | -} | ||
| 2001 | - | ||
| 2002 | -#sch_car_info_all-modal .uk-table-hover tr:hover{ | ||
| 2003 | - background: #dddddd; | ||
| 2004 | -} | ||
| 2005 | - | ||
| 2006 | -@-moz-keyframes twinkle_bg { | ||
| 2007 | - 0% { | ||
| 2008 | - background: rgba(254, 235, 69, 0.38); | ||
| 2009 | - } | ||
| 2010 | - 25% { | ||
| 2011 | - background: rgba(254, 235, 69, 0.7); | ||
| 2012 | - } | ||
| 2013 | - 50% { | ||
| 2014 | - background: rgba(254, 235, 69, 0.3); | ||
| 2015 | - } | ||
| 2016 | - 75% { | ||
| 2017 | - background: rgba(254, 235, 69, 0.7); | ||
| 2018 | - } | ||
| 2019 | - 100% { | ||
| 2020 | - background: rgba(254, 235, 69, 0.38); | ||
| 2021 | - } | ||
| 2022 | -} | ||
| 2023 | - | ||
| 2024 | -@-webkit-keyframes twinkle_bg { | ||
| 2025 | - 0% { | ||
| 2026 | - background: rgba(254, 235, 69, 0.38); | ||
| 2027 | - } | ||
| 2028 | - 25% { | ||
| 2029 | - background: rgba(254, 235, 69, 0.7); | ||
| 2030 | - } | ||
| 2031 | - 50% { | ||
| 2032 | - background: rgba(254, 235, 69, 0.3); | ||
| 2033 | - } | ||
| 2034 | - 75% { | ||
| 2035 | - background: rgba(254, 235, 69, 0.7); | ||
| 2036 | - } | ||
| 2037 | - 100% { | ||
| 2038 | - background: rgba(254, 235, 69, 0.38); | ||
| 2039 | - } | ||
| 2040 | -} | ||
| 2041 | - | ||
| 2042 | -.home_svg_tips>div{ | ||
| 2043 | - overflow: hidden; | ||
| 2044 | - text-overflow: ellipsis; | ||
| 2045 | - white-space: nowrap; | ||
| 2046 | -} | ||
| 2047 | - | ||
| 2048 | -.tab-line.destroy>a{ | ||
| 2049 | - background: #ff5c5c; | ||
| 2050 | - color: #fff !important; | ||
| 2051 | - border-radius: 0; | ||
| 2052 | -} | ||
| 2053 | - | ||
| 2054 | -.tab-line.destroy>a:hover{ | ||
| 2055 | - background: #ff3333 !important; | ||
| 2056 | - border-color: #ff3333 !important; | ||
| 2057 | -} | ||
| 2058 | - | ||
| 2059 | -.uk-tab>li.uk-active.destroy>a{ | ||
| 2060 | - color: red !important; | ||
| 2061 | -} | ||
| 2062 | - | ||
| 2063 | -.uk-tab>li.uk-active.destroy>a:hover{ | ||
| 2064 | - background: #fff !important; | ||
| 2065 | -} | ||
| 2066 | - | ||
| 2067 | -.warn_multi_station{ | ||
| 2068 | - font-size: 12px; | ||
| 2069 | - margin-left: 40px; | ||
| 2070 | - background: yellow; | ||
| 2071 | - color: #1c1c1c; | ||
| 2072 | - padding: 4px 10px; | ||
| 2073 | - cursor: pointer; | ||
| 2074 | - display: none; | ||
| 2075 | -} | ||
| 2076 | - | ||
| 2077 | -.warn_multi_station:hover{ | ||
| 2078 | - background: #f8f81e; | ||
| 2079 | -} | ||
| 2080 | - | ||
| 2081 | -.tp_info_icon{ | ||
| 2082 | - font-size: 14px; | ||
| 2083 | - cursor: pointer; | ||
| 2084 | -} | ||
| 2085 | - | ||
| 2086 | -g.gps-wrap rect.twinkle[updown="0"] { | ||
| 2087 | - animation: anim_bg_twinkle_up 1.4s; | ||
| 2088 | -} | ||
| 2089 | - | ||
| 2090 | -@keyframes anim_bg_twinkle_up { | ||
| 2091 | - 0% { | ||
| 2092 | - fill: yellow; | ||
| 2093 | - stroke: yellow; | ||
| 2094 | - } | ||
| 2095 | - 25% { | ||
| 2096 | - stroke: rgb(62, 80, 179); | ||
| 2097 | - fill: rgb(62, 80, 179); | ||
| 2098 | - } | ||
| 2099 | - 50% { | ||
| 2100 | - fill: yellow; | ||
| 2101 | - stroke: yellow; | ||
| 2102 | - } | ||
| 2103 | - 100% { | ||
| 2104 | - stroke: rgb(62, 80, 179); | ||
| 2105 | - fill: rgb(62, 80, 179); | ||
| 2106 | - } | ||
| 2107 | -} | ||
| 2108 | - | ||
| 2109 | -g.gps-wrap rect.twinkle[updown="1"] { | ||
| 2110 | - animation: anim_bg_twinkle_down 1.4s; | ||
| 2111 | -} | ||
| 2112 | - | ||
| 2113 | -@keyframes anim_bg_twinkle_down { | ||
| 2114 | - 0% { | ||
| 2115 | - fill: yellow; | ||
| 2116 | - stroke: yellow; | ||
| 2117 | - } | ||
| 2118 | - 25% { | ||
| 2119 | - stroke: #c94f21; | ||
| 2120 | - fill: #c94f21; | ||
| 2121 | - } | ||
| 2122 | - 50% { | ||
| 2123 | - fill: yellow; | ||
| 2124 | - stroke: yellow; | ||
| 2125 | - } | ||
| 2126 | - 100% { | ||
| 2127 | - stroke: #c94f21; | ||
| 2128 | - fill: #c94f21; | ||
| 2129 | - } | 1 | +input::-webkit-outer-spin-button, |
| 2 | +input::-webkit-inner-spin-button { | ||
| 3 | + display: none; | ||
| 4 | +} | ||
| 5 | + | ||
| 6 | +input::-webkit-calendar-picker-indicator { | ||
| 7 | + display: none; | ||
| 8 | +} | ||
| 9 | + | ||
| 10 | +input::-webkit-datetime-edit { | ||
| 11 | + padding: 1px; | ||
| 12 | +} | ||
| 13 | + | ||
| 14 | +.ps-container > .ps-scrollbar-y-rail { | ||
| 15 | + z-index: 1 !important; | ||
| 16 | +} | ||
| 17 | + | ||
| 18 | +.ps-container > .ps-scrollbar-x-rail, | ||
| 19 | +.ps-container > .ps-scrollbar-y-rail { | ||
| 20 | + opacity: 0.6 !important; | ||
| 21 | + padding: 0 !important; | ||
| 22 | +} | ||
| 23 | + | ||
| 24 | +/* ^_^ baidu map hide logo */ | ||
| 25 | +.anchorBL, .anchorBL, .amap-logo, .amap-copyright { | ||
| 26 | + display: none; | ||
| 27 | +} | ||
| 28 | + | ||
| 29 | +audio, canvas, img, svg, video { | ||
| 30 | + max-width: none; | ||
| 31 | +} | ||
| 32 | + | ||
| 33 | +html, body { | ||
| 34 | + width: 100%; | ||
| 35 | + height: 100%; | ||
| 36 | + overflow: hidden; | ||
| 37 | + margin-left: 0 !important; | ||
| 38 | +} | ||
| 39 | + | ||
| 40 | +.main-container { | ||
| 41 | + height: calc(100% - 120px); | ||
| 42 | +} | ||
| 43 | + | ||
| 44 | +#main-tab-content { | ||
| 45 | + height: 100%; | ||
| 46 | + margin-bottom: 0; | ||
| 47 | +} | ||
| 48 | + | ||
| 49 | +::-webkit-scrollbar { | ||
| 50 | + width: 15px; | ||
| 51 | + height: 16px; | ||
| 52 | +} | ||
| 53 | + | ||
| 54 | +::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb { | ||
| 55 | + border-radius: 999px; | ||
| 56 | + border: 5px solid transparent; | ||
| 57 | +} | ||
| 58 | + | ||
| 59 | +::-webkit-scrollbar-track { | ||
| 60 | + box-shadow: 1px 1px 5px rgba(0, 0, 0, .2) inset; | ||
| 61 | +} | ||
| 62 | + | ||
| 63 | +::-webkit-scrollbar-thumb { | ||
| 64 | + min-height: 20px; | ||
| 65 | + background-clip: content-box; | ||
| 66 | + box-shadow: 0 0 0 5px rgba(0, 0, 0, .2) inset; | ||
| 67 | +} | ||
| 68 | + | ||
| 69 | +::-webkit-scrollbar-corner { | ||
| 70 | + background: transparent; | ||
| 71 | +} | ||
| 72 | + | ||
| 73 | +.uk-modal .uk-form.fv-form, .uk-modal .ct-modal-body { | ||
| 74 | + margin-bottom: -20px !important; | ||
| 75 | +} | ||
| 76 | + | ||
| 77 | +.uk-modal .uk-form.fv-form.fixed-tool { | ||
| 78 | + width: 100%; | ||
| 79 | + position: relative; | ||
| 80 | + height: 100%; | ||
| 81 | +} | ||
| 82 | + | ||
| 83 | +.uk-modal .ct-modal-body .uk-modal-footer { | ||
| 84 | + margin-left: 0; | ||
| 85 | +} | ||
| 86 | + | ||
| 87 | +.uk-modal .uk-form.fv-form.fixed-tool .uk-modal-footer { | ||
| 88 | + position: absolute; | ||
| 89 | + bottom: 0; | ||
| 90 | + width: calc(100% - 20px); | ||
| 91 | +} | ||
| 92 | + | ||
| 93 | +table.ct-fixed-table { | ||
| 94 | + table-layout: fixed; | ||
| 95 | +} | ||
| 96 | + | ||
| 97 | +table.ct-fixed-table tr.context-menu-active { | ||
| 98 | + background: #f0f0f0; | ||
| 99 | +} | ||
| 100 | + | ||
| 101 | +table.ct-fixed-table.uk-table tr td { | ||
| 102 | + white-space: nowrap; | ||
| 103 | + overflow: hidden; | ||
| 104 | + text-overflow: ellipsis; | ||
| 105 | +} | ||
| 106 | + | ||
| 107 | +table.ct-fixed-table.uk-table .uk-badge { | ||
| 108 | + padding: 2px 5px; | ||
| 109 | +} | ||
| 110 | + | ||
| 111 | +.horizontal-field { | ||
| 112 | + vertical-align: middle; | ||
| 113 | + margin: 0 5px; | ||
| 114 | +} | ||
| 115 | + | ||
| 116 | +.legend-tools { | ||
| 117 | + float: right; | ||
| 118 | + font-size: 11px; | ||
| 119 | +} | ||
| 120 | + | ||
| 121 | +.legend-tools a.uk-icon-small { | ||
| 122 | + margin: 0 5px; | ||
| 123 | + cursor: pointer; | ||
| 124 | +} | ||
| 125 | + | ||
| 126 | +.text-succ { | ||
| 127 | + color: #659f13; | ||
| 128 | +} | ||
| 129 | + | ||
| 130 | +.text-err { | ||
| 131 | + color: red; | ||
| 132 | +} | ||
| 133 | + | ||
| 134 | +.text-grey { | ||
| 135 | + color: grey; | ||
| 136 | +} | ||
| 137 | + | ||
| 138 | +svg.line-chart { | ||
| 139 | + width: 100%; | ||
| 140 | + height: 100%; | ||
| 141 | + position: absolute; | ||
| 142 | + left: 0; | ||
| 143 | +} | ||
| 144 | + | ||
| 145 | +svg.line-chart circle.station_circle { | ||
| 146 | + fill: #5e96d2; | ||
| 147 | + r: 5.5; | ||
| 148 | + stroke: rgb(253, 253, 253); | ||
| 149 | + stroke-width: 3; | ||
| 150 | + Pointer-events: none; | ||
| 151 | +} | ||
| 152 | + | ||
| 153 | +svg.line-chart circle.station_circle.down { | ||
| 154 | + fill: #c92121; | ||
| 155 | +} | ||
| 156 | + | ||
| 157 | +svg.line-chart path.station_link { | ||
| 158 | + stroke-width: 3.5px; | ||
| 159 | + stroke: #5E96D2; | ||
| 160 | + Pointer-events: none; | ||
| 161 | +} | ||
| 162 | + | ||
| 163 | +svg.line-chart path.station_link.down { | ||
| 164 | + stroke: #c92121; | ||
| 165 | +} | ||
| 166 | + | ||
| 167 | +svg.line-chart path.station_link.down.loop_line { | ||
| 168 | + stroke-dasharray: 4, 3; | ||
| 169 | + stroke-width: 1px; | ||
| 170 | +} | ||
| 171 | + | ||
| 172 | +svg.line-chart text.station_text { | ||
| 173 | + writing-mode: tb; | ||
| 174 | + fill: #3e3e3e; | ||
| 175 | + letter-spacing: -.2px; | ||
| 176 | + text-shadow: 0 0 2px #dadada; | ||
| 177 | + Pointer-events: none; | ||
| 178 | +} | ||
| 179 | + | ||
| 180 | +svg.line-chart text.station_text.up { | ||
| 181 | + fill: #4556b6; | ||
| 182 | +} | ||
| 183 | + | ||
| 184 | +svg.line-chart text.station_text.down { | ||
| 185 | + fill: #c94f21; | ||
| 186 | +} | ||
| 187 | + | ||
| 188 | +svg.line-chart g.item:first-child > text { | ||
| 189 | + stroke: #6f6e6e; | ||
| 190 | + fill: none; | ||
| 191 | +} | ||
| 192 | + | ||
| 193 | +svg.line-chart g.item:nth-last-child(3) > text { | ||
| 194 | + stroke: #6f6e6e; | ||
| 195 | + fill: none; | ||
| 196 | +} | ||
| 197 | + | ||
| 198 | +svg.line-chart g.item:first-child > text.up, | ||
| 199 | +svg.line-chart g.item:nth-last-child(3) > text.up { | ||
| 200 | + stroke: #4556b6; | ||
| 201 | +} | ||
| 202 | + | ||
| 203 | +svg.line-chart g.item:first-child > text.down, | ||
| 204 | +svg.line-chart g.item:nth-last-child(3) > text.down { | ||
| 205 | + stroke: #c94f21; | ||
| 206 | +} | ||
| 207 | + | ||
| 208 | +svg.line-chart g.gps-wrap > rect { | ||
| 209 | + width: 30px; | ||
| 210 | + height: 15px; | ||
| 211 | + /* fill: #fff; */ | ||
| 212 | + rx: 2px; | ||
| 213 | + cursor: pointer; | ||
| 214 | +} | ||
| 215 | + | ||
| 216 | +svg.line-chart g.gps-wrap > rect[updown="0"] { | ||
| 217 | + stroke: rgb(62, 80, 179); | ||
| 218 | + fill: rgb(62, 80, 179); | ||
| 219 | +} | ||
| 220 | + | ||
| 221 | +svg.line-chart g.gps-wrap > rect[updown="1"] { | ||
| 222 | + stroke: #c94f21; | ||
| 223 | + fill: #c94f21; | ||
| 224 | +} | ||
| 225 | + | ||
| 226 | +svg.line-chart g.gps-wrap > rect.hover { | ||
| 227 | + stroke-width: 2; | ||
| 228 | +} | ||
| 229 | + | ||
| 230 | +svg.line-chart g.gps-wrap > text { | ||
| 231 | + font-size: 12px; | ||
| 232 | + transform: translate(0, 12px); | ||
| 233 | + pointer-events: none; | ||
| 234 | +} | ||
| 235 | + | ||
| 236 | +svg.line-chart g.gps-wrap > text[updown="0"] { | ||
| 237 | + fill: #fff; | ||
| 238 | +} | ||
| 239 | + | ||
| 240 | +svg.line-chart g.gps-wrap > text[updown="1"] { | ||
| 241 | + fill: #fff; | ||
| 242 | +} | ||
| 243 | + | ||
| 244 | +svg.line-chart g.gps-wrap > rect.abnormal[updown="0"], | ||
| 245 | +svg.line-chart g.gps-wrap > rect.abnormal[updown="1"] { | ||
| 246 | + width: 40px; | ||
| 247 | + fill: yellow; | ||
| 248 | + stroke: yellow; | ||
| 249 | +} | ||
| 250 | + | ||
| 251 | +svg.line-chart g.gps-wrap > text.abnormal[updown="0"], | ||
| 252 | +svg.line-chart g.gps-wrap > text.abnormal[updown="1"] { | ||
| 253 | + fill: black; | ||
| 254 | +} | ||
| 255 | + | ||
| 256 | +svg.line-chart .merge_hide { | ||
| 257 | + display: none !important; | ||
| 258 | +} | ||
| 259 | + | ||
| 260 | +svg.line-chart g.merge-item rect { | ||
| 261 | + width: 22px; | ||
| 262 | + height: 22px; | ||
| 263 | + rx: 15px; | ||
| 264 | + fill: #19a53a; | ||
| 265 | + cursor: pointer; | ||
| 266 | + stroke: #19a53a; | ||
| 267 | + stroke-dasharray: 1, 2; | ||
| 268 | + stroke-width: 3px; | ||
| 269 | +} | ||
| 270 | + | ||
| 271 | +svg.line-chart g.merge-item text { | ||
| 272 | + fill: #fff; | ||
| 273 | + pointer-events: none; | ||
| 274 | +} | ||
| 275 | + | ||
| 276 | +.qtip-multi-gps { | ||
| 277 | + max-width: 720px !important; | ||
| 278 | +} | ||
| 279 | + | ||
| 280 | +.qtip-bootstrap.qtip-multi-gps .qtip-content { | ||
| 281 | + padding: 0; | ||
| 282 | +} | ||
| 283 | + | ||
| 284 | +.tooltip { | ||
| 285 | + position: relative; | ||
| 286 | + padding-bottom: 160px; | ||
| 287 | + width: 220px; | ||
| 288 | +} | ||
| 289 | + | ||
| 290 | +.multi-tooltip-wrap { | ||
| 291 | + width: 100%; | ||
| 292 | + max-height: 350px; | ||
| 293 | + overflow: auto; | ||
| 294 | +} | ||
| 295 | + | ||
| 296 | +.tip_map_wrap.multi { | ||
| 297 | + width: 100%; | ||
| 298 | + height: 130px; | ||
| 299 | +} | ||
| 300 | + | ||
| 301 | +.tooltip.multi-tooltip { | ||
| 302 | + width: 160px; | ||
| 303 | + display: inline-block; | ||
| 304 | + padding: 10px 0 10px 12px; | ||
| 305 | + border-right: 1px solid #eeeeee; | ||
| 306 | + border-bottom: 1px solid #eeeeee; | ||
| 307 | +} | ||
| 308 | + | ||
| 309 | +.tooltip hr { | ||
| 310 | + border-top: 1px solid #eeeeee; | ||
| 311 | + width: calc(100% + 30px); | ||
| 312 | + margin: 7px 0 11px -15px; | ||
| 313 | +} | ||
| 314 | + | ||
| 315 | +.tooltip.multi-tooltip hr { | ||
| 316 | + width: calc(100% + 16px); | ||
| 317 | +} | ||
| 318 | + | ||
| 319 | +.tooltip .tooltip-container { | ||
| 320 | + padding: 1px; | ||
| 321 | +} | ||
| 322 | + | ||
| 323 | +.tooltip .tooltip-container div, .tooltip .tooltip-container div a { | ||
| 324 | + margin: 7px 1px; | ||
| 325 | + font-size: 13px; | ||
| 326 | + color: rgb(76, 76, 76); | ||
| 327 | +} | ||
| 328 | + | ||
| 329 | +.tooltip .tooltip-container div.title { | ||
| 330 | + margin: 8px 1px 12px; | ||
| 331 | +} | ||
| 332 | + | ||
| 333 | +.tooltip .tooltip-container .title a { | ||
| 334 | + font-size: 18px; | ||
| 335 | + font-family: 微软雅黑; | ||
| 336 | +} | ||
| 337 | + | ||
| 338 | +.tooltip span.field { | ||
| 339 | + color: #7d7d7b; | ||
| 340 | + margin-right: 5px; | ||
| 341 | + width: 52px; | ||
| 342 | + display: inline-block; | ||
| 343 | + text-align: right; | ||
| 344 | +} | ||
| 345 | + | ||
| 346 | +.tooltip .tip_map_wrap { | ||
| 347 | + position: absolute; | ||
| 348 | + bottom: -16px; | ||
| 349 | + left: -15px; | ||
| 350 | + width: calc(100% + 28px); | ||
| 351 | + background: #fff; | ||
| 352 | + height: 165px; | ||
| 353 | + border-radius: 0 0 5px 5px; | ||
| 354 | + border-top: 1px solid #e6e4e4; | ||
| 355 | +} | ||
| 356 | + | ||
| 357 | +canvas.crosshair-layer { | ||
| 358 | + position: absolute; | ||
| 359 | + width: 100%; | ||
| 360 | + height: 100%; | ||
| 361 | + background: rgba(255, 255, 255, 0.33); | ||
| 362 | + left: 0; | ||
| 363 | +} | ||
| 364 | + | ||
| 365 | +li.map-panel { | ||
| 366 | + height: 100%; | ||
| 367 | + position: relative; | ||
| 368 | +} | ||
| 369 | + | ||
| 370 | +.main-container .load-panel { | ||
| 371 | + display: block; | ||
| 372 | + color: #999797; | ||
| 373 | +} | ||
| 374 | + | ||
| 375 | +.uk-panel-box-danger { | ||
| 376 | + background-color: #fff1f0; | ||
| 377 | + /*color: #d85030;*/ | ||
| 378 | + border-color: rgba(216, 80, 48, .3); | ||
| 379 | +} | ||
| 380 | + | ||
| 381 | +/*.uk-panel-box-danger .uk-panel-title { | ||
| 382 | + color: #d85030; | ||
| 383 | +}*/ | ||
| 384 | + | ||
| 385 | +.uk-badge-default { | ||
| 386 | + background-color: #a09b9c; | ||
| 387 | + background-image: -webkit-linear-gradient(top, #9a9898, #8c8687); | ||
| 388 | + background-image: linear-gradient(to bottom, #9a9898, #8c8687); | ||
| 389 | +} | ||
| 390 | + | ||
| 391 | +.ct-bottom-drawer { | ||
| 392 | + width: 100%; | ||
| 393 | + background: rgb(255, 255, 255); | ||
| 394 | + position: fixed; | ||
| 395 | + bottom: 0; | ||
| 396 | + box-shadow: 0 0 10px rgba(0, 0, 0, .3); | ||
| 397 | + transition: all .3s ease; | ||
| 398 | + height: 0; | ||
| 399 | +} | ||
| 400 | + | ||
| 401 | +.ct-bottom-drawer.open { | ||
| 402 | + height: 320px; | ||
| 403 | +} | ||
| 404 | + | ||
| 405 | +.ct-bottom-drawer a.ct-bottom-drawer-close { | ||
| 406 | + position: absolute; | ||
| 407 | + right: 10px; | ||
| 408 | + top: 10px; | ||
| 409 | + color: #c3c3c3; | ||
| 410 | + width: 20px; | ||
| 411 | + line-height: 20px; | ||
| 412 | + background: #fff; | ||
| 413 | + text-align: center; | ||
| 414 | + z-index: 99; | ||
| 415 | +} | ||
| 416 | + | ||
| 417 | +.ct-bottom-drawer a.ct-bottom-drawer-close:hover { | ||
| 418 | + text-decoration: none; | ||
| 419 | + color: grey; | ||
| 420 | +} | ||
| 421 | + | ||
| 422 | +.ct-bottom-drawer a.ct-bottom-drawer-close:after { | ||
| 423 | + display: block; | ||
| 424 | + content: "\f00d"; | ||
| 425 | + font-family: FontAwesome; | ||
| 426 | +} | ||
| 427 | + | ||
| 428 | +.ct-bottom-drawer-body { | ||
| 429 | + width: 100%; | ||
| 430 | + height: 100%; | ||
| 431 | +} | ||
| 432 | + | ||
| 433 | +#station_route_spacing_chart_drawer .svg_wrap { | ||
| 434 | + width: 80%; | ||
| 435 | + height: 100%; | ||
| 436 | + display: inline-block; | ||
| 437 | + font-size: 14px; | ||
| 438 | + overflow: hidden; | ||
| 439 | + position: relative; | ||
| 440 | +} | ||
| 441 | + | ||
| 442 | +#station_route_spacing_chart_drawer .drawer_right_map { | ||
| 443 | + width: 20%; | ||
| 444 | + height: 100%; | ||
| 445 | + display: inline-block; | ||
| 446 | +} | ||
| 447 | + | ||
| 448 | +#station_route_spacing_chart_drawer .svg_cont_body { | ||
| 449 | + height: 100%; | ||
| 450 | + position: absolute; | ||
| 451 | + top: 0; | ||
| 452 | + left: 0; | ||
| 453 | +} | ||
| 454 | + | ||
| 455 | +#station_route_spacing_chart_drawer svg { | ||
| 456 | + width: 100%; | ||
| 457 | + height: 100%; | ||
| 458 | +} | ||
| 459 | + | ||
| 460 | +#station_route_spacing_chart_drawer svg g._item rect { | ||
| 461 | + stroke: rgb(62, 80, 179); | ||
| 462 | + fill: rgb(62, 80, 179); | ||
| 463 | + width: 30px; | ||
| 464 | + height: 124px; | ||
| 465 | + rx: 5; | ||
| 466 | + transform: translate(-15px); | ||
| 467 | +} | ||
| 468 | + | ||
| 469 | +#station_route_spacing_chart_drawer svg g._item text { | ||
| 470 | + writing-mode: tb; | ||
| 471 | + transform: translate(0, 9px); | ||
| 472 | + fill: #fff; | ||
| 473 | +} | ||
| 474 | + | ||
| 475 | +#station_route_spacing_chart_drawer svg g._item path { | ||
| 476 | + stroke-width: 5.4px; | ||
| 477 | + stroke: #3e50b3; | ||
| 478 | +} | ||
| 479 | + | ||
| 480 | +#station_route_spacing_chart_drawer svg g._item circle { | ||
| 481 | + r: 3px; | ||
| 482 | + fill: #ffffff; | ||
| 483 | +} | ||
| 484 | + | ||
| 485 | +#station_route_spacing_chart_drawer svg g._item path.arc_path { | ||
| 486 | + stroke-width: 1.3px; | ||
| 487 | + stroke: #3e50b3; | ||
| 488 | + stroke-dasharray: 1000; | ||
| 489 | + stroke-dashoffset: 1000; | ||
| 490 | + fill: none; | ||
| 491 | + | ||
| 492 | + animation: dash .9s; | ||
| 493 | + webkit-amimation: dash .9s; | ||
| 494 | + animation-fill-mode: forwards; | ||
| 495 | + -webkit-animation-fill-mode: forwards; | ||
| 496 | +} | ||
| 497 | + | ||
| 498 | +@keyframes dash { | ||
| 499 | + to { | ||
| 500 | + stroke-dashoffset: 0; | ||
| 501 | + stroke-dasharray: 4, 4; | ||
| 502 | + } | ||
| 503 | +} | ||
| 504 | + | ||
| 505 | +@-webkit-keyframes dash { | ||
| 506 | + to { | ||
| 507 | + stroke-dashoffset: 0; | ||
| 508 | + stroke-dasharray: 4, 4; | ||
| 509 | + } | ||
| 510 | +} | ||
| 511 | + | ||
| 512 | +#station_route_spacing_chart_drawer svg g._item text.distance_text { | ||
| 513 | + writing-mode: horizontal-tb; | ||
| 514 | + fill: #3e50b3; | ||
| 515 | +} | ||
| 516 | + | ||
| 517 | +#station_route_spacing_chart_drawer svg g._item rect.distance_rect { | ||
| 518 | + height: 20px; | ||
| 519 | + width: 40px; | ||
| 520 | + fill: #fff !important; | ||
| 521 | + stroke-width: 0; | ||
| 522 | +} | ||
| 523 | + | ||
| 524 | +#station_route_spacing_chart_drawer .tl_desc_text { | ||
| 525 | + position: absolute; | ||
| 526 | + top: 5px; | ||
| 527 | + left: 5px; | ||
| 528 | + font-size: 12px; | ||
| 529 | + color: #525050; | ||
| 530 | + font-family: 微软雅黑; | ||
| 531 | +} | ||
| 532 | + | ||
| 533 | +#station_route_spacing_chart_drawer svg g._item:first-child circle { | ||
| 534 | + fill: #3e50b3; | ||
| 535 | + r: 6px; | ||
| 536 | +} | ||
| 537 | + | ||
| 538 | +#station_route_spacing_chart_drawer svg g._item:last-child circle { | ||
| 539 | + fill: #3e50b3; | ||
| 540 | + r: 6px; | ||
| 541 | +} | ||
| 542 | + | ||
| 543 | +/* 下行 */ | ||
| 544 | +#station_route_spacing_chart_drawer svg.down g._item rect { | ||
| 545 | + stroke: #dd3829; | ||
| 546 | + fill: #dd3829; | ||
| 547 | +} | ||
| 548 | + | ||
| 549 | +#station_route_spacing_chart_drawer svg.down g._item path { | ||
| 550 | + stroke: #dd3829; | ||
| 551 | +} | ||
| 552 | + | ||
| 553 | +#station_route_spacing_chart_drawer svg.down g._item:first-child circle { | ||
| 554 | + fill: #dd3829; | ||
| 555 | +} | ||
| 556 | + | ||
| 557 | +#station_route_spacing_chart_drawer svg.down g._item text.distance_text { | ||
| 558 | + fill: #dd3829; | ||
| 559 | +} | ||
| 560 | + | ||
| 561 | +#station_route_spacing_chart_drawer svg.down g._item path.arc_path { | ||
| 562 | + stroke: #dd3829; | ||
| 563 | +} | ||
| 564 | + | ||
| 565 | +#station_route_spacing_chart_drawer svg.down g._item:last-child circle { | ||
| 566 | + fill: #dd3829; | ||
| 567 | +} | ||
| 568 | + | ||
| 569 | +.svg-edit-panel-wrap { | ||
| 570 | + width: 48%; | ||
| 571 | + border: 1px solid #e1d3d3; | ||
| 572 | + padding: 12px 0 0 0; | ||
| 573 | + border-radius: 4px; | ||
| 574 | + position: relative; | ||
| 575 | + display: inline-block; | ||
| 576 | + vertical-align: top; | ||
| 577 | + height: 440px; | ||
| 578 | +} | ||
| 579 | + | ||
| 580 | +.svg-edit-panel-wrap .title-badge { | ||
| 581 | + position: absolute; | ||
| 582 | + top: -10px; | ||
| 583 | + left: 7px; | ||
| 584 | + font-size: 13px; | ||
| 585 | + background: #fff; | ||
| 586 | + padding: 0 3px; | ||
| 587 | + color: #888888; | ||
| 588 | +} | ||
| 589 | + | ||
| 590 | +.svg-edit-panel-wrap .rename-tools { | ||
| 591 | + height: 21px; | ||
| 592 | + padding: 0 0 0 9px; | ||
| 593 | +} | ||
| 594 | + | ||
| 595 | +.svg-edit-panel-wrap .rename-item-panel { | ||
| 596 | + border-bottom: 1px solid #ede5e5; | ||
| 597 | + padding: 4px; | ||
| 598 | +} | ||
| 599 | + | ||
| 600 | +.svg-edit-panel-wrap .rename-item-panel select { | ||
| 601 | + width: 150px; | ||
| 602 | +} | ||
| 603 | + | ||
| 604 | +.svg-edit-panel-wrap .rename-item-panel input { | ||
| 605 | + margin-left: 7px; | ||
| 606 | +} | ||
| 607 | + | ||
| 608 | +.svg-edit-panel-wrap .rename-item-panel input[type=checkbox] { | ||
| 609 | + margin-top: 2px; | ||
| 610 | + margin-right: 4px; | ||
| 611 | +} | ||
| 612 | + | ||
| 613 | +.svg-edit-panel-wrap .rename-item-panel.active { | ||
| 614 | + background: #65c9f8; | ||
| 615 | + box-shadow: 0px 3px 7px 0 rgba(101, 201, 248, 0.48), 0px 1px 4px 0 rgba(101, 201, 248, 0.32); | ||
| 616 | +} | ||
| 617 | + | ||
| 618 | +.svg-edit-panel-wrap .rename-item-panel.active select, | ||
| 619 | +.svg-edit-panel-wrap .rename-item-panel.active input { | ||
| 620 | + background: #65c9f8; | ||
| 621 | + color: #fff; | ||
| 622 | +} | ||
| 623 | + | ||
| 624 | +.svg-edit-panel-wrap .rename-item-panel.active i { | ||
| 625 | + color: #e4f6ff; | ||
| 626 | +} | ||
| 627 | + | ||
| 628 | +.svg-edit-panel-wrap .rename-item-panel.active input[type=checkbox] { | ||
| 629 | + border: none; | ||
| 630 | +} | ||
| 631 | + | ||
| 632 | +.svg-edit-panel-wrap .rename-item-panel.active input[type=checkbox]:before { | ||
| 633 | + color: #fff; | ||
| 634 | +} | ||
| 635 | + | ||
| 636 | +.svg-edit-panel-wrap .rename-tools a { | ||
| 637 | + font-size: 14px; | ||
| 638 | + padding: 5px; | ||
| 639 | +} | ||
| 640 | + | ||
| 641 | +.svg-edit-panel-wrap .rename-tools a:hover { | ||
| 642 | + background: #e8edef; | ||
| 643 | + border-radius: 5px; | ||
| 644 | +} | ||
| 645 | + | ||
| 646 | +.station-list { | ||
| 647 | + width: 190px; | ||
| 648 | + padding: 2px 7px; | ||
| 649 | + height: 100%; | ||
| 650 | + overflow: auto; | ||
| 651 | + display: inline-block; | ||
| 652 | +} | ||
| 653 | + | ||
| 654 | +.station-list .station-item { | ||
| 655 | + padding: 3px 0; | ||
| 656 | + margin: 5px 0; | ||
| 657 | + border-radius: 3px; | ||
| 658 | + font-size: 13px; | ||
| 659 | + text-indent: 7px; | ||
| 660 | + cursor: pointer; | ||
| 661 | + white-space: nowrap; | ||
| 662 | + overflow: hidden; | ||
| 663 | + text-overflow: ellipsis; | ||
| 664 | +} | ||
| 665 | + | ||
| 666 | +.station-list .station-item.disable, | ||
| 667 | +.station-list .station-item.disable:hover { | ||
| 668 | + background: #d5c9c9 !important; | ||
| 669 | + color: #686565 !important; | ||
| 670 | +} | ||
| 671 | + | ||
| 672 | +.station-list.up .station-item { | ||
| 673 | + background: #5364c3; | ||
| 674 | + color: white; | ||
| 675 | +} | ||
| 676 | + | ||
| 677 | +.station-list.up .station-item:hover { | ||
| 678 | + box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.2), 0px 1px 4px 0 rgba(0, 0, 0, 0.19); | ||
| 679 | + background: #4556b6; | ||
| 680 | +} | ||
| 681 | + | ||
| 682 | +.station-list.down .station-item { | ||
| 683 | + background: #f95858; | ||
| 684 | + color: white; | ||
| 685 | +} | ||
| 686 | + | ||
| 687 | +.station-list.down .station-item:hover { | ||
| 688 | + box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.2), 0px 1px 4px 0 rgba(0, 0, 0, 0.19); | ||
| 689 | + background: #e95151; | ||
| 690 | +} | ||
| 691 | + | ||
| 692 | +.modal-dotted-hr { | ||
| 693 | + height: 1px; | ||
| 694 | + border: none; | ||
| 695 | + border-top: 1px dashed #d1d1d1; | ||
| 696 | + width: calc(100% + 40px); | ||
| 697 | + margin-left: -20px; | ||
| 698 | +} | ||
| 699 | + | ||
| 700 | +#add-sub-task-range_turn-modal .main-sch-panel { | ||
| 701 | + height: 60px; | ||
| 702 | + border: 1px solid #dddddd; | ||
| 703 | + border-radius: 5px; | ||
| 704 | + position: relative; | ||
| 705 | + padding: 20px 0 0 8px; | ||
| 706 | +} | ||
| 707 | + | ||
| 708 | +#add-sub-task-range_turn-modal .main-sch-panel:before { | ||
| 709 | + content: '主任务'; | ||
| 710 | + position: absolute; | ||
| 711 | + top: -10px; | ||
| 712 | + left: 10px; | ||
| 713 | + background: #fff; | ||
| 714 | + padding: 0 4px; | ||
| 715 | + font-size: 12px; | ||
| 716 | + color: #adadad; | ||
| 717 | +} | ||
| 718 | + | ||
| 719 | +.ct_row { | ||
| 720 | + font-size: 0; | ||
| 721 | +} | ||
| 722 | + | ||
| 723 | +.ct_row .ct_cell { | ||
| 724 | + display: inline-block; | ||
| 725 | + font-size: 13px; | ||
| 726 | + white-space: nowrap; | ||
| 727 | + overflow: hidden; | ||
| 728 | + text-overflow: ellipsis; | ||
| 729 | +} | ||
| 730 | + | ||
| 731 | +.ct_row .ct_cell label { | ||
| 732 | + color: #979393; | ||
| 733 | + margin-right: 3px; | ||
| 734 | +} | ||
| 735 | + | ||
| 736 | +.ct_row .ct_cell.c_1_3 { | ||
| 737 | + width: 33%; | ||
| 738 | +} | ||
| 739 | + | ||
| 740 | +#schedule-lp_change-modal .sch-list dl dd { | ||
| 741 | + font-size: 14px; | ||
| 742 | +} | ||
| 743 | + | ||
| 744 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(1) { | ||
| 745 | + width: 5%; | ||
| 746 | + border-left: 1px solid #dedede; | ||
| 747 | +} | ||
| 748 | + | ||
| 749 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(2) { | ||
| 750 | + width: 22%; | ||
| 751 | +} | ||
| 752 | + | ||
| 753 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(3) { | ||
| 754 | + width: 17%; | ||
| 755 | +} | ||
| 756 | + | ||
| 757 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(4) { | ||
| 758 | + width: 10%; | ||
| 759 | +} | ||
| 760 | + | ||
| 761 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(5) { | ||
| 762 | + width: 21%; | ||
| 763 | +} | ||
| 764 | + | ||
| 765 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(6) { | ||
| 766 | + width: 10%; | ||
| 767 | +} | ||
| 768 | + | ||
| 769 | +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(7) { | ||
| 770 | + width: 14%; | ||
| 771 | +} | ||
| 772 | + | ||
| 773 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(1) { | ||
| 774 | + width: 5%; | ||
| 775 | + border-left: 1px solid #dedede; | ||
| 776 | +} | ||
| 777 | + | ||
| 778 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(2) { | ||
| 779 | + width: 14%; | ||
| 780 | +} | ||
| 781 | + | ||
| 782 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(3) { | ||
| 783 | + width: 10%; | ||
| 784 | +} | ||
| 785 | + | ||
| 786 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(4) { | ||
| 787 | + width: 21%; | ||
| 788 | +} | ||
| 789 | + | ||
| 790 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(5) { | ||
| 791 | + width: 10%; | ||
| 792 | +} | ||
| 793 | + | ||
| 794 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(6) { | ||
| 795 | + width: 17%; | ||
| 796 | +} | ||
| 797 | + | ||
| 798 | +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(7) { | ||
| 799 | + width: 22%; | ||
| 800 | +} | ||
| 801 | + | ||
| 802 | +#schedule-lp_change-modal .ct_table.sch-list .ct_table_body dl.active { | ||
| 803 | + background: #b9d2ff; | ||
| 804 | +} | ||
| 805 | + | ||
| 806 | +#schedule-lp_change-modal .ct_table.sch-list .ct_table_body dl.active dd { | ||
| 807 | + border-top: 1px solid #b9d2ff; | ||
| 808 | +} | ||
| 809 | + | ||
| 810 | +#schedule-lp_change-modal .ct_table.sch-list dl.active input[type=checkbox] { | ||
| 811 | + border: none; | ||
| 812 | +} | ||
| 813 | + | ||
| 814 | +#schedule-lp_change-modal .ct_table.sch-list.reverse .ct_table_body dl.active { | ||
| 815 | + background: #ffe2b9; | ||
| 816 | +} | ||
| 817 | + | ||
| 818 | +#schedule-lp_change-modal .ct_table.sch-list.reverse .ct_table_body dl.active dd { | ||
| 819 | + border-top: 1px solid #ffe2b9; | ||
| 820 | +} | ||
| 821 | + | ||
| 822 | +#cache_data_manage-modal .uk-table td { | ||
| 823 | + vertical-align: bottom; | ||
| 824 | +} | ||
| 825 | + | ||
| 826 | +#cache_data_manage-modal .uk-table td, | ||
| 827 | +#cache_data_manage-modal .uk-table th { | ||
| 828 | + padding: 8px 8px 6px; | ||
| 829 | +} | ||
| 830 | + | ||
| 831 | +.ps-help-panel { | ||
| 832 | + color: grey; | ||
| 833 | + padding: 5px 2px; | ||
| 834 | +} | ||
| 835 | + | ||
| 836 | +.ps-help-panel small { | ||
| 837 | + display: block; | ||
| 838 | +} | ||
| 839 | + | ||
| 840 | +svg text.offline { | ||
| 841 | + fill: #6f6a6a !important; | ||
| 842 | +} | ||
| 843 | + | ||
| 844 | +svg rect.offline { | ||
| 845 | + stroke: #dbdada !important; | ||
| 846 | + fill: #dbdada !important; | ||
| 847 | +} | ||
| 848 | + | ||
| 849 | +.tooltip .tooltip-container .title a > .abnormal-text { | ||
| 850 | + font-size: 14px; | ||
| 851 | + color: #ff5e5e; | ||
| 852 | + font-weight: 600; | ||
| 853 | +} | ||
| 854 | + | ||
| 855 | +#addChildTaskBtn { | ||
| 856 | + margin-left: 5px; | ||
| 857 | + color: #36729b; | ||
| 858 | + padding: 1px 5px 1px 6px; | ||
| 859 | +} | ||
| 860 | + | ||
| 861 | +#addChildTaskBtn:hover { | ||
| 862 | + box-shadow: 2px 1px 3px 0 rgba(0, 0, 0, 0.2), 0px 3px 8px 0 rgba(0, 0, 0, 0.19); | ||
| 863 | +} | ||
| 864 | + | ||
| 865 | +.edit-icon { | ||
| 866 | + color: #aba9a9; | ||
| 867 | + font-size: 12px; | ||
| 868 | + margin-left: 5px; | ||
| 869 | + display: none; | ||
| 870 | +} | ||
| 871 | + | ||
| 872 | +.operation-real-text { | ||
| 873 | + position: absolute; | ||
| 874 | + top: 9px; | ||
| 875 | + width: 100%; | ||
| 876 | + left: 0; | ||
| 877 | + text-align: center; | ||
| 878 | + pointer-events: none; | ||
| 879 | +} | ||
| 880 | + | ||
| 881 | +.operation-real-text span { | ||
| 882 | + padding: 15px; | ||
| 883 | + background: #ff4f4f; | ||
| 884 | + color: white; | ||
| 885 | + box-shadow: 0px 4px 6px 0 rgba(0, 0, 0, 0.2), 0px 4px 10px 0 rgba(0, 0, 0, 0.19); | ||
| 886 | + border-radius: 1px 1px 4px 4px; | ||
| 887 | +} | ||
| 888 | + | ||
| 889 | +#oil_station-modal.ct-form-modal form.uk-form-horizontal .uk-form-label { | ||
| 890 | + width: 120px; | ||
| 891 | +} | ||
| 892 | + | ||
| 893 | +#oil_station-modal.ct-form-modal form.uk-form-horizontal .uk-form-controls { | ||
| 894 | + margin-left: 125px; | ||
| 895 | +} | ||
| 896 | + | ||
| 897 | +#oil_station-modal .uk-form-icon > [class*=uk-icon-] { | ||
| 898 | + right: 23px; | ||
| 899 | +} | ||
| 900 | + | ||
| 901 | +#oil_station-modal .uk-form-icon:not(.uk-form-icon-flip) > input { | ||
| 902 | + padding-left: 10px !important; | ||
| 903 | +} | ||
| 904 | + | ||
| 905 | +#oil_station-modal .uk-form-icon { | ||
| 906 | + width: calc(100% - 145px); | ||
| 907 | +} | ||
| 908 | + | ||
| 909 | +#oil_station-modal .uk-icon-mile:before { | ||
| 910 | + content: '公里'; | ||
| 911 | +} | ||
| 912 | + | ||
| 913 | +#oil_station-modal .uk-icon-minute:before { | ||
| 914 | + content: '分钟'; | ||
| 915 | +} | ||
| 916 | + | ||
| 917 | +option.oil_station_opt { | ||
| 918 | + color: red; | ||
| 919 | +} | ||
| 920 | + | ||
| 921 | +#oil_station-modal .uk-modal .uk-form.fv-form { | ||
| 922 | + margin-bottom: 0 !important; | ||
| 923 | +} | ||
| 924 | + | ||
| 925 | +#gb_wait_modal .uk-modal-spinner { | ||
| 926 | + top: 25px; | ||
| 927 | + -webkit-transform: translate(-50%, 0); | ||
| 928 | + transform: translate(-50%, 0); | ||
| 929 | +} | ||
| 930 | + | ||
| 931 | +#gb_wait_modal .wait-modal-text { | ||
| 932 | + text-align: center; | ||
| 933 | + margin-top: 35px; | ||
| 934 | + font-size: 15px; | ||
| 935 | + color: #635e5e; | ||
| 936 | +} | ||
| 937 | + | ||
| 938 | +.park-and-station-wrap { | ||
| 939 | + margin-top: 25px; | ||
| 940 | + border: 1px solid #b9b9b9; | ||
| 941 | + width: 580px; | ||
| 942 | + padding: 12px; | ||
| 943 | + border-radius: 5px; | ||
| 944 | + box-shadow: 0 2px 5px rgba(0,0,0,.1); | ||
| 945 | + margin-bottom: 15px; | ||
| 946 | +} | ||
| 947 | + | ||
| 948 | +.park-and-station-wrap select { | ||
| 949 | + width: auto !important; | ||
| 950 | +} | ||
| 951 | + | ||
| 952 | +.park-and-station-wrap>span{ | ||
| 953 | + vertical-align: middle; | ||
| 954 | + margin-top: 9px; | ||
| 955 | + display: inline-block; | ||
| 956 | +} | ||
| 957 | + | ||
| 958 | +/** 安全驾驶相关css */ | ||
| 959 | +.multi_plat_msg_pop_wrap { | ||
| 960 | + position: absolute; | ||
| 961 | + right: 12px; | ||
| 962 | + bottom: 12px; | ||
| 963 | + z-index: 99; | ||
| 964 | +} | ||
| 965 | + | ||
| 966 | +.multi_plat_msg_pop { | ||
| 967 | + background: #d44b4b; | ||
| 968 | + font-size: 15px; | ||
| 969 | + padding: 9px 10px 0; | ||
| 970 | + border: 1px solid #f4f0f0; | ||
| 971 | + border-radius: 5px; | ||
| 972 | + cursor: pointer; | ||
| 973 | + box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); | ||
| 974 | + transition: all .03s; | ||
| 975 | + color: #f2f2f2; | ||
| 976 | +} | ||
| 977 | + | ||
| 978 | +.multi_plat_msg_pop:hover { | ||
| 979 | + background: #bc2a2a; | ||
| 980 | +} | ||
| 981 | + | ||
| 982 | +.multi_plat_msg_pop .title { | ||
| 983 | +} | ||
| 984 | + | ||
| 985 | +.multi_plat_msg_pop .desc { | ||
| 986 | + display: block; | ||
| 987 | + font-size: 12px; | ||
| 988 | + color: #ff9d9d; | ||
| 989 | + text-align: right; | ||
| 990 | + margin-right: 5px; | ||
| 991 | +} | ||
| 992 | + | ||
| 993 | +.multi_plat_msg_pops .tests { | ||
| 994 | + display: block; | ||
| 995 | +} | ||
| 996 | + | ||
| 997 | +/** 嵌入表单modal滚动条样式 */ | ||
| 998 | +#formFragmentModal::-webkit-scrollbar { | ||
| 999 | + width: 10px; | ||
| 1000 | + background-color: #F5F5F5; | ||
| 1001 | +} | ||
| 1002 | + | ||
| 1003 | +#formFragmentModal::-webkit-scrollbar-thumb { | ||
| 1004 | + background-color: #000000; | ||
| 1005 | +} | ||
| 1006 | + | ||
| 1007 | +#formFragmentModal::-webkit-scrollbar-track { | ||
| 1008 | + border: 0; | ||
| 1009 | + background-color: #F5F5F5; | ||
| 1010 | + border-radius: 0; | ||
| 1011 | +} | ||
| 1012 | + | ||
| 1013 | +#formFragmentModal::-webkit-scrollbar-thumb { | ||
| 1014 | + border: 5px solid rgb(226, 122, 122); | ||
| 1015 | +} | ||
| 1016 | + | ||
| 1017 | +#schedule-addsch_oil-modal select { | ||
| 1018 | + height: 30px !important; | ||
| 1019 | +} | ||
| 1020 | + | ||
| 1021 | +#oil_station-modal .input_clear_icon { | ||
| 1022 | + position: absolute; | ||
| 1023 | + top: 6px; | ||
| 1024 | + right: 108px; | ||
| 1025 | + color: #f75757; | ||
| 1026 | + height: 18px; | ||
| 1027 | + line-height: 18px; | ||
| 1028 | + border-radius: 7px; | ||
| 1029 | + font-size: 16px; | ||
| 1030 | + display: none; | ||
| 1031 | + cursor: pointer; | ||
| 1032 | +} | ||
| 1033 | + | ||
| 1034 | +#oil_station-modal .input_clear_icon:hover { | ||
| 1035 | + color: #de2020; | ||
| 1036 | +} | ||
| 1037 | + | ||
| 1038 | +#oil_station-modal .input_clear_icon:before { | ||
| 1039 | + display: block; | ||
| 1040 | + font-family: FontAwesome; | ||
| 1041 | + content: "\f057"; | ||
| 1042 | +} | ||
| 1043 | + | ||
| 1044 | +#oil_station-modal input.readonly { | ||
| 1045 | + background: #dddddd; | ||
| 1046 | +} | ||
| 1047 | + | ||
| 1048 | +.ct_tags { | ||
| 1049 | + margin-bottom: 12px; | ||
| 1050 | +} | ||
| 1051 | + | ||
| 1052 | +.ct_tags > span { | ||
| 1053 | + padding: 3px 7px; | ||
| 1054 | + background: #e8e8e8; | ||
| 1055 | + color: #3a3939; | ||
| 1056 | + cursor: pointer; | ||
| 1057 | + margin-right: 5px; | ||
| 1058 | +} | ||
| 1059 | + | ||
| 1060 | +.ct_tags > span.active { | ||
| 1061 | + background: #62a9e1; | ||
| 1062 | + color: white; | ||
| 1063 | + box-shadow: 0 0 4px rgba(0, 0, 0, 0.35); | ||
| 1064 | +} | ||
| 1065 | + | ||
| 1066 | +.ct_tags > span.active:before { | ||
| 1067 | + content: "\f00c"; | ||
| 1068 | + font-family: FontAwesome; | ||
| 1069 | + margin-right: 2px; | ||
| 1070 | + font-size: 13px; | ||
| 1071 | +} | ||
| 1072 | + | ||
| 1073 | +.ct_tags > span:hover { | ||
| 1074 | + box-shadow: 0 0 4px rgba(0, 0, 0, .3); | ||
| 1075 | +} | ||
| 1076 | + | ||
| 1077 | +span.late-badge { | ||
| 1078 | + height: 20px; | ||
| 1079 | + line-height: 20px; | ||
| 1080 | + margin-top: 8px; | ||
| 1081 | + color: grey; | ||
| 1082 | + margin-left: 2px; | ||
| 1083 | +} | ||
| 1084 | + | ||
| 1085 | +dl.intimity span.late-badge { | ||
| 1086 | + color: #fbfbfb; | ||
| 1087 | +} | ||
| 1088 | + | ||
| 1089 | +/** badge tooltip */ | ||
| 1090 | +.uk-badge.c_task:hover, | ||
| 1091 | +.uk-badge.sch_region:hover { | ||
| 1092 | + background-image: none; | ||
| 1093 | + background: #38b3e1; | ||
| 1094 | + border: 1px solid #7ebad1; | ||
| 1095 | +} | ||
| 1096 | + | ||
| 1097 | +.uk-badge.out:hover { | ||
| 1098 | + background-image: none; | ||
| 1099 | + background: #8fc650; | ||
| 1100 | + border: 1px solid #949f86; | ||
| 1101 | +} | ||
| 1102 | + | ||
| 1103 | +.uk-badge.in:hover { | ||
| 1104 | + background-image: none; | ||
| 1105 | + background: #fabc64; | ||
| 1106 | + border: 1px solid #a68c67; | ||
| 1107 | +} | ||
| 1108 | + | ||
| 1109 | +.qtip.sch-badge-tip { | ||
| 1110 | + max-width: 700px; | ||
| 1111 | +} | ||
| 1112 | + | ||
| 1113 | +.tip_task_list { | ||
| 1114 | + width: 530px; | ||
| 1115 | + margin-bottom: -10px; | ||
| 1116 | +} | ||
| 1117 | + | ||
| 1118 | +.tip_task_list dl { | ||
| 1119 | + font-size: 0; | ||
| 1120 | + border-bottom: 1px solid #e6e6e6; | ||
| 1121 | + margin: 0; | ||
| 1122 | +} | ||
| 1123 | + | ||
| 1124 | +.tip_task_list dl:last-child { | ||
| 1125 | + border-bottom: none; | ||
| 1126 | +} | ||
| 1127 | + | ||
| 1128 | +.tip_task_list dl dt, | ||
| 1129 | +.tip_task_list dl dd { | ||
| 1130 | + display: inline-block; | ||
| 1131 | + font-size: 13px; | ||
| 1132 | + white-space: nowrap; | ||
| 1133 | + overflow: hidden; | ||
| 1134 | + text-overflow: ellipsis; | ||
| 1135 | + height: 24px; | ||
| 1136 | + line-height: 24px; | ||
| 1137 | +} | ||
| 1138 | + | ||
| 1139 | +.tip_task_list dl dt:nth-of-type(1), .tip_task_list dl dd:nth-of-type(1) { | ||
| 1140 | + width: 38px; | ||
| 1141 | + border-right: 1px solid #c8c8c8; | ||
| 1142 | +} | ||
| 1143 | + | ||
| 1144 | +.tip_task_list dl dt:nth-of-type(2), .tip_task_list dl dd:nth-of-type(2) { | ||
| 1145 | + width: 18%; | ||
| 1146 | + text-indent: 5px; | ||
| 1147 | +} | ||
| 1148 | + | ||
| 1149 | +.tip_task_list dl dt:nth-of-type(3), .tip_task_list dl dd:nth-of-type(3) { | ||
| 1150 | + width: 11%; | ||
| 1151 | +} | ||
| 1152 | + | ||
| 1153 | +.tip_task_list dl dt:nth-of-type(4), .tip_task_list dl dd:nth-of-type(4) { | ||
| 1154 | + width: 25%; | ||
| 1155 | +} | ||
| 1156 | + | ||
| 1157 | +.tip_task_list dl dt:nth-of-type(5), .tip_task_list dl dd:nth-of-type(5) { | ||
| 1158 | + width: 25%; | ||
| 1159 | +} | ||
| 1160 | + | ||
| 1161 | +.tip_task_list dl dt:nth-of-type(6), .tip_task_list dl dd:nth-of-type(6) { | ||
| 1162 | + width: 12%; | ||
| 1163 | +} | ||
| 1164 | + | ||
| 1165 | +.tip_task_list dl dd:nth-of-type(1) a { | ||
| 1166 | + color: #3c3c3c; | ||
| 1167 | + text-decoration: underline; | ||
| 1168 | + font-size: 12px; | ||
| 1169 | +} | ||
| 1170 | + | ||
| 1171 | +.tip_task_list dl.service { | ||
| 1172 | + color: blue; | ||
| 1173 | +} | ||
| 1174 | + | ||
| 1175 | +.tip_task_list dl.service.destroy { | ||
| 1176 | + color: red; | ||
| 1177 | +} | ||
| 1178 | + | ||
| 1179 | +.tip_task_list dl.service.temp_add { | ||
| 1180 | + color: #9C27B0; | ||
| 1181 | +} | ||
| 1182 | + | ||
| 1183 | +.tip_task_list dl span { | ||
| 1184 | + margin: 0; | ||
| 1185 | + width: auto; | ||
| 1186 | +} | ||
| 1187 | + | ||
| 1188 | +ul.left_tabs_lg { | ||
| 1189 | + border: 1px solid #efeded; | ||
| 1190 | + height: 100%; | ||
| 1191 | + background: #fafafa; | ||
| 1192 | +} | ||
| 1193 | + | ||
| 1194 | +ul.left_tabs_lg li { | ||
| 1195 | + line-height: 40px; | ||
| 1196 | + font-size: 15px; | ||
| 1197 | +} | ||
| 1198 | + | ||
| 1199 | +#schedule-addsch-modal .uk-modal-footer { | ||
| 1200 | + border-top: none; | ||
| 1201 | + background: none; | ||
| 1202 | +} | ||
| 1203 | + | ||
| 1204 | +.ct_line_lp_badge { | ||
| 1205 | + float: left; | ||
| 1206 | + margin-top: 6px; | ||
| 1207 | + background: #e0e0e0; | ||
| 1208 | + padding: 2px 7px; | ||
| 1209 | + border-radius: 3px; | ||
| 1210 | +} | ||
| 1211 | + | ||
| 1212 | +.uk-badge.sch_ldks { | ||
| 1213 | + background: #8c8c8c; | ||
| 1214 | + background-image: linear-gradient(to bottom, #a7a7a7, #8c8c8c); | ||
| 1215 | +} | ||
| 1216 | + | ||
| 1217 | +.ct_layer_modal { | ||
| 1218 | + background: #e5e5e5; | ||
| 1219 | + height: 100%; | ||
| 1220 | + width: 100%; | ||
| 1221 | + overflow: auto; | ||
| 1222 | +} | ||
| 1223 | + | ||
| 1224 | +.layui-layer-setwin { | ||
| 1225 | + | ||
| 1226 | +} | ||
| 1227 | + | ||
| 1228 | +.device_config_table dl dt:nth-of-type(1), .device_config_table dl dd:nth-of-type(1) { | ||
| 1229 | + width: 7%; | ||
| 1230 | + text-indent: 10px; | ||
| 1231 | +} | ||
| 1232 | + | ||
| 1233 | +.device_config_table dl dt:nth-of-type(2), .device_config_table dl dd:nth-of-type(2) { | ||
| 1234 | + width: 7%; | ||
| 1235 | +} | ||
| 1236 | + | ||
| 1237 | +.device_config_table dl dt:nth-of-type(3), .device_config_table dl dd:nth-of-type(3) { | ||
| 1238 | + width: 8%; | ||
| 1239 | +} | ||
| 1240 | + | ||
| 1241 | +.device_config_table dl dt:nth-of-type(4), .device_config_table dl dd:nth-of-type(4) { | ||
| 1242 | + width: 5%; | ||
| 1243 | +} | ||
| 1244 | + | ||
| 1245 | +.device_config_table dl dt:nth-of-type(5), .device_config_table dl dd:nth-of-type(5) { | ||
| 1246 | + width: 4%; | ||
| 1247 | +} | ||
| 1248 | + | ||
| 1249 | +.device_config_table dl dt:nth-of-type(6), .device_config_table dl dd:nth-of-type(6) { | ||
| 1250 | + width: 4%; | ||
| 1251 | +} | ||
| 1252 | + | ||
| 1253 | +.device_config_table dl dt:nth-of-type(7), .device_config_table dl dd:nth-of-type(7) { | ||
| 1254 | + width: 4%; | ||
| 1255 | +} | ||
| 1256 | + | ||
| 1257 | +.device_config_table dl dt:nth-of-type(8), .device_config_table dl dd:nth-of-type(8) { | ||
| 1258 | + width: 5%; | ||
| 1259 | +} | ||
| 1260 | + | ||
| 1261 | +.device_config_table dl dt:nth-of-type(9), .device_config_table dl dd:nth-of-type(9) { | ||
| 1262 | + width: 5%; | ||
| 1263 | +} | ||
| 1264 | + | ||
| 1265 | +.device_config_table dl dt:nth-of-type(10), .device_config_table dl dd:nth-of-type(10) { | ||
| 1266 | + width: 8%; | ||
| 1267 | +} | ||
| 1268 | + | ||
| 1269 | +.device_config_table dl dt:nth-of-type(11), .device_config_table dl dd:nth-of-type(11) { | ||
| 1270 | + width: 5%; | ||
| 1271 | +} | ||
| 1272 | + | ||
| 1273 | +.device_config_table dl dt:nth-of-type(12), .device_config_table dl dd:nth-of-type(12) { | ||
| 1274 | + width: 5%; | ||
| 1275 | +} | ||
| 1276 | + | ||
| 1277 | +.device_config_table dl dt:nth-of-type(13), .device_config_table dl dd:nth-of-type(13) { | ||
| 1278 | + width: 4%; | ||
| 1279 | +} | ||
| 1280 | + | ||
| 1281 | +.device_config_table dl dt:nth-of-type(14), .device_config_table dl dd:nth-of-type(14) { | ||
| 1282 | + width: 4%; | ||
| 1283 | +} | ||
| 1284 | + | ||
| 1285 | +.device_config_table dl dt:nth-of-type(15), .device_config_table dl dd:nth-of-type(15) { | ||
| 1286 | + width: 4%; | ||
| 1287 | +} | ||
| 1288 | + | ||
| 1289 | +.device_config_table dl dt:nth-of-type(16), .device_config_table dl dd:nth-of-type(16) { | ||
| 1290 | + width: 3%; | ||
| 1291 | +} | ||
| 1292 | + | ||
| 1293 | +.device_config_table dl dt:nth-of-type(17), .device_config_table dl dd:nth-of-type(17) { | ||
| 1294 | + width: 4%; | ||
| 1295 | +} | ||
| 1296 | + | ||
| 1297 | +.device_config_table dl dt:nth-of-type(18), .device_config_table dl dd:nth-of-type(18) { | ||
| 1298 | + width: 13%; | ||
| 1299 | +} | ||
| 1300 | + | ||
| 1301 | +.uk-tooltip { | ||
| 1302 | + z-index: 29999999 !important; | ||
| 1303 | +} | ||
| 1304 | + | ||
| 1305 | +.device_config_table.ct_table dl dd, | ||
| 1306 | +.device_config_table.ct_table dl dt { | ||
| 1307 | + border-right: 1px solid #dedede !important; | ||
| 1308 | +} | ||
| 1309 | + | ||
| 1310 | +.device_configs_manager .search_form { | ||
| 1311 | + text-indent: 12px; | ||
| 1312 | + margin-bottom: 0; | ||
| 1313 | + padding: 18px 5px; | ||
| 1314 | +} | ||
| 1315 | + | ||
| 1316 | +.sub_task_form_v2 { | ||
| 1317 | + background: #f9f9f9; | ||
| 1318 | + padding: 12px 15px; | ||
| 1319 | + border-radius: 5px 0 5px 5px; | ||
| 1320 | + border: 1px solid #dfdfdf; | ||
| 1321 | + position: relative; | ||
| 1322 | + margin-bottom: 20px; | ||
| 1323 | +} | ||
| 1324 | + | ||
| 1325 | +.task_form_close_icon { | ||
| 1326 | + background: #f9f9f9; | ||
| 1327 | + padding: 0px 4px; | ||
| 1328 | + position: absolute; | ||
| 1329 | + top: -8px; | ||
| 1330 | + right: -8px; | ||
| 1331 | + color: #898989; | ||
| 1332 | + font-size: 15px; | ||
| 1333 | + border: 1px solid #dfdfdf; | ||
| 1334 | + border-radius: 100%; | ||
| 1335 | + border-left: none; | ||
| 1336 | + border-bottom: none; | ||
| 1337 | + transition: all .03s; | ||
| 1338 | +} | ||
| 1339 | + | ||
| 1340 | +.task_form_close_icon:hover { | ||
| 1341 | + border: 1px solid #ff1515; | ||
| 1342 | + border-left: none; | ||
| 1343 | + border-bottom: none; | ||
| 1344 | + color: #e03e3e; | ||
| 1345 | +} | ||
| 1346 | + | ||
| 1347 | +.sub_task_form_v2:hover::after { | ||
| 1348 | + color: #5f5b5b; | ||
| 1349 | +} | ||
| 1350 | + | ||
| 1351 | +.sub_task_form_v2.uk-form-horizontal .uk-form-label { | ||
| 1352 | + width: 80px; | ||
| 1353 | +} | ||
| 1354 | + | ||
| 1355 | +.sub_task_form_v2.uk-form-horizontal .uk-form-controls { | ||
| 1356 | + margin-left: 85px; | ||
| 1357 | +} | ||
| 1358 | + | ||
| 1359 | +.sub_task_form_v2.uk-form-horizontal .uk-form-controls input[type=text], | ||
| 1360 | +.sub_task_form_v2.uk-form-horizontal .uk-form-controls input[type=time], | ||
| 1361 | +.sub_task_form_v2.uk-form-horizontal .uk-form-controls select { | ||
| 1362 | + width: 100%; | ||
| 1363 | +} | ||
| 1364 | + | ||
| 1365 | +#add-sub-task-main-modal .uk-modal-footer { | ||
| 1366 | + background: none; | ||
| 1367 | + border-top: none; | ||
| 1368 | +} | ||
| 1369 | + | ||
| 1370 | +#add-sub-task-main-modal .uk-grid + .uk-grid { | ||
| 1371 | + margin-top: 12px; | ||
| 1372 | +} | ||
| 1373 | + | ||
| 1374 | +#add-sub-task-main-modal .plus_icon_span { | ||
| 1375 | + font-size: 26px; | ||
| 1376 | + color: #b2b2b2; | ||
| 1377 | + padding: 10px 64px; | ||
| 1378 | + display: inline-block; | ||
| 1379 | + border: 1px dashed grey; | ||
| 1380 | + margin: 15px 0; | ||
| 1381 | + border-radius: 5px; | ||
| 1382 | + cursor: pointer; | ||
| 1383 | +} | ||
| 1384 | + | ||
| 1385 | +#add-sub-task-main-modal .uk-animation-fade { | ||
| 1386 | + animation-duration: .3s; | ||
| 1387 | +} | ||
| 1388 | + | ||
| 1389 | +#add-sub-task-main-modal .forms { | ||
| 1390 | + max-height: 642px; | ||
| 1391 | + overflow-y: auto; | ||
| 1392 | + overflow-x: hidden; | ||
| 1393 | + padding: 8px 8px 0 0; | ||
| 1394 | +} | ||
| 1395 | + | ||
| 1396 | +.add_custom_wrap .forms .sub_task_form_v2:last-child { | ||
| 1397 | + margin-bottom: 0; | ||
| 1398 | +} | ||
| 1399 | + | ||
| 1400 | +.sub_task_form_v2.destroy_form { | ||
| 1401 | + background-color: #fff5f4 !important; | ||
| 1402 | +} | ||
| 1403 | + | ||
| 1404 | +.uk-form > .half_change_car_box { | ||
| 1405 | + margin: -10px 0 15px; | ||
| 1406 | + padding: 3px 5px; | ||
| 1407 | + display: inline-block; | ||
| 1408 | + border: 1px solid #dfdddd; | ||
| 1409 | + color: #918f8f; | ||
| 1410 | +} | ||
| 1411 | + | ||
| 1412 | +.half_change_car_box input[type=checkbox] { | ||
| 1413 | + vertical-align: top; | ||
| 1414 | +} | ||
| 1415 | + | ||
| 1416 | +.uk-form > .half_change_car_box.active { | ||
| 1417 | + background: #4CAF50; | ||
| 1418 | + color: #fff; | ||
| 1419 | +} | ||
| 1420 | + | ||
| 1421 | +.uk-form > .half_change_car_box.active input[type=checkbox] { | ||
| 1422 | + background: #4caf50; | ||
| 1423 | + border-color: #4caf50; | ||
| 1424 | +} | ||
| 1425 | + | ||
| 1426 | +.uk-form > .half_change_car_box.active input[type=checkbox]:before { | ||
| 1427 | + color: #ffffff; | ||
| 1428 | +} | ||
| 1429 | + | ||
| 1430 | +.sub_task_form_v2.change_car { | ||
| 1431 | + z-index: 99; | ||
| 1432 | +} | ||
| 1433 | + | ||
| 1434 | +.st_range_top_form { | ||
| 1435 | + padding: 0 0 15px 5px; | ||
| 1436 | + border: 1px solid #c4bb76; | ||
| 1437 | + background: #e5e1c1; | ||
| 1438 | + margin-bottom: 15px; | ||
| 1439 | + box-shadow: 0px 4px 3px 0 rgba(142, 138, 138, 0.2), 0px 4px 5px 0 rgba(157, 156, 156, 0.19); | ||
| 1440 | +} | ||
| 1441 | + | ||
| 1442 | +.st_range_top_form .uk-form-row { | ||
| 1443 | + margin-top: 20px; | ||
| 1444 | +} | ||
| 1445 | + | ||
| 1446 | +.uk-form-horizontal.st_range_top_form .uk-form-label { | ||
| 1447 | + width: 80px; | ||
| 1448 | +} | ||
| 1449 | + | ||
| 1450 | +.uk-form-horizontal.st_range_top_form .uk-form-controls { | ||
| 1451 | + margin-left: 84px; | ||
| 1452 | +} | ||
| 1453 | + | ||
| 1454 | +.uk-form-horizontal.st_range_top_form .uk-form-controls select { | ||
| 1455 | + width: calc(100% - 2px); | ||
| 1456 | +} | ||
| 1457 | + | ||
| 1458 | +.sub_task_form_v2.service_st_form { | ||
| 1459 | + background: #f4faff; | ||
| 1460 | +} | ||
| 1461 | + | ||
| 1462 | +.uk-modal .uk-form.fv-form.sub_task_form_v2 { | ||
| 1463 | + margin-bottom: 20px !important; | ||
| 1464 | +} | ||
| 1465 | + | ||
| 1466 | +.sub_task_table_wrap .ct_table > .ct_table_body { | ||
| 1467 | + border-bottom: none; | ||
| 1468 | +} | ||
| 1469 | + | ||
| 1470 | +.err_panel { | ||
| 1471 | + font-size: 12px; | ||
| 1472 | + color: #7e7d7d; | ||
| 1473 | + font-family: 微软雅黑; | ||
| 1474 | + margin-top: 5px; | ||
| 1475 | +} | ||
| 1476 | + | ||
| 1477 | +#schedule-lp_change-modal .ct_table dl { | ||
| 1478 | + height: 35px; | ||
| 1479 | +} | ||
| 1480 | + | ||
| 1481 | +#schedule-lp_change-modal .ct_table dl dd, #schedule-lp_change-modal .ct_table dl dt { | ||
| 1482 | + line-height: 35px; | ||
| 1483 | +} | ||
| 1484 | + | ||
| 1485 | +/* | ||
| 1486 | +.sub_task_form_v2.repeat_main:before{ | ||
| 1487 | + content: '复'; | ||
| 1488 | + position: absolute; | ||
| 1489 | + top: -10px; | ||
| 1490 | + font-size: 12px; | ||
| 1491 | + color: #2196F3; | ||
| 1492 | + background: #ffffff; | ||
| 1493 | + padding: 0 3px; | ||
| 1494 | + font-weight: 600; | ||
| 1495 | +}*/ | ||
| 1496 | + | ||
| 1497 | +.sub_task_form_v2:before { | ||
| 1498 | + position: absolute; | ||
| 1499 | + top: -7px; | ||
| 1500 | + font-size: 12px; | ||
| 1501 | + padding: 0 3px; | ||
| 1502 | + font-weight: 600; | ||
| 1503 | + line-height: 14px; | ||
| 1504 | +} | ||
| 1505 | + | ||
| 1506 | +.sub_task_form_v2.destroy_form:before { | ||
| 1507 | + content: '烂班' !important; | ||
| 1508 | + color: #f14235 !important; | ||
| 1509 | + background: #ffffff !important; | ||
| 1510 | +} | ||
| 1511 | + | ||
| 1512 | +.sub_task_form_v2.service_form:before { | ||
| 1513 | + content: '营运'; | ||
| 1514 | + color: #2196F3; | ||
| 1515 | + background: #ffffff; | ||
| 1516 | +} | ||
| 1517 | + | ||
| 1518 | +.sub_task_form_v2.service_form.temp_service:before { | ||
| 1519 | + content: '营运 (临加)'; | ||
| 1520 | + color: #9C27B0; | ||
| 1521 | + background: #ffffff; | ||
| 1522 | +} | ||
| 1523 | + | ||
| 1524 | +.sub_task_form_v2.service_form.temp_service { | ||
| 1525 | + background: #faf0fd; | ||
| 1526 | +} | ||
| 1527 | + | ||
| 1528 | +.sub_task_form_v2.empty_form:before { | ||
| 1529 | + content: '空驶'; | ||
| 1530 | + color: #928f92; | ||
| 1531 | + background: #ffffff; | ||
| 1532 | +} | ||
| 1533 | + | ||
| 1534 | +.sub_task_form_v2.service_form { | ||
| 1535 | + background: #f4faff; | ||
| 1536 | +} | ||
| 1537 | + | ||
| 1538 | +/*.sub_task_form_v2.repeat_main.destroy_form:before{ | ||
| 1539 | + color: #F44336; | ||
| 1540 | +} | ||
| 1541 | + | ||
| 1542 | +.sub_task_form_v2.repeat_main{ | ||
| 1543 | + background: #f4faff; | ||
| 1544 | +}*/ | ||
| 1545 | +.footer_tools { | ||
| 1546 | + position: absolute; | ||
| 1547 | + left: 235px; | ||
| 1548 | + bottom: 19px; | ||
| 1549 | +} | ||
| 1550 | + | ||
| 1551 | +.footer_mileage_count { | ||
| 1552 | + border: 1px solid #f2f2f2; | ||
| 1553 | + padding: 5px; | ||
| 1554 | + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.2), 0px 2px 7px 0 rgba(0, 0, 0, 0.19); | ||
| 1555 | + display: inline-block; | ||
| 1556 | +} | ||
| 1557 | + | ||
| 1558 | +.footer_mileage_count > span { | ||
| 1559 | + padding: 2px 5px; | ||
| 1560 | +} | ||
| 1561 | + | ||
| 1562 | +.footer_mileage_count > span.service_sum { | ||
| 1563 | + color: #2196F3; | ||
| 1564 | +} | ||
| 1565 | + | ||
| 1566 | +.footer_mileage_count > span.empty_sum { | ||
| 1567 | + color: #636363; | ||
| 1568 | +} | ||
| 1569 | + | ||
| 1570 | +.footer_mileage_count > span.destroy_sum { | ||
| 1571 | + color: #f5574b; | ||
| 1572 | +} | ||
| 1573 | + | ||
| 1574 | +.station_to_park_link { | ||
| 1575 | + display: inline-block; | ||
| 1576 | + margin-left: 15px; | ||
| 1577 | + vertical-align: bottom; | ||
| 1578 | + font-size: 12px; | ||
| 1579 | +} | ||
| 1580 | + | ||
| 1581 | +.station_to_park_link > a { | ||
| 1582 | + color: #607D8B; | ||
| 1583 | +} | ||
| 1584 | + | ||
| 1585 | +#station_to_park-modal.ct-form-modal form input[type=text], | ||
| 1586 | +#station_to_park-modal.ct-form-modal form select { | ||
| 1587 | + width: auto; | ||
| 1588 | +} | ||
| 1589 | + | ||
| 1590 | +.s_2_park_form_wrap { | ||
| 1591 | + background: #fafafa; | ||
| 1592 | + border: 1px solid #e5e5e5; | ||
| 1593 | + padding: 7px 16px; | ||
| 1594 | + margin: 15px 0; | ||
| 1595 | + position: relative; | ||
| 1596 | +} | ||
| 1597 | + | ||
| 1598 | +.s_2_park_form_wrap .ct_close { | ||
| 1599 | + position: absolute; | ||
| 1600 | + top: -12px; | ||
| 1601 | + padding: 0 4px; | ||
| 1602 | + right: -8px; | ||
| 1603 | + color: #939393; | ||
| 1604 | + border: 1px solid #f7dfdf; | ||
| 1605 | + border-radius: 25px; | ||
| 1606 | + cursor: pointer; | ||
| 1607 | +} | ||
| 1608 | + | ||
| 1609 | +.s_2_park_form_wrap .ct_close:hover { | ||
| 1610 | + background: #e5e5e5; | ||
| 1611 | + color: #fd6e6e; | ||
| 1612 | +} | ||
| 1613 | + | ||
| 1614 | +.s_2_park_form_wrap label { | ||
| 1615 | + color: #666; | ||
| 1616 | + font-size: 13px; | ||
| 1617 | +} | ||
| 1618 | + | ||
| 1619 | +#station_to_park-modal.ct-form-modal form input[readonly] { | ||
| 1620 | + background: #fafafa; | ||
| 1621 | +} | ||
| 1622 | + | ||
| 1623 | +.s_2_park_form_wrap .bottom_label { | ||
| 1624 | + margin-top: 25px; | ||
| 1625 | + display: block; | ||
| 1626 | +} | ||
| 1627 | + | ||
| 1628 | +.s_2_park_form_wrap .bottom_label_2 { | ||
| 1629 | + margin-top: 4px; | ||
| 1630 | + display: block; | ||
| 1631 | +} | ||
| 1632 | + | ||
| 1633 | +.ct_describe { | ||
| 1634 | + font-size: 12px; | ||
| 1635 | + color: #909090; | ||
| 1636 | + font-family: FontAwesome; | ||
| 1637 | +} | ||
| 1638 | + | ||
| 1639 | +.ct_describe:before { | ||
| 1640 | + content: "\f059"; | ||
| 1641 | + margin-right: 3px; | ||
| 1642 | +} | ||
| 1643 | + | ||
| 1644 | +#add-sub-task-main-modal abbr { | ||
| 1645 | + display: inline-block; | ||
| 1646 | + font-size: 12px; | ||
| 1647 | + margin-left: 25px; | ||
| 1648 | + vertical-align: bottom; | ||
| 1649 | + color: #929292; | ||
| 1650 | +} | ||
| 1651 | + | ||
| 1652 | +#all-devices-modal .search-form input[type=text] { | ||
| 1653 | + width: 100px; | ||
| 1654 | +} | ||
| 1655 | + | ||
| 1656 | +#all-devices-modal .auto-refresh { | ||
| 1657 | + vertical-align: middle; | ||
| 1658 | + margin-left: 5px; | ||
| 1659 | + color: grey; | ||
| 1660 | +} | ||
| 1661 | + | ||
| 1662 | +#all-devices-modal .auto-refresh.active { | ||
| 1663 | + color: #405dff; | ||
| 1664 | +} | ||
| 1665 | + | ||
| 1666 | +#all-devices-modal .uk-margin-small-top { | ||
| 1667 | + margin-top: 0 !important; | ||
| 1668 | +} | ||
| 1669 | + | ||
| 1670 | +#history-sch-maintain-modal .add_lp_link { | ||
| 1671 | + display: inline-block; | ||
| 1672 | + vertical-align: bottom; | ||
| 1673 | + margin-left: 15px; | ||
| 1674 | + text-decoration: underline; | ||
| 1675 | + font-size: 13px; | ||
| 1676 | +} | ||
| 1677 | + | ||
| 1678 | +#schedule-tzrc-modal input[type=checkbox] { | ||
| 1679 | + margin-right: 9px; | ||
| 1680 | +} | ||
| 1681 | + | ||
| 1682 | +#schedule-tzrc-modal span.ct_zt_yzx { | ||
| 1683 | + color: #2196F3; | ||
| 1684 | + font-size: 12px; | ||
| 1685 | +} | ||
| 1686 | + | ||
| 1687 | +#schedule-tzrc-modal span.ct_zt_lb { | ||
| 1688 | + color: red; | ||
| 1689 | + font-size: 12px; | ||
| 1690 | +} | ||
| 1691 | + | ||
| 1692 | +#schedule-tzrc-modal span.ct_zt_zzzx { | ||
| 1693 | + font-size: 12px; | ||
| 1694 | + color: #38ad3c; | ||
| 1695 | +} | ||
| 1696 | + | ||
| 1697 | +#schedule-tzrc-modal .tzrc_form { | ||
| 1698 | + padding: 20px; | ||
| 1699 | + border: 1px solid #f0eded; | ||
| 1700 | + box-shadow: 0px -3px 15px rgba(0, 0, 0, 0.08); | ||
| 1701 | + background: #f9f9f9; | ||
| 1702 | +} | ||
| 1703 | + | ||
| 1704 | +.uk-panel.ct_search_panel { | ||
| 1705 | + padding: 15px; | ||
| 1706 | + border: 1px solid #f0eded; | ||
| 1707 | + box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.08); | ||
| 1708 | + background: #f9f9f9; | ||
| 1709 | +} | ||
| 1710 | + | ||
| 1711 | +.sch-tzrc-table.ct_table dl.active, | ||
| 1712 | +.sch-tzrc-table.ct_table > .ct_table_body dl.active:hover { | ||
| 1713 | + background: #5bd460; | ||
| 1714 | + color: white; | ||
| 1715 | +} | ||
| 1716 | + | ||
| 1717 | +#schedule-tzrc-modal dl.active span.ct_zt_yzx { | ||
| 1718 | + color: #545252; | ||
| 1719 | +} | ||
| 1720 | + | ||
| 1721 | +#schedule-tzrc-modal dl.active span.ct_zt_lb { | ||
| 1722 | + color: #d64949; | ||
| 1723 | +} | ||
| 1724 | + | ||
| 1725 | +#schedule-tzrc-modal dl.active span.ct_zt_zzzx { | ||
| 1726 | + color: white; | ||
| 1727 | +} | ||
| 1728 | + | ||
| 1729 | +#schedule-tzrc-modal dl.active input[type=checkbox] { | ||
| 1730 | + border: 0; | ||
| 1731 | +} | ||
| 1732 | + | ||
| 1733 | +#schedule-tzrc-modal dl.active input[type=checkbox]:before { | ||
| 1734 | + color: #ffffff; | ||
| 1735 | +} | ||
| 1736 | + | ||
| 1737 | +.sch-search-autocom input { | ||
| 1738 | + padding: 0 !important; | ||
| 1739 | + height: 100% !important; | ||
| 1740 | +} | ||
| 1741 | + | ||
| 1742 | +label.blue_checkbox { | ||
| 1743 | + margin-left: 12px; | ||
| 1744 | +} | ||
| 1745 | + | ||
| 1746 | +label.blue_checkbox > input { | ||
| 1747 | + width: 17px !important; | ||
| 1748 | + height: 17px !important; | ||
| 1749 | +} | ||
| 1750 | + | ||
| 1751 | +label.blue_checkbox > input:checked:before, | ||
| 1752 | +label.blue_checkbox > input:indeterminate:before { | ||
| 1753 | + line-height: 15px !important; | ||
| 1754 | +} | ||
| 1755 | + | ||
| 1756 | +dd.disabled { | ||
| 1757 | + color: #b5b3b3; | ||
| 1758 | +} | ||
| 1759 | + | ||
| 1760 | +dl.active > dd.disabled { | ||
| 1761 | + color: #ececec; | ||
| 1762 | +} | ||
| 1763 | + | ||
| 1764 | +#change_user_options-modal .user_info { | ||
| 1765 | + width: 360px; | ||
| 1766 | + margin: auto; | ||
| 1767 | +} | ||
| 1768 | + | ||
| 1769 | +.display_hide { | ||
| 1770 | + display: none; | ||
| 1771 | +} | ||
| 1772 | + | ||
| 1773 | +.ct_eye_icon { | ||
| 1774 | + font-size: 16px; | ||
| 1775 | + cursor: pointer; | ||
| 1776 | +} | ||
| 1777 | + | ||
| 1778 | +.ct_eye_icon.active { | ||
| 1779 | + color: #444; | ||
| 1780 | +} | ||
| 1781 | + | ||
| 1782 | +#tempScheduleContent .forms::-webkit-scrollbar { | ||
| 1783 | + width: 19px; | ||
| 1784 | + height: 16px; | ||
| 1785 | +} | ||
| 1786 | + | ||
| 1787 | +.range_2_normal_tt { | ||
| 1788 | + margin-bottom: 15px; | ||
| 1789 | + border-top: 1px dashed #c7c7c7; | ||
| 1790 | + color: #a6a6a6; | ||
| 1791 | + text-indent: 7px; | ||
| 1792 | + padding-bottom: 5px; | ||
| 1793 | +} | ||
| 1794 | + | ||
| 1795 | +.cancel_link { | ||
| 1796 | + font-size: 12px; | ||
| 1797 | + margin-left: 15px; | ||
| 1798 | + vertical-align: bottom; | ||
| 1799 | + color: #8d8d8d; | ||
| 1800 | + text-decoration: underline; | ||
| 1801 | + position: absolute; | ||
| 1802 | + right: 0; | ||
| 1803 | +} | ||
| 1804 | + | ||
| 1805 | +.edit_link { | ||
| 1806 | + font-size: 12px; | ||
| 1807 | + margin-left: 15px; | ||
| 1808 | + vertical-align: bottom; | ||
| 1809 | + color: #ff2f2f; | ||
| 1810 | + text-decoration: underline; | ||
| 1811 | +} | ||
| 1812 | + | ||
| 1813 | +.c_b_abnorm_notice { | ||
| 1814 | + position: absolute; | ||
| 1815 | + bottom: 0; | ||
| 1816 | + margin: auto; | ||
| 1817 | + width: 351px; | ||
| 1818 | + padding: 7px; | ||
| 1819 | + background: #ffffff; | ||
| 1820 | + box-shadow: 5px 5px 15px rgba(90, 90, 90, 0.48); | ||
| 1821 | + max-height: 125px; | ||
| 1822 | + overflow-y: auto; | ||
| 1823 | + min-height: 40px; | ||
| 1824 | +} | ||
| 1825 | + | ||
| 1826 | +.c_b_abnorm_notice:before { | ||
| 1827 | + content: "-超速报警-"; | ||
| 1828 | + color: #000000; | ||
| 1829 | + font-size: 12px; | ||
| 1830 | + font-family: 微软雅黑; | ||
| 1831 | + position: fixed; | ||
| 1832 | + background: #ffd967; | ||
| 1833 | + margin-top: -10px; | ||
| 1834 | + margin-left: -6px; | ||
| 1835 | + padding: 0 7px; | ||
| 1836 | + box-shadow: 2px 4px 7px rgba(90, 90, 90, 0.25); | ||
| 1837 | +} | ||
| 1838 | + | ||
| 1839 | +.c_b_item { | ||
| 1840 | + margin: 7px 0; | ||
| 1841 | + padding: 7px 12px; | ||
| 1842 | + box-shadow: 0px 0px 10px rgba(90, 90, 90, 0.29); | ||
| 1843 | + color: #FF5722; | ||
| 1844 | + cursor: pointer; | ||
| 1845 | +} | ||
| 1846 | + | ||
| 1847 | +.c_b_abnorm_notice > .c_b_item:first-child { | ||
| 1848 | + margin-top: 20px; | ||
| 1849 | +} | ||
| 1850 | + | ||
| 1851 | +.c_b_item.over { | ||
| 1852 | + color: grey; | ||
| 1853 | +} | ||
| 1854 | + | ||
| 1855 | +.c_b_item > span.c_b_over { | ||
| 1856 | + float: right; | ||
| 1857 | +} | ||
| 1858 | + | ||
| 1859 | +.mileage_elec_panel { | ||
| 1860 | + position: absolute; | ||
| 1861 | + width: 100%; | ||
| 1862 | + /*height: 90px;*/ | ||
| 1863 | + z-index: 1; | ||
| 1864 | + background: white; | ||
| 1865 | + bottom: 0px; | ||
| 1866 | + box-shadow: 1px 0px 15px rgba(90, 90, 90, 0.48); | ||
| 1867 | + padding: 9px 15px; | ||
| 1868 | + border-radius: 0 5px; | ||
| 1869 | + color: #000; | ||
| 1870 | + | ||
| 1871 | + display: none; | ||
| 1872 | +} | ||
| 1873 | + | ||
| 1874 | +.mileage_elec_panel ._title { | ||
| 1875 | + margin: 5px 3px; | ||
| 1876 | + font-size: 15px; | ||
| 1877 | +} | ||
| 1878 | + | ||
| 1879 | +.mileage_elec_panel .LD_item { | ||
| 1880 | + margin: 5px 0; | ||
| 1881 | + font-family: 微软雅黑; | ||
| 1882 | +} | ||
| 1883 | + | ||
| 1884 | +.mileage_elec_panel .LD_item > span { | ||
| 1885 | + padding: 3px; | ||
| 1886 | + display: inline-block; | ||
| 1887 | + width: 85px; | ||
| 1888 | +} | ||
| 1889 | + | ||
| 1890 | +.mileage_elec_panel .lp_name { | ||
| 1891 | + padding: 0 5px; | ||
| 1892 | + background: #f2f2f2; | ||
| 1893 | + border-radius: 15px | ||
| 1894 | +} | ||
| 1895 | + | ||
| 1896 | +.mileage_elec_panel .LD_item > span > a { | ||
| 1897 | + color: #000; | ||
| 1898 | +} | ||
| 1899 | + | ||
| 1900 | +.mileage_elec_panel .LD_item > span:nth-of-type(1) > a { | ||
| 1901 | + color: blue; | ||
| 1902 | +} | ||
| 1903 | + | ||
| 1904 | +/*.mileage_elec_panel .LD_item>span:nth-of-type(2)>a{ | ||
| 1905 | + color: #fa3a2c; | ||
| 1906 | +} | ||
| 1907 | + | ||
| 1908 | +.mileage_elec_panel .LD_item>span:nth-of-type(3)>a{ | ||
| 1909 | + color: #515151; | ||
| 1910 | +}*/ | ||
| 1911 | + | ||
| 1912 | +.mileage_elec_panel hr { | ||
| 1913 | + height: 1px; | ||
| 1914 | + border: none; | ||
| 1915 | + border-top: 1px dashed #b5b5b5; | ||
| 1916 | +} | ||
| 1917 | + | ||
| 1918 | +#edit-sub-task-main-modal .sub_task_form_v2.uk-form-horizontal .uk-form-label { | ||
| 1919 | + width: 70px; | ||
| 1920 | +} | ||
| 1921 | + | ||
| 1922 | +#edit-sub-task-main-modal .sub_task_form_v2.uk-form-horizontal .uk-form-controls { | ||
| 1923 | + margin-left: 75px; | ||
| 1924 | +} | ||
| 1925 | + | ||
| 1926 | +#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid + .uk-grid, | ||
| 1927 | +#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid-margin, | ||
| 1928 | +#edit-sub-task-main-modal .sub_task_form_v2 .uk-grid > * > .uk-panel + .uk-panel { | ||
| 1929 | + margin-top: 22px; | ||
| 1930 | +} | ||
| 1931 | + | ||
| 1932 | +.c_task_mileage_abnormal, | ||
| 1933 | +.c_task_mileage_abnormal .ct_table > .ct_table_head dl, | ||
| 1934 | +.c_task_mileage_abnormal .ct_table dl { | ||
| 1935 | + background: #ffe7e7 !important; | ||
| 1936 | +} | ||
| 1937 | + | ||
| 1938 | +.tip_task_count_dl { | ||
| 1939 | + width: calc(100% + 22px) !important; | ||
| 1940 | + margin-left: -11px !important; | ||
| 1941 | + border-top: 1px solid #e6e6e6 !important; | ||
| 1942 | +} | ||
| 1943 | + | ||
| 1944 | +.tip_task_count_dl > dd:last-child { | ||
| 1945 | + width: calc(100% - 50px) !important; | ||
| 1946 | + border-right: 0 !important; | ||
| 1947 | + height: 35px !important; | ||
| 1948 | + background: #f3f3f3; | ||
| 1949 | + margin-bottom: -3px; | ||
| 1950 | +} | ||
| 1951 | + | ||
| 1952 | +.tip_task_count_dl > dd:nth-of-type(1) { | ||
| 1953 | + text-align: center; | ||
| 1954 | + border-right: 0 !important; | ||
| 1955 | + width: 48px !important; | ||
| 1956 | +} | ||
| 1957 | + | ||
| 1958 | +.tip_task_count_dl > dd:nth-of-type(1) > i { | ||
| 1959 | + padding: 6px; | ||
| 1960 | + cursor: pointer; | ||
| 1961 | +} | ||
| 1962 | + | ||
| 1963 | +.tip_task_count_dl > dd:nth-of-type(1) > i:hover { | ||
| 1964 | + background: #ebebeb; | ||
| 1965 | +} | ||
| 1966 | + | ||
| 1967 | +.tip_task_count_dl.c_task_error > dd:last-child { | ||
| 1968 | + background: #ff8a81; | ||
| 1969 | +} | ||
| 1970 | + | ||
| 1971 | +.tip_task_count_dl > dd > span { | ||
| 1972 | + font-size: 13px; | ||
| 1973 | + color: #000; | ||
| 1974 | + height: 55px; | ||
| 1975 | + display: inline-block; | ||
| 1976 | + padding: 7px 0; | ||
| 1977 | + border-radius: 0; | ||
| 1978 | + text-indent: 12px; | ||
| 1979 | +} | ||
| 1980 | + | ||
| 1981 | +.tip_task_list > dl:nth-last-child(2) { | ||
| 1982 | + border-bottom: 0 !important; | ||
| 1983 | +} | ||
| 1984 | + | ||
| 1985 | +.c_task_mileage_error { | ||
| 1986 | + border: 1px solid rgba(218, 13, 13, 0.2); | ||
| 1987 | + border-bottom-color: rgba(213, 37, 37, 0.3); | ||
| 1988 | + background-image: -webkit-linear-gradient(top, #ff6155, #F44336); | ||
| 1989 | +} | ||
| 1990 | + | ||
| 1991 | +.uk-badge.c_task.c_task_mileage_error:hover:hover { | ||
| 1992 | + background-image: none; | ||
| 1993 | + background: #ff6155; | ||
| 1994 | + border: 1px solid rgba(213, 37, 37, 0.3); | ||
| 1995 | +} | ||
| 1996 | + | ||
| 1997 | +.grey_link { | ||
| 1998 | + color: #adabab; | ||
| 1999 | +} | ||
| 2000 | + | ||
| 2001 | +#sch_car_info_all-modal tr.ct_active { | ||
| 2002 | + -moz-animation: twinkle_bg .9s ease-in-out; | ||
| 2003 | + -webkit-animation: twinkle_bg .9s ease-in-out; | ||
| 2004 | +} | ||
| 2005 | + | ||
| 2006 | +#sch_car_info_all-modal .uk-table-hover tr:hover{ | ||
| 2007 | + background: #dddddd; | ||
| 2008 | +} | ||
| 2009 | + | ||
| 2010 | +@-moz-keyframes twinkle_bg { | ||
| 2011 | + 0% { | ||
| 2012 | + background: rgba(254, 235, 69, 0.38); | ||
| 2013 | + } | ||
| 2014 | + 25% { | ||
| 2015 | + background: rgba(254, 235, 69, 0.7); | ||
| 2016 | + } | ||
| 2017 | + 50% { | ||
| 2018 | + background: rgba(254, 235, 69, 0.3); | ||
| 2019 | + } | ||
| 2020 | + 75% { | ||
| 2021 | + background: rgba(254, 235, 69, 0.7); | ||
| 2022 | + } | ||
| 2023 | + 100% { | ||
| 2024 | + background: rgba(254, 235, 69, 0.38); | ||
| 2025 | + } | ||
| 2026 | +} | ||
| 2027 | + | ||
| 2028 | +@-webkit-keyframes twinkle_bg { | ||
| 2029 | + 0% { | ||
| 2030 | + background: rgba(254, 235, 69, 0.38); | ||
| 2031 | + } | ||
| 2032 | + 25% { | ||
| 2033 | + background: rgba(254, 235, 69, 0.7); | ||
| 2034 | + } | ||
| 2035 | + 50% { | ||
| 2036 | + background: rgba(254, 235, 69, 0.3); | ||
| 2037 | + } | ||
| 2038 | + 75% { | ||
| 2039 | + background: rgba(254, 235, 69, 0.7); | ||
| 2040 | + } | ||
| 2041 | + 100% { | ||
| 2042 | + background: rgba(254, 235, 69, 0.38); | ||
| 2043 | + } | ||
| 2044 | +} | ||
| 2045 | + | ||
| 2046 | +.home_svg_tips>div{ | ||
| 2047 | + overflow: hidden; | ||
| 2048 | + text-overflow: ellipsis; | ||
| 2049 | + white-space: nowrap; | ||
| 2050 | +} | ||
| 2051 | + | ||
| 2052 | +.tab-line.destroy>a{ | ||
| 2053 | + background: #ff5c5c; | ||
| 2054 | + color: #fff !important; | ||
| 2055 | + border-radius: 0; | ||
| 2056 | +} | ||
| 2057 | + | ||
| 2058 | +.tab-line.destroy>a:hover{ | ||
| 2059 | + background: #ff3333 !important; | ||
| 2060 | + border-color: #ff3333 !important; | ||
| 2061 | +} | ||
| 2062 | + | ||
| 2063 | +.uk-tab>li.uk-active.destroy>a{ | ||
| 2064 | + color: red !important; | ||
| 2065 | +} | ||
| 2066 | + | ||
| 2067 | +.uk-tab>li.uk-active.destroy>a:hover{ | ||
| 2068 | + background: #fff !important; | ||
| 2069 | +} | ||
| 2070 | + | ||
| 2071 | +.warn_multi_station{ | ||
| 2072 | + font-size: 12px; | ||
| 2073 | + margin-left: 40px; | ||
| 2074 | + background: yellow; | ||
| 2075 | + color: #1c1c1c; | ||
| 2076 | + padding: 4px 10px; | ||
| 2077 | + cursor: pointer; | ||
| 2078 | + display: none; | ||
| 2079 | +} | ||
| 2080 | + | ||
| 2081 | +.warn_multi_station:hover{ | ||
| 2082 | + background: #f8f81e; | ||
| 2083 | +} | ||
| 2084 | + | ||
| 2085 | +.tp_info_icon{ | ||
| 2086 | + font-size: 14px; | ||
| 2087 | + cursor: pointer; | ||
| 2088 | +} | ||
| 2089 | + | ||
| 2090 | +g.gps-wrap rect.twinkle[updown="0"] { | ||
| 2091 | + animation: anim_bg_twinkle_up 1.4s; | ||
| 2092 | +} | ||
| 2093 | + | ||
| 2094 | +@keyframes anim_bg_twinkle_up { | ||
| 2095 | + 0% { | ||
| 2096 | + fill: yellow; | ||
| 2097 | + stroke: yellow; | ||
| 2098 | + } | ||
| 2099 | + 25% { | ||
| 2100 | + stroke: rgb(62, 80, 179); | ||
| 2101 | + fill: rgb(62, 80, 179); | ||
| 2102 | + } | ||
| 2103 | + 50% { | ||
| 2104 | + fill: yellow; | ||
| 2105 | + stroke: yellow; | ||
| 2106 | + } | ||
| 2107 | + 100% { | ||
| 2108 | + stroke: rgb(62, 80, 179); | ||
| 2109 | + fill: rgb(62, 80, 179); | ||
| 2110 | + } | ||
| 2111 | +} | ||
| 2112 | + | ||
| 2113 | +g.gps-wrap rect.twinkle[updown="1"] { | ||
| 2114 | + animation: anim_bg_twinkle_down 1.4s; | ||
| 2115 | +} | ||
| 2116 | + | ||
| 2117 | +@keyframes anim_bg_twinkle_down { | ||
| 2118 | + 0% { | ||
| 2119 | + fill: yellow; | ||
| 2120 | + stroke: yellow; | ||
| 2121 | + } | ||
| 2122 | + 25% { | ||
| 2123 | + stroke: #c94f21; | ||
| 2124 | + fill: #c94f21; | ||
| 2125 | + } | ||
| 2126 | + 50% { | ||
| 2127 | + fill: yellow; | ||
| 2128 | + stroke: yellow; | ||
| 2129 | + } | ||
| 2130 | + 100% { | ||
| 2131 | + stroke: #c94f21; | ||
| 2132 | + fill: #c94f21; | ||
| 2133 | + } | ||
| 2130 | } | 2134 | } |
| 2131 | \ No newline at end of file | 2135 | \ No newline at end of file |
src/main/resources/static/real_control_v2/js/platform/carErrorStop.js
0 → 100644
| 1 | +/** | ||
| 2 | + * 车辆异常停车相关 | ||
| 3 | + */ | ||
| 4 | +var gb_carerrorstop = (function () { | ||
| 5 | + var $wrap = $('.multi_plat_msg_pop_wrap'); | ||
| 6 | + var max = 5; | ||
| 7 | + | ||
| 8 | + var pop = function (data) { | ||
| 9 | + debugger | ||
| 10 | + //时间格式化 | ||
| 11 | + var stm = moment(data.bysj); | ||
| 12 | + data.timeStr = stm.format('HH时mm分'); | ||
| 13 | + data.dateTimeStr = stm.format('YYYY-MM-DD HH:mm') | ||
| 14 | + data.type = 'ces'; | ||
| 15 | + | ||
| 16 | + var htmlStr = template('ces_plat_msg_template', data); | ||
| 17 | + var items = $wrap.find('.multi_plat_msg_pop'), len = items.length; | ||
| 18 | + if (len >= max) | ||
| 19 | + $wrap.find('.multi_plat_msg_pop:lt(' + (len - max) + ')').remove(); | ||
| 20 | + | ||
| 21 | + $wrap.append(htmlStr); | ||
| 22 | + }; | ||
| 23 | + | ||
| 24 | + return { | ||
| 25 | + pop: pop | ||
| 26 | + } | ||
| 27 | +})(); | ||
| 0 | \ No newline at end of file | 28 | \ No newline at end of file |
src/main/resources/static/real_control_v2/js/safe_driv/safeDriv.js
| 1 | -/** | ||
| 2 | - * 安全驾驶相关 | ||
| 3 | - */ | ||
| 4 | -var gb_safe_driv = (function () { | ||
| 5 | - | ||
| 6 | - var codes = { | ||
| 7 | - 'A1': '手部违规', | ||
| 8 | - 'A2': '摄像头偏离', | ||
| 9 | - 'A3': '安全带', | ||
| 10 | - 'A4': '未戴袖章', | ||
| 11 | - 'A5': '眨眼/疲劳驾驶', | ||
| 12 | - 'A6': '打哈欠/打瞌睡', | ||
| 13 | - 'A7': '与人交谈', | ||
| 14 | - 'A9': '玩手机' | ||
| 15 | - }; | ||
| 16 | - | ||
| 17 | - var path = 'http://180.166.5.82:9005/CurrentSafeDriving/'; | ||
| 18 | - | ||
| 19 | - var $wrap = $('.safe_driv_pop_wrap'); | ||
| 20 | - var max = 5; | ||
| 21 | - | ||
| 22 | - var pop = function (sd) { | ||
| 23 | - //时间格式化 | ||
| 24 | - var stm = moment(sd.ts); | ||
| 25 | - sd.timeStr = stm.format('HH时mm分ss秒'); | ||
| 26 | - //异常状态文本 | ||
| 27 | - sd.ycztText = codes[sd.yczltype]; | ||
| 28 | - //图片地址 | ||
| 29 | - var p = (sd.sbbh+'_'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 30 | - var url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 31 | - sd.url = path + url + '.gif'; | ||
| 32 | - | ||
| 33 | - var htmlStr = template('safe_driv_item-temp', sd); | ||
| 34 | - var items = $wrap.find('.safe_driv_pop'), len = items.length; | ||
| 35 | - if (len >= max) | ||
| 36 | - $wrap.find('.safe_driv_pop:lt(' + (len - max) + ')').remove(); | ||
| 37 | - | ||
| 38 | - $wrap.append(htmlStr); | ||
| 39 | - }; | ||
| 40 | - | ||
| 41 | - | ||
| 42 | - | ||
| 43 | - $wrap.on('click', '.safe_driv_pop', function () { | ||
| 44 | - var nbbm = $(this).data('nbbm'); | ||
| 45 | - var call_btn_html = '<button class="uk-button uk-button-mini uk-button-primary" ' + | ||
| 46 | - 'id="m_voip_call_btn_001" ' + | ||
| 47 | - 'type="button" ' + | ||
| 48 | - 'data-nbbm="'+nbbm+'">打电话</button>'; | ||
| 49 | - | ||
| 50 | - var title = $(this).data('title') + ' ' + call_btn_html; | ||
| 51 | - var url = $(this).data('url'); | ||
| 52 | - $(this).remove(); | ||
| 53 | - | ||
| 54 | - var lightbox = UIkit.lightbox.create([ | ||
| 55 | - {title: title, 'source': url} | ||
| 56 | - ], {keyboard: false}); | ||
| 57 | - | ||
| 58 | - lightbox.show(); | ||
| 59 | - }); | ||
| 60 | - | ||
| 61 | - var channelMap = { | ||
| 62 | - 'A1': 1, | ||
| 63 | - 'A2': 1, | ||
| 64 | - 'A3': 1, | ||
| 65 | - 'A9': 1, | ||
| 66 | - 'A4': 2, | ||
| 67 | - 'A5': 2, | ||
| 68 | - 'A6': 2, | ||
| 69 | - 'A7': 2 | ||
| 70 | - }; | ||
| 71 | -/* var showVedioModal = function (type) { | ||
| 72 | - var channel = channelMap[type]?channelMap[type]:1; | ||
| 73 | - open_modal_dom(vedioModal.replace('^^channel^^', channel) ,{}, {modal: false}); | ||
| 74 | - $('#ssspVedioModal #vedioIframe').on('load', function () { | ||
| 75 | - var that = this; | ||
| 76 | - setTimeout(function () { | ||
| 77 | - $(that).show(); | ||
| 78 | - $('#ssspVedioModal p.loading').remove(); | ||
| 79 | - }, 500); | ||
| 80 | - }); | ||
| 81 | - };*/ | ||
| 82 | - | ||
| 83 | -/* $(document).on('click', '#openVedioModalBtn', function () { | ||
| 84 | - showVedioModal($(this).data('type')); | ||
| 85 | - });*/ | ||
| 86 | - | ||
| 87 | - | ||
| 88 | -/* var showCallPhoneModal = function () { | ||
| 89 | - open_modal_dom(phoneModal ,{}, {modal: false}); | ||
| 90 | - $('#callPhoneModal #phoneIframe').on('load', function () { | ||
| 91 | - var that = this; | ||
| 92 | - var iframe = this.contentWindow.document.body; | ||
| 93 | - setTimeout(function () { | ||
| 94 | - //修改css | ||
| 95 | - $(iframe).find('.CallCenterToolBar').css('height', '200px').css('width', '100%').css('top', '10px').css('left', 'calc(50% - 148px)').css('box-shadow', 'none'); | ||
| 96 | - $(iframe).find('.CallCenterToolBar .top').css('display', 'none'); | ||
| 97 | - | ||
| 98 | - $('.toolBar td[data-action=call]', iframe).trigger('click'); | ||
| 99 | - | ||
| 100 | - //焦点 | ||
| 101 | - $('input#telNumber', iframe).focus(); | ||
| 102 | - | ||
| 103 | - $(that).show(); | ||
| 104 | - $('#callPhoneModal p.loading').remove(); | ||
| 105 | - }, 700); | ||
| 106 | - }); | ||
| 107 | - };*/ | ||
| 108 | - | ||
| 109 | - $(document).on('click', '#m_voip_call_btn_001', function () { | ||
| 110 | - //debugger | ||
| 111 | - var $lb = $('.uk-modal-dialog-lightbox'); | ||
| 112 | - var X = $lb.offset().top + $lb.height() - 240; | ||
| 113 | - var Y = $lb.offset().left + $lb.width(); | ||
| 114 | - | ||
| 115 | - var nbbm = $(this).data('nbbm'); | ||
| 116 | - | ||
| 117 | - var style = 'top: '+X+'px;left: '+Y+'px;height: '+$lb.height()+'px'; | ||
| 118 | - var htmlStr = template('voip_call_info_panel-temp', {style: style, nbbm: nbbm}); | ||
| 119 | - $lb.css('width', ($lb.width() + 260) + 'px'); | ||
| 120 | - $('.uk-lightbox-content', $lb.parent()).append(htmlStr); | ||
| 121 | - | ||
| 122 | - $(this).remove(); | ||
| 123 | - gb_call_phone.init(nbbm); | ||
| 124 | - }); | ||
| 125 | - | ||
| 126 | - | ||
| 127 | - return { | ||
| 128 | - pop: pop, | ||
| 129 | - safeCode: codes, | ||
| 130 | - urlPath: path//, | ||
| 131 | - //showVedioModal: showVedioModal | ||
| 132 | - } | 1 | +/** |
| 2 | + * 安全驾驶相关 | ||
| 3 | + */ | ||
| 4 | +var gb_safe_driv = (function () { | ||
| 5 | + | ||
| 6 | + var codes = { | ||
| 7 | + 'B4': '未带口罩', | ||
| 8 | + 'A1': '手部违规', | ||
| 9 | + 'A2': '摄像头偏离', | ||
| 10 | + 'A3': '安全带', | ||
| 11 | + 'A4': '未戴袖章', | ||
| 12 | + 'A5': '眨眼/疲劳驾驶', | ||
| 13 | + 'A6': '打哈欠/打瞌睡', | ||
| 14 | + 'A7': '与人交谈', | ||
| 15 | + 'A9': '玩手机', | ||
| 16 | + 'A11': '抽烟', | ||
| 17 | + 'A12': '打电话' | ||
| 18 | + }; | ||
| 19 | + | ||
| 20 | + var path = '/CurrentSafeDriving/'; | ||
| 21 | + | ||
| 22 | + var $wrap = $('.multi_plat_msg_pop_wrap'); | ||
| 23 | + var max = 5; | ||
| 24 | + | ||
| 25 | + var pop = function (sd) { | ||
| 26 | + //时间格式化 | ||
| 27 | + var stm = moment(sd.ts); | ||
| 28 | + sd.timeStr = stm.format('HH时mm分ss秒'); | ||
| 29 | + //异常状态文本 | ||
| 30 | + if(sd.jctype == 'B4') | ||
| 31 | + sd.ycztText = codes[sd.jctype]; | ||
| 32 | + else | ||
| 33 | + sd.ycztText = codes[sd.yczltype]; | ||
| 34 | + var p; | ||
| 35 | + //图片地址 | ||
| 36 | + if(sd.jctype == 'B4') | ||
| 37 | + p = (sd.sbbh+'_A'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 38 | + else | ||
| 39 | + p = (sd.sbbh+'_'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 40 | + | ||
| 41 | + var url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 42 | + sd.url = path + url + '.gif'; | ||
| 43 | + sd.type = 'sd'; | ||
| 44 | + | ||
| 45 | + var htmlStr = template('sd_plat_msg_template', sd); | ||
| 46 | + var items = $wrap.find('.multi_plat_msg_pop'), len = items.length; | ||
| 47 | + if (len >= max) | ||
| 48 | + $wrap.find('.multi_plat_msg_pop:lt(' + (len - max) + ')').remove(); | ||
| 49 | + | ||
| 50 | + $wrap.append(htmlStr); | ||
| 51 | + }; | ||
| 52 | + | ||
| 53 | + | ||
| 54 | + | ||
| 55 | + $wrap.on('click', '.multi_plat_msg_pop', function () { | ||
| 56 | + var type = $(this).data('type'); | ||
| 57 | + switch (type) { | ||
| 58 | + // 安全驾驶平台的数据 | ||
| 59 | + case 'sd': | ||
| 60 | + var nbbm = $(this).data('nbbm'), ts = $(this).data('ts'); | ||
| 61 | + var call_btn_html = '<button class="uk-button uk-button-mini uk-button-primary" ' + | ||
| 62 | + 'id="m_voip_call_btn_001" ' + | ||
| 63 | + 'type="button" ' + | ||
| 64 | + 'data-nbbm="'+nbbm+'">打电话</button>'; | ||
| 65 | + | ||
| 66 | + var title = $(this).data('title') + ' ' + call_btn_html; | ||
| 67 | + var url = $(this).data('url'); | ||
| 68 | + $(this).remove(); | ||
| 69 | + | ||
| 70 | + var image = new Image(); | ||
| 71 | + image.onload = function() { | ||
| 72 | + var lightbox = UIkit.lightbox.create([ | ||
| 73 | + {title: title, 'source': url} | ||
| 74 | + ], {keyboard: false}); | ||
| 75 | + | ||
| 76 | + lightbox.show(); | ||
| 77 | + } | ||
| 78 | + image.src = url; | ||
| 79 | + | ||
| 80 | + $.post('/realSchedule/ackDsm', {ts : ts, nbbm : nbbm}, function(res) {}); | ||
| 81 | + break; | ||
| 82 | + // 应急预案平台 | ||
| 83 | + case 'cp': | ||
| 84 | + var id = $(this).data('id'), confirm = $(this).data('confirm'); | ||
| 85 | + $(this).remove(); | ||
| 86 | + if (confirm == '确认') { | ||
| 87 | + $.post('/realSchedule/ackCp', {id : id}, function(res) {}); | ||
| 88 | + } | ||
| 89 | + break; | ||
| 90 | + // 浦东公交维修库 | ||
| 91 | + case 'mt': | ||
| 92 | + var data = { zbh: $(this).data('zbh'), bydj: $(this).data('bydj'), bysj: $(this).data('bysj'), bydd: $(this).data('bydd')}; | ||
| 93 | + $(this).remove(); | ||
| 94 | + window.localStorage.setItem('mtPlanModal', JSON.stringify(data)); | ||
| 95 | + open_modal('/real_control_v2/fragments/multi_plat_msg/mt_plan_modal.html', {}, {center: false, bgclose: false}); | ||
| 96 | + break; | ||
| 97 | + // 企业信息化运行监控中心 | ||
| 98 | + case 'ces': | ||
| 99 | + var data = { nbbm: $(this).data('zbh'), clZbh: $(this).data('zbh'), start: $(this).data('start'), fcsjActualTime: $(this).data('start'), end: $(this).data('end'), zdsjActualTime: $(this).data('end'),}; | ||
| 100 | + $(this).remove(); | ||
| 101 | + if(!$('.layui-layer.play_back-layer').is(':visible')){ | ||
| 102 | + gb_map_play_back.initParams(data); | ||
| 103 | + } else { | ||
| 104 | + gb_map_play_back.setParam(data); | ||
| 105 | + } | ||
| 106 | + break; | ||
| 107 | + // 运管中心进出场绕改道 | ||
| 108 | + case 'inoutpark': | ||
| 109 | + $(this).remove(); | ||
| 110 | + break; | ||
| 111 | + default: | ||
| 112 | + break; | ||
| 113 | + } | ||
| 114 | + | ||
| 115 | + }); | ||
| 116 | + | ||
| 117 | + var channelMap = { | ||
| 118 | + 'A1': 1, | ||
| 119 | + 'A2': 1, | ||
| 120 | + 'A3': 1, | ||
| 121 | + 'A9': 1, | ||
| 122 | + 'A4': 2, | ||
| 123 | + 'A5': 2, | ||
| 124 | + 'A6': 2, | ||
| 125 | + 'A7': 2 | ||
| 126 | + }; | ||
| 127 | +/* var showVedioModal = function (type) { | ||
| 128 | + var channel = channelMap[type]?channelMap[type]:1; | ||
| 129 | + open_modal_dom(vedioModal.replace('^^channel^^', channel) ,{}, {modal: false}); | ||
| 130 | + $('#ssspVedioModal #vedioIframe').on('load', function () { | ||
| 131 | + var that = this; | ||
| 132 | + setTimeout(function () { | ||
| 133 | + $(that).show(); | ||
| 134 | + $('#ssspVedioModal p.loading').remove(); | ||
| 135 | + }, 500); | ||
| 136 | + }); | ||
| 137 | + };*/ | ||
| 138 | + | ||
| 139 | +/* $(document).on('click', '#openVedioModalBtn', function () { | ||
| 140 | + showVedioModal($(this).data('type')); | ||
| 141 | + });*/ | ||
| 142 | + | ||
| 143 | + | ||
| 144 | +/* var showCallPhoneModal = function () { | ||
| 145 | + open_modal_dom(phoneModal ,{}, {modal: false}); | ||
| 146 | + $('#callPhoneModal #phoneIframe').on('load', function () { | ||
| 147 | + var that = this; | ||
| 148 | + var iframe = this.contentWindow.document.body; | ||
| 149 | + setTimeout(function () { | ||
| 150 | + //修改css | ||
| 151 | + $(iframe).find('.CallCenterToolBar').css('height', '200px').css('width', '100%').css('top', '10px').css('left', 'calc(50% - 148px)').css('box-shadow', 'none'); | ||
| 152 | + $(iframe).find('.CallCenterToolBar .top').css('display', 'none'); | ||
| 153 | + | ||
| 154 | + $('.toolBar td[data-action=call]', iframe).trigger('click'); | ||
| 155 | + | ||
| 156 | + //焦点 | ||
| 157 | + $('input#telNumber', iframe).focus(); | ||
| 158 | + | ||
| 159 | + $(that).show(); | ||
| 160 | + $('#callPhoneModal p.loading').remove(); | ||
| 161 | + }, 700); | ||
| 162 | + }); | ||
| 163 | + };*/ | ||
| 164 | + | ||
| 165 | + $(document).on('click', '#m_voip_call_btn_001', function () { | ||
| 166 | + //debugger | ||
| 167 | + var $lb = $('.uk-modal-dialog-lightbox'); | ||
| 168 | + var X = $lb.offset().top + $lb.height() - 240; | ||
| 169 | + var Y = $lb.offset().left + $lb.width(); | ||
| 170 | + | ||
| 171 | + var nbbm = $(this).data('nbbm'); | ||
| 172 | + | ||
| 173 | + var style = 'top: '+X+'px;left: '+Y+'px;height: '+$lb.height()+'px'; | ||
| 174 | + var htmlStr = template('voip_call_info_panel-temp', {style: style, nbbm: nbbm}); | ||
| 175 | + $lb.css('width', ($lb.width() + 260) + 'px'); | ||
| 176 | + $('.uk-lightbox-content', $lb.parent()).append(htmlStr); | ||
| 177 | + | ||
| 178 | + $(this).remove(); | ||
| 179 | + gb_call_phone.init(nbbm); | ||
| 180 | + }); | ||
| 181 | + | ||
| 182 | + | ||
| 183 | + return { | ||
| 184 | + pop: pop, | ||
| 185 | + safeCode: codes, | ||
| 186 | + urlPath: path//, | ||
| 187 | + //showVedioModal: showVedioModal | ||
| 188 | + } | ||
| 133 | })(); | 189 | })(); |
| 134 | \ No newline at end of file | 190 | \ No newline at end of file |
src/main/resources/static/real_control_v2/js/websocket/sch_websocket.js
| 1 | -var gb_sch_websocket = (function () { | ||
| 2 | - | ||
| 3 | - var temps; | ||
| 4 | - $.get('/real_control_v2/fragments/line_schedule/sys_mailbox.html', function (dom) { | ||
| 5 | - temps = gb_common.compileTempByDom(dom); | ||
| 6 | - }); | ||
| 7 | - | ||
| 8 | - var schSock = null; | ||
| 9 | - var recInterval = null; | ||
| 10 | - var reConnSpace = 1500;//重连间隔 | ||
| 11 | - var reConnCount; //重连次数 | ||
| 12 | - var maxReConn = 6; //最多重连次数 | ||
| 13 | - var new_conn = function () { | ||
| 14 | - schSock = new SockJS('/sockjs/realcontrol'); | ||
| 15 | - schSock.onopen = function (e) { | ||
| 16 | - if(reConnCount && reConnCount > 1){ | ||
| 17 | - gb_schedule_table.refreshAll(); | ||
| 18 | - console.log('重新连接,刷新班次'); | ||
| 19 | - } | ||
| 20 | - reConnCount = 1; | ||
| 21 | - clearInterval(recInterval); | ||
| 22 | - console.log('webSocket[realcontrol] onopen'); | ||
| 23 | - $('body>.north').removeClass('scok-colse'); | ||
| 24 | - setTimeout(regListen, 500); | ||
| 25 | - }; | ||
| 26 | - | ||
| 27 | - //接收消息 | ||
| 28 | - schSock.onmessage = function (e) { | ||
| 29 | - try { | ||
| 30 | - var jsonMsg = $.parseJSON(e.data); | ||
| 31 | - msgHandle[jsonMsg.fn](jsonMsg); | ||
| 32 | - } catch (e) { | ||
| 33 | - console.log(e, e.data); | ||
| 34 | - } | ||
| 35 | - }; | ||
| 36 | - | ||
| 37 | - //断开 | ||
| 38 | - schSock.onclose = function (e) { | ||
| 39 | - console.log('和服务器连接断开....', e); | ||
| 40 | - $('body>.north').addClass('scok-colse'); | ||
| 41 | - //1.5秒后重新连接 | ||
| 42 | - recInterval = setTimeout(function () { | ||
| 43 | - reConnCount++; | ||
| 44 | - if(reConnCount > maxReConn){ | ||
| 45 | - $('body>.north').addClass('re_conn_error'); | ||
| 46 | - clearInterval(recInterval); | ||
| 47 | - return; | ||
| 48 | - } | ||
| 49 | - new_conn(); | ||
| 50 | - }, reConnSpace * reConnCount); | ||
| 51 | - }; | ||
| 52 | - }; | ||
| 53 | - | ||
| 54 | - //初始化websocket连接 | ||
| 55 | - new_conn(); | ||
| 56 | - | ||
| 57 | - function regListen() { | ||
| 58 | - //注册线路监听 | ||
| 59 | - var data = { | ||
| 60 | - operCode: 'register_line', | ||
| 61 | - idx: gb_data_basic.line_idx | ||
| 62 | - }; | ||
| 63 | - schSock.send(JSON.stringify(data)); | ||
| 64 | - console.log('regListen....', data); | ||
| 65 | - } | ||
| 66 | - | ||
| 67 | - /** | ||
| 68 | - * 计算未处理消息 | ||
| 69 | - */ | ||
| 70 | - var calcUntreated = function (lineCode) { | ||
| 71 | - var size = $('li.line_schedule[data-id=' + lineCode + '] .sys-mailbox .sys-mail-item').length; | ||
| 72 | - $('#badge_untreated_num_' + lineCode).text(size); | ||
| 73 | - }; | ||
| 74 | - | ||
| 75 | - var calcUntreatedAll = function () { | ||
| 76 | - $('#main-tab-content li.line_schedule').each(function () { | ||
| 77 | - calcUntreated($(this).data('id')); | ||
| 78 | - }); | ||
| 79 | - }; | ||
| 80 | - | ||
| 81 | - | ||
| 82 | - //80协议上报 | ||
| 83 | - var report80 = function (msg) { | ||
| 84 | - msg.dateStr = moment(msg.timestamp).format('HH:mm'); | ||
| 85 | - msg.text = gb_common.reqCode80[msg.data.requestCode]; | ||
| 86 | - if (!msg.text) | ||
| 87 | - msg.text = '(未知的请求码 ' + msg.data.requestCode + ')'; | ||
| 88 | - | ||
| 89 | - var $item = $(temps['sys-note-80-temp'](msg)); | ||
| 90 | - findMailBox(msg.data.lineId).prepend($item); | ||
| 91 | - //tts | ||
| 92 | - var ttsMsg = $item.find('.uk-panel-title').text(); | ||
| 93 | - gb_tts.speak(ttsMsg, msg.data.lineId); | ||
| 94 | - | ||
| 95 | - calcUntreated(msg.data.lineId); | ||
| 96 | - }; | ||
| 97 | - | ||
| 98 | - var safeDriv = function (msg) { | ||
| 99 | - gb_safe_driv.pop(msg.t); | ||
| 100 | - }; | ||
| 101 | - | ||
| 102 | - /** | ||
| 103 | - * 自动误点调整 | ||
| 104 | - * @param msg | ||
| 105 | - */ | ||
| 106 | - var autoWdtz = function (msg) { | ||
| 107 | - var schId = msg.id; | ||
| 108 | - var minute = msg.minute; | ||
| 109 | - var lineCode = msg.lineCode; | ||
| 110 | - gb_schedule_table.showLateBadge(lineCode, schId, minute); | ||
| 111 | - if(msg['cancelId']){ | ||
| 112 | - gb_schedule_table.cancelLateBadge(lineCode, msg['cancelId']); | ||
| 113 | - } | ||
| 114 | - }; | ||
| 115 | - | ||
| 116 | - var waitRemoves = []; | ||
| 117 | - //车辆发出 | ||
| 118 | - var faChe = function (msg) { | ||
| 119 | - gb_schedule_table.updateSchedule(msg.t); | ||
| 120 | - msg.domId = 'fache_' + msg.t.id + '_' + parseInt(Math.random() * 10000); | ||
| 121 | - | ||
| 122 | - var $item = $(temps['sys-note-42-temp'](msg)); | ||
| 123 | - findMailBox(msg.t.xlBm).prepend($item); | ||
| 124 | - waitRemoves.push({ | ||
| 125 | - t: currentSecond(), | ||
| 126 | - dom: msg.domId | ||
| 127 | - }); | ||
| 128 | - | ||
| 129 | - //tts | ||
| 130 | - var ttsMsg = $item.find('.title').text(); | ||
| 131 | - gb_tts.speak(ttsMsg, msg.t.xlBm); | ||
| 132 | - gb_schedule_table.calc_yfwf_num(msg.t.xlBm); | ||
| 133 | - | ||
| 134 | - calcUntreated(msg.t.xlBm); | ||
| 135 | - }; | ||
| 136 | - | ||
| 137 | - //到达终点 | ||
| 138 | - var zhongDian = function (msg) { | ||
| 139 | - gb_schedule_table.updateSchedule(msg.t); | ||
| 140 | - gb_schedule_table.updateSchedule(msg.nt); | ||
| 141 | - msg.domId = 'zhongDian_' + msg.t.id + '_' + parseInt(Math.random() * 10000); | ||
| 142 | - | ||
| 143 | - var $item = $(temps['sys-note-42_1-temp'](msg)); | ||
| 144 | - findMailBox(msg.t.xlBm).prepend($item); | ||
| 145 | - waitRemoves.push({ | ||
| 146 | - t: currentSecond(), | ||
| 147 | - dom: msg.domId | ||
| 148 | - }); | ||
| 149 | - //tts | ||
| 150 | - var ttsMsg = $item.find('.title').text(); | ||
| 151 | - gb_tts.speak(ttsMsg, msg.t.xlBm); | ||
| 152 | - | ||
| 153 | - calcUntreated(msg.t.xlBm); | ||
| 154 | - //更新路牌公里统计面板 | ||
| 155 | - gb_schedule_table.showLpMileageTipBySch(msg.t); | ||
| 156 | - }; | ||
| 157 | - | ||
| 158 | - //服务器通知刷新班次 | ||
| 159 | - var refreshSch = function (msg) { | ||
| 160 | - gb_schedule_table.updateSchedule(msg.ts); | ||
| 161 | - /*//重新计算应发未发 | ||
| 162 | - var idx={}; | ||
| 163 | - $.each(msg.ts, function(i, t){ | ||
| 164 | - if(idx[t.xlBm]) | ||
| 165 | - return true; | ||
| 166 | - gb_schedule_table.calc_yfwf_num(t.xlBm); | ||
| 167 | - idx[t.xlBm]=1; | ||
| 168 | - });*/ | ||
| 169 | - }; | ||
| 170 | - | ||
| 171 | - //80消息确认 | ||
| 172 | - var d80Confirm = function (msg) { | ||
| 173 | - $('.sys-mailbox .sys-note-80[data-id=' + msg.id + ']').remove(); | ||
| 174 | - //重新计算未读消息 | ||
| 175 | - calcUntreated(msg.lineId); | ||
| 176 | - //重新计算应发未发 | ||
| 177 | - gb_schedule_table.calc_yfwf_num(msg.lineId); | ||
| 178 | - }; | ||
| 179 | - | ||
| 180 | - //指令状态改变 | ||
| 181 | - var directiveStatus = function (msg) { | ||
| 182 | - gb_schedule_table.updateSchedule(msg.t); | ||
| 183 | - }; | ||
| 184 | - | ||
| 185 | - //班次信号状态 | ||
| 186 | - var signalState = function (msg) { | ||
| 187 | - gb_signal_state.put(msg.data); | ||
| 188 | - }; | ||
| 189 | - | ||
| 190 | - var msgHandle = { | ||
| 191 | - report80: report80, | ||
| 192 | - faChe: faChe, | ||
| 193 | - zhongDian: zhongDian, | ||
| 194 | - refreshSch: refreshSch, | ||
| 195 | - d80Confirm: d80Confirm, | ||
| 196 | - directive: directiveStatus, | ||
| 197 | - signal_state: signalState, | ||
| 198 | - deviceOffline: deviceOffline, | ||
| 199 | - safeDriv: safeDriv, | ||
| 200 | - auto_wdtz: autoWdtz | ||
| 201 | - }; | ||
| 202 | - | ||
| 203 | - function currentSecond() { | ||
| 204 | - return Date.parse(new Date()) / 1000; | ||
| 205 | - } | ||
| 206 | - | ||
| 207 | - var mailBoxs = {}; | ||
| 208 | - | ||
| 209 | - function findMailBox(lineCode) { | ||
| 210 | - if (mailBoxs[lineCode]) | ||
| 211 | - return mailBoxs[lineCode]; | ||
| 212 | - | ||
| 213 | - var mbox = $('li.line_schedule[data-id=' + lineCode + ']').find('div.sys-mailbox'); | ||
| 214 | - mailBoxs[lineCode] = mbox; | ||
| 215 | - return mbox; | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - | ||
| 219 | - //42确定 | ||
| 220 | - $(document).on('click', '.sys-mailbox .sys-note-42 .uk-button-primary', function (e) { | ||
| 221 | - e.stopPropagation(); | ||
| 222 | - $(this).parents('.sys-note-42').remove(); | ||
| 223 | - var size = $(this).parents('.sys-mailbox').find('.sys-mail-item').length | ||
| 224 | - , lineCode = $(this).data('line'); | ||
| 225 | - | ||
| 226 | - $('#badge_untreated_num_' + lineCode).text(size); | ||
| 227 | - }); | ||
| 228 | - | ||
| 229 | - //42消息点击 | ||
| 230 | - $(document).on('click', '.sys-mailbox .sys-note-42', function () { | ||
| 231 | - var lineCode = $(this).parents('li.line_schedule').data('id') | ||
| 232 | - , id = $(this).data('id'); | ||
| 233 | - var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 234 | - var dl = gb_schedule_table.scroToDl(sch); | ||
| 235 | - //高亮 | ||
| 236 | - gb_schedule_table.reset_drag_active_all(dl); | ||
| 237 | - dl.addClass('relevance-active intimity').find('dd:eq(5)').trigger('click'); | ||
| 238 | - }); | ||
| 239 | - | ||
| 240 | - //80消息点击 | ||
| 241 | - $(document).on('click', '.sys-mailbox .sys-note-80', function () { | ||
| 242 | - var lineCode = $(this).parents('li.line_schedule').data('id') | ||
| 243 | - , id = $(this).data('schid'); | ||
| 244 | - var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 245 | - var dl = gb_schedule_table.scroToDl(sch); | ||
| 246 | - //高亮 | ||
| 247 | - gb_schedule_table.reset_drag_active_all(dl); | ||
| 248 | - dl.addClass('relevance-active intimity').find('dd:eq(5)').trigger('click'); | ||
| 249 | - }); | ||
| 250 | - | ||
| 251 | - //80同意 | ||
| 252 | - $(document).on('click', '.sys-mailbox .sys-note-80 .uk-button-primary', function (e) { | ||
| 253 | - e.stopPropagation(); | ||
| 254 | - $(this).attr('disabled', 'disabled'); | ||
| 255 | - var panel = $(this).parents('.sys-note-80') | ||
| 256 | - , id = panel.data('id'); | ||
| 257 | - | ||
| 258 | - reply80({id: id, reply: 0}); | ||
| 259 | - return false; | ||
| 260 | - }); | ||
| 261 | - | ||
| 262 | - //80不同意 | ||
| 263 | - $(document).on('click', '.sys-mailbox .sys-note-80 .uk-button.reject', function (e) { | ||
| 264 | - e.stopPropagation(); | ||
| 265 | - $(this).attr('disabled', 'disabled'); | ||
| 266 | - var panel = $(this).parents('.sys-note-80') | ||
| 267 | - , id = panel.data('id'); | ||
| 268 | - | ||
| 269 | - reply80({id: id, reply: -1}); | ||
| 270 | - return false; | ||
| 271 | - }); | ||
| 272 | - | ||
| 273 | - var reply80 = function (data, cb) { | ||
| 274 | - gb_common.$post('/directive/reply80', data, function (rs) { | ||
| 275 | - if (rs.msg) | ||
| 276 | - notify_succ(rs.msg); | ||
| 277 | - cb && cb(); | ||
| 278 | - }); | ||
| 279 | - }; | ||
| 280 | - | ||
| 281 | - | ||
| 282 | - //定时到离站信使清理掉 | ||
| 283 | - !function () { | ||
| 284 | - var f = arguments.callee, | ||
| 285 | - ct = Date.parse(new Date()) / 1000, | ||
| 286 | - item, elem; | ||
| 287 | - try { | ||
| 288 | - for (var i = 0; i < 1000; i++) { | ||
| 289 | - if (waitRemoves.length == 0) | ||
| 290 | - break; | ||
| 291 | - item = waitRemoves[0]; | ||
| 292 | - if (ct - item.t >= 30) { | ||
| 293 | - waitRemoves.shift(); | ||
| 294 | - elem = $('#' + item.dom); | ||
| 295 | - if (elem) | ||
| 296 | - elem.remove(); | ||
| 297 | - } | ||
| 298 | - } | ||
| 299 | - } catch (e) { | ||
| 300 | - console.log(e); | ||
| 301 | - } | ||
| 302 | - | ||
| 303 | - //计算未读消息 | ||
| 304 | - calcUntreatedAll(); | ||
| 305 | - setTimeout(f, 5000); | ||
| 306 | - }(); | ||
| 307 | - | ||
| 308 | - /** | ||
| 309 | - * 设备掉线 | ||
| 310 | - * @param msg | ||
| 311 | - */ | ||
| 312 | - function deviceOffline(msg) { | ||
| 313 | - gb_data_gps.deviceOffline(msg.gps); | ||
| 314 | - } | ||
| 315 | - | ||
| 316 | - /** | ||
| 317 | - * 信号撤销 | ||
| 318 | - */ | ||
| 319 | - $(document).on('click','.sys-note-42 .cancel_link', function () { | ||
| 320 | - var id = $(this).data('id'), | ||
| 321 | - lineCode = $(this).data('line'); | ||
| 322 | - | ||
| 323 | - var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 324 | - if(!sch) | ||
| 325 | - return; | ||
| 326 | - | ||
| 327 | - var confirmBtn = $(this).parent().find('.uk-button-primary'); | ||
| 328 | - var type = $(this).data('type'); | ||
| 329 | - var fun = type==1?gb_schedule_context_menu.cxzx:gb_schedule_context_menu.cxsf; | ||
| 330 | - | ||
| 331 | - fun(sch, function () { | ||
| 332 | - confirmBtn.trigger('click'); | ||
| 333 | - }); | ||
| 334 | - }); | ||
| 335 | - | ||
| 336 | - /** | ||
| 337 | - * 到站信号修改 | ||
| 338 | - */ | ||
| 339 | - $(document).on('click', '.sys-note-42 .edit_link', function () { | ||
| 340 | - var id = $(this).data('id'), | ||
| 341 | - lineCode = $(this).data('line'); | ||
| 342 | - | ||
| 343 | - var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 344 | - if(!sch) | ||
| 345 | - return; | ||
| 346 | - | ||
| 347 | - var nextSch = gb_schedule_table.getNextSch(sch); | ||
| 348 | - gb_schedule_context_menu.dftz(nextSch); | ||
| 349 | - }); | ||
| 350 | - | ||
| 351 | - /** | ||
| 352 | - * 信使 sys-note-80 编辑 | ||
| 353 | - */ | ||
| 354 | - $(document).on('click', '.sys-note-80 .edit_link', function () { | ||
| 355 | - var id = $(this).data('id'), | ||
| 356 | - lineCode = $(this).data('line'); | ||
| 357 | - | ||
| 358 | - var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 359 | - if(!sch) | ||
| 360 | - return; | ||
| 361 | - | ||
| 362 | - gb_schedule_context_menu.fcxxwt(sch); | ||
| 363 | - }); | ||
| 364 | - | ||
| 365 | - return { | ||
| 366 | - sock: function () { | ||
| 367 | - return schSock; | ||
| 368 | - } | ||
| 369 | - }; | ||
| 370 | -})(); | 1 | +var gb_sch_websocket = (function () { |
| 2 | + | ||
| 3 | + var temps; | ||
| 4 | + $.get('/real_control_v2/fragments/line_schedule/sys_mailbox.html', function (dom) { | ||
| 5 | + temps = gb_common.compileTempByDom(dom); | ||
| 6 | + }); | ||
| 7 | + | ||
| 8 | + var schSock = null; | ||
| 9 | + var recInterval = null; | ||
| 10 | + var reConnSpace = 1500;//重连间隔 | ||
| 11 | + var reConnCount; //重连次数 | ||
| 12 | + var maxReConn = 6; //最多重连次数 | ||
| 13 | + var new_conn = function () { | ||
| 14 | + schSock = new SockJS('/sockjs/realcontrol'); | ||
| 15 | + schSock.onopen = function (e) { | ||
| 16 | + if(reConnCount && reConnCount > 1){ | ||
| 17 | + gb_schedule_table.refreshAll(); | ||
| 18 | + console.log('重新连接,刷新班次'); | ||
| 19 | + } | ||
| 20 | + reConnCount = 1; | ||
| 21 | + clearInterval(recInterval); | ||
| 22 | + console.log('webSocket[realcontrol] onopen'); | ||
| 23 | + $('body>.north').removeClass('scok-colse'); | ||
| 24 | + setTimeout(regListen, 500); | ||
| 25 | + }; | ||
| 26 | + | ||
| 27 | + //接收消息 | ||
| 28 | + schSock.onmessage = function (e) { | ||
| 29 | + try { | ||
| 30 | + var jsonMsg = $.parseJSON(e.data); | ||
| 31 | + msgHandle[jsonMsg.fn](jsonMsg); | ||
| 32 | + } catch (e) { | ||
| 33 | + console.log(e, e.data); | ||
| 34 | + } | ||
| 35 | + }; | ||
| 36 | + | ||
| 37 | + //断开 | ||
| 38 | + schSock.onclose = function (e) { | ||
| 39 | + console.log('和服务器连接断开....', e); | ||
| 40 | + $('body>.north').addClass('scok-colse'); | ||
| 41 | + //1.5秒后重新连接 | ||
| 42 | + recInterval = setTimeout(function () { | ||
| 43 | + reConnCount++; | ||
| 44 | + if(reConnCount > maxReConn){ | ||
| 45 | + $('body>.north').addClass('re_conn_error'); | ||
| 46 | + clearInterval(recInterval); | ||
| 47 | + return; | ||
| 48 | + } | ||
| 49 | + new_conn(); | ||
| 50 | + }, reConnSpace * reConnCount); | ||
| 51 | + }; | ||
| 52 | + }; | ||
| 53 | + | ||
| 54 | + //初始化websocket连接 | ||
| 55 | + new_conn(); | ||
| 56 | + | ||
| 57 | + function regListen() { | ||
| 58 | + //注册线路监听 | ||
| 59 | + var data = { | ||
| 60 | + operCode: 'register_line', | ||
| 61 | + idx: gb_data_basic.line_idx | ||
| 62 | + }; | ||
| 63 | + schSock.send(JSON.stringify(data)); | ||
| 64 | + console.log('regListen....', data); | ||
| 65 | + } | ||
| 66 | + | ||
| 67 | + /** | ||
| 68 | + * 计算未处理消息 | ||
| 69 | + */ | ||
| 70 | + var calcUntreated = function (lineCode) { | ||
| 71 | + var size = $('li.line_schedule[data-id=' + lineCode + '] .sys-mailbox .sys-mail-item').length; | ||
| 72 | + $('#badge_untreated_num_' + lineCode).text(size); | ||
| 73 | + }; | ||
| 74 | + | ||
| 75 | + var calcUntreatedAll = function () { | ||
| 76 | + $('#main-tab-content li.line_schedule').each(function () { | ||
| 77 | + calcUntreated($(this).data('id')); | ||
| 78 | + }); | ||
| 79 | + }; | ||
| 80 | + | ||
| 81 | + | ||
| 82 | + //80协议上报 | ||
| 83 | + var report80 = function (msg) { | ||
| 84 | + msg.dateStr = moment(msg.timestamp).format('HH:mm'); | ||
| 85 | + msg.text = gb_common.reqCode80[msg.data.requestCode]; | ||
| 86 | + if (!msg.text) | ||
| 87 | + msg.text = '(未知的请求码 ' + msg.data.requestCode + ')'; | ||
| 88 | + | ||
| 89 | + var $item = $(temps['sys-note-80-temp'](msg)); | ||
| 90 | + findMailBox(msg.data.lineId).prepend($item); | ||
| 91 | + //tts | ||
| 92 | + var ttsMsg = $item.find('.uk-panel-title').text(); | ||
| 93 | + gb_tts.speak(ttsMsg, msg.data.lineId); | ||
| 94 | + | ||
| 95 | + calcUntreated(msg.data.lineId); | ||
| 96 | + }; | ||
| 97 | + | ||
| 98 | + var safeDriv = function (msg) { | ||
| 99 | + gb_safe_driv.pop(msg.t); | ||
| 100 | + }; | ||
| 101 | + | ||
| 102 | + /** | ||
| 103 | + * 自动误点调整 | ||
| 104 | + * @param msg | ||
| 105 | + */ | ||
| 106 | + var autoWdtz = function (msg) { | ||
| 107 | + var schId = msg.id; | ||
| 108 | + var minute = msg.minute; | ||
| 109 | + var lineCode = msg.lineCode; | ||
| 110 | + gb_schedule_table.showLateBadge(lineCode, schId, minute); | ||
| 111 | + if(msg['cancelId']){ | ||
| 112 | + gb_schedule_table.cancelLateBadge(lineCode, msg['cancelId']); | ||
| 113 | + } | ||
| 114 | + }; | ||
| 115 | + | ||
| 116 | + var waitRemoves = []; | ||
| 117 | + //车辆发出 | ||
| 118 | + var faChe = function (msg) { | ||
| 119 | + gb_schedule_table.updateSchedule(msg.t); | ||
| 120 | + msg.domId = 'fache_' + msg.t.id + '_' + parseInt(Math.random() * 10000); | ||
| 121 | + | ||
| 122 | + var $item = $(temps['sys-note-42-temp'](msg)); | ||
| 123 | + findMailBox(msg.t.xlBm).prepend($item); | ||
| 124 | + waitRemoves.push({ | ||
| 125 | + t: currentSecond(), | ||
| 126 | + dom: msg.domId | ||
| 127 | + }); | ||
| 128 | + | ||
| 129 | + //tts | ||
| 130 | + var ttsMsg = $item.find('.title').text(); | ||
| 131 | + gb_tts.speak(ttsMsg, msg.t.xlBm); | ||
| 132 | + gb_schedule_table.calc_yfwf_num(msg.t.xlBm); | ||
| 133 | + | ||
| 134 | + calcUntreated(msg.t.xlBm); | ||
| 135 | + }; | ||
| 136 | + | ||
| 137 | + //到达终点 | ||
| 138 | + var zhongDian = function (msg) { | ||
| 139 | + gb_schedule_table.updateSchedule(msg.t); | ||
| 140 | + gb_schedule_table.updateSchedule(msg.nt); | ||
| 141 | + msg.domId = 'zhongDian_' + msg.t.id + '_' + parseInt(Math.random() * 10000); | ||
| 142 | + | ||
| 143 | + var $item = $(temps['sys-note-42_1-temp'](msg)); | ||
| 144 | + findMailBox(msg.t.xlBm).prepend($item); | ||
| 145 | + waitRemoves.push({ | ||
| 146 | + t: currentSecond(), | ||
| 147 | + dom: msg.domId | ||
| 148 | + }); | ||
| 149 | + //tts | ||
| 150 | + var ttsMsg = $item.find('.title').text(); | ||
| 151 | + gb_tts.speak(ttsMsg, msg.t.xlBm); | ||
| 152 | + | ||
| 153 | + calcUntreated(msg.t.xlBm); | ||
| 154 | + //更新路牌公里统计面板 | ||
| 155 | + gb_schedule_table.showLpMileageTipBySch(msg.t); | ||
| 156 | + }; | ||
| 157 | + | ||
| 158 | + //服务器通知刷新班次 | ||
| 159 | + var refreshSch = function (msg) { | ||
| 160 | + gb_schedule_table.updateSchedule(msg.ts); | ||
| 161 | + /*//重新计算应发未发 | ||
| 162 | + var idx={}; | ||
| 163 | + $.each(msg.ts, function(i, t){ | ||
| 164 | + if(idx[t.xlBm]) | ||
| 165 | + return true; | ||
| 166 | + gb_schedule_table.calc_yfwf_num(t.xlBm); | ||
| 167 | + idx[t.xlBm]=1; | ||
| 168 | + });*/ | ||
| 169 | + }; | ||
| 170 | + | ||
| 171 | + //80消息确认 | ||
| 172 | + var d80Confirm = function (msg) { | ||
| 173 | + $('.sys-mailbox .sys-note-80[data-id=' + msg.id + ']').remove(); | ||
| 174 | + //重新计算未读消息 | ||
| 175 | + calcUntreated(msg.lineId); | ||
| 176 | + //重新计算应发未发 | ||
| 177 | + gb_schedule_table.calc_yfwf_num(msg.lineId); | ||
| 178 | + }; | ||
| 179 | + | ||
| 180 | + //指令状态改变 | ||
| 181 | + var directiveStatus = function (msg) { | ||
| 182 | + gb_schedule_table.updateSchedule(msg.t); | ||
| 183 | + }; | ||
| 184 | + | ||
| 185 | + //班次信号状态 | ||
| 186 | + var signalState = function (msg) { | ||
| 187 | + gb_signal_state.put(msg.data); | ||
| 188 | + }; | ||
| 189 | + | ||
| 190 | + var carErrorStop = function (msg){ | ||
| 191 | + gb_carerrorstop.pop(msg.data); | ||
| 192 | + }; | ||
| 193 | + | ||
| 194 | + var msgHandle = { | ||
| 195 | + report80: report80, | ||
| 196 | + faChe: faChe, | ||
| 197 | + zhongDian: zhongDian, | ||
| 198 | + refreshSch: refreshSch, | ||
| 199 | + d80Confirm: d80Confirm, | ||
| 200 | + directive: directiveStatus, | ||
| 201 | + signal_state: signalState, | ||
| 202 | + deviceOffline: deviceOffline, | ||
| 203 | + safeDriv: safeDriv, | ||
| 204 | + auto_wdtz: autoWdtz, | ||
| 205 | + carErrorStop: carErrorStop | ||
| 206 | + }; | ||
| 207 | + | ||
| 208 | + function currentSecond() { | ||
| 209 | + return Date.parse(new Date()) / 1000; | ||
| 210 | + } | ||
| 211 | + | ||
| 212 | + var mailBoxs = {}; | ||
| 213 | + | ||
| 214 | + function findMailBox(lineCode) { | ||
| 215 | + if (mailBoxs[lineCode]) | ||
| 216 | + return mailBoxs[lineCode]; | ||
| 217 | + | ||
| 218 | + var mbox = $('li.line_schedule[data-id=' + lineCode + ']').find('div.sys-mailbox'); | ||
| 219 | + mailBoxs[lineCode] = mbox; | ||
| 220 | + return mbox; | ||
| 221 | + } | ||
| 222 | + | ||
| 223 | + | ||
| 224 | + //42确定 | ||
| 225 | + $(document).on('click', '.sys-mailbox .sys-note-42 .uk-button-primary', function (e) { | ||
| 226 | + e.stopPropagation(); | ||
| 227 | + $(this).parents('.sys-note-42').remove(); | ||
| 228 | + var size = $(this).parents('.sys-mailbox').find('.sys-mail-item').length | ||
| 229 | + , lineCode = $(this).data('line'); | ||
| 230 | + | ||
| 231 | + $('#badge_untreated_num_' + lineCode).text(size); | ||
| 232 | + }); | ||
| 233 | + | ||
| 234 | + //42消息点击 | ||
| 235 | + $(document).on('click', '.sys-mailbox .sys-note-42', function () { | ||
| 236 | + var lineCode = $(this).parents('li.line_schedule').data('id') | ||
| 237 | + , id = $(this).data('id'); | ||
| 238 | + var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 239 | + var dl = gb_schedule_table.scroToDl(sch); | ||
| 240 | + //高亮 | ||
| 241 | + gb_schedule_table.reset_drag_active_all(dl); | ||
| 242 | + dl.addClass('relevance-active intimity').find('dd:eq(5)').trigger('click'); | ||
| 243 | + }); | ||
| 244 | + | ||
| 245 | + //80消息点击 | ||
| 246 | + $(document).on('click', '.sys-mailbox .sys-note-80', function () { | ||
| 247 | + var lineCode = $(this).parents('li.line_schedule').data('id') | ||
| 248 | + , id = $(this).data('schid'); | ||
| 249 | + var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 250 | + var dl = gb_schedule_table.scroToDl(sch); | ||
| 251 | + //高亮 | ||
| 252 | + gb_schedule_table.reset_drag_active_all(dl); | ||
| 253 | + dl.addClass('relevance-active intimity').find('dd:eq(5)').trigger('click'); | ||
| 254 | + }); | ||
| 255 | + | ||
| 256 | + //80同意 | ||
| 257 | + $(document).on('click', '.sys-mailbox .sys-note-80 .uk-button-primary', function (e) { | ||
| 258 | + e.stopPropagation(); | ||
| 259 | + $(this).attr('disabled', 'disabled'); | ||
| 260 | + var panel = $(this).parents('.sys-note-80') | ||
| 261 | + , id = panel.data('id'); | ||
| 262 | + | ||
| 263 | + reply80({id: id, reply: 0}); | ||
| 264 | + return false; | ||
| 265 | + }); | ||
| 266 | + | ||
| 267 | + //80不同意 | ||
| 268 | + $(document).on('click', '.sys-mailbox .sys-note-80 .uk-button.reject', function (e) { | ||
| 269 | + e.stopPropagation(); | ||
| 270 | + $(this).attr('disabled', 'disabled'); | ||
| 271 | + var panel = $(this).parents('.sys-note-80') | ||
| 272 | + , id = panel.data('id'); | ||
| 273 | + | ||
| 274 | + reply80({id: id, reply: -1}); | ||
| 275 | + return false; | ||
| 276 | + }); | ||
| 277 | + | ||
| 278 | + var reply80 = function (data, cb) { | ||
| 279 | + gb_common.$post('/directive/reply80', data, function (rs) { | ||
| 280 | + if (rs.msg) | ||
| 281 | + notify_succ(rs.msg); | ||
| 282 | + cb && cb(); | ||
| 283 | + }); | ||
| 284 | + }; | ||
| 285 | + | ||
| 286 | + | ||
| 287 | + //定时到离站信使清理掉 | ||
| 288 | + !function () { | ||
| 289 | + var f = arguments.callee, | ||
| 290 | + ct = Date.parse(new Date()) / 1000, | ||
| 291 | + item, elem; | ||
| 292 | + try { | ||
| 293 | + for (var i = 0; i < 1000; i++) { | ||
| 294 | + if (waitRemoves.length == 0) | ||
| 295 | + break; | ||
| 296 | + item = waitRemoves[0]; | ||
| 297 | + if (ct - item.t >= 30) { | ||
| 298 | + waitRemoves.shift(); | ||
| 299 | + elem = $('#' + item.dom); | ||
| 300 | + if (elem) | ||
| 301 | + elem.remove(); | ||
| 302 | + } | ||
| 303 | + } | ||
| 304 | + } catch (e) { | ||
| 305 | + console.log(e); | ||
| 306 | + } | ||
| 307 | + | ||
| 308 | + //计算未读消息 | ||
| 309 | + calcUntreatedAll(); | ||
| 310 | + setTimeout(f, 5000); | ||
| 311 | + }(); | ||
| 312 | + | ||
| 313 | + /** | ||
| 314 | + * 设备掉线 | ||
| 315 | + * @param msg | ||
| 316 | + */ | ||
| 317 | + function deviceOffline(msg) { | ||
| 318 | + gb_data_gps.deviceOffline(msg.gps); | ||
| 319 | + } | ||
| 320 | + | ||
| 321 | + /** | ||
| 322 | + * 信号撤销 | ||
| 323 | + */ | ||
| 324 | + $(document).on('click','.sys-note-42 .cancel_link', function () { | ||
| 325 | + var id = $(this).data('id'), | ||
| 326 | + lineCode = $(this).data('line'); | ||
| 327 | + | ||
| 328 | + var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 329 | + if(!sch) | ||
| 330 | + return; | ||
| 331 | + | ||
| 332 | + var confirmBtn = $(this).parent().find('.uk-button-primary'); | ||
| 333 | + var type = $(this).data('type'); | ||
| 334 | + var fun = type==1?gb_schedule_context_menu.cxzx:gb_schedule_context_menu.cxsf; | ||
| 335 | + | ||
| 336 | + fun(sch, function () { | ||
| 337 | + confirmBtn.trigger('click'); | ||
| 338 | + }); | ||
| 339 | + }); | ||
| 340 | + | ||
| 341 | + /** | ||
| 342 | + * 到站信号修改 | ||
| 343 | + */ | ||
| 344 | + $(document).on('click', '.sys-note-42 .edit_link', function () { | ||
| 345 | + var id = $(this).data('id'), | ||
| 346 | + lineCode = $(this).data('line'); | ||
| 347 | + | ||
| 348 | + var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 349 | + if(!sch) | ||
| 350 | + return; | ||
| 351 | + | ||
| 352 | + var nextSch = gb_schedule_table.getNextSch(sch); | ||
| 353 | + gb_schedule_context_menu.dftz(nextSch); | ||
| 354 | + }); | ||
| 355 | + | ||
| 356 | + /** | ||
| 357 | + * 信使 sys-note-80 编辑 | ||
| 358 | + */ | ||
| 359 | + $(document).on('click', '.sys-note-80 .edit_link', function () { | ||
| 360 | + var id = $(this).data('id'), | ||
| 361 | + lineCode = $(this).data('line'); | ||
| 362 | + | ||
| 363 | + var sch = gb_schedule_table.findScheduleByLine(lineCode)[id]; | ||
| 364 | + if(!sch) | ||
| 365 | + return; | ||
| 366 | + | ||
| 367 | + gb_schedule_context_menu.fcxxwt(sch); | ||
| 368 | + }); | ||
| 369 | + | ||
| 370 | + return { | ||
| 371 | + sock: function () { | ||
| 372 | + return schSock; | ||
| 373 | + } | ||
| 374 | + }; | ||
| 375 | +})(); |
src/main/resources/static/real_control_v2/main.html
| @@ -232,19 +232,30 @@ | @@ -232,19 +232,30 @@ | ||
| 232 | <script src="/real_control_v2/js/modal_extend.js" merge="custom_js"></script> | 232 | <script src="/real_control_v2/js/modal_extend.js" merge="custom_js"></script> |
| 233 | 233 | ||
| 234 | <!-- #### 安全驾驶 start ### --> | 234 | <!-- #### 安全驾驶 start ### --> |
| 235 | -<div class="safe_driv_pop_wrap"></div> | ||
| 236 | -<script id="safe_driv_item-temp" type="text/html"> | ||
| 237 | - <div class="safe_driv_pop uk-animation-slide-bottom" data-nbbm="{{clzbh}}" data-type="{{yczltype}}" | ||
| 238 | - data-title="{{clzbh}} {{timeStr}} {{ycztText}}" data-url="{{url}}"> | 235 | +<div class="multi_plat_msg_pop_wrap" ></div> |
| 236 | +<script id="sd_plat_msg_template" type="text/html"> | ||
| 237 | + <div class="multi_plat_msg_pop uk-animation-slide-bottom" data-type="{{type}}" data-nbbm="{{clzbh}}" data-type="{{yczltype}}" data-title="{{clzbh}} {{timeStr}} {{ycztText}}" data-url="{{url}}" data-ts="{{ts}}"> | ||
| 239 | <div> | 238 | <div> |
| 240 | <span class="title">异常 {{clzbh}}</span> | 239 | <span class="title">异常 {{clzbh}}</span> |
| 240 | + <br/> | ||
| 241 | <span class="text"> {{timeStr}} 出现违规驾驶({{ycztText}})</span> | 241 | <span class="text"> {{timeStr}} 出现违规驾驶({{ycztText}})</span> |
| 242 | <span class="desc">--安全驾驶监管平台</span> | 242 | <span class="desc">--安全驾驶监管平台</span> |
| 243 | </div> | 243 | </div> |
| 244 | </div> | 244 | </div> |
| 245 | </script> | 245 | </script> |
| 246 | +<script id="ces_plat_msg_template" type="text/html"> | ||
| 247 | + <div class="multi_plat_msg_pop uk-animation-slide-bottom" style="background-color: #00ccff;" data-type="{{type}}" data-zbh="{{nbbm}}" data-start="{{startTimestamp}}" data-end="{{endTimestamp}}"> | ||
| 248 | + <div> | ||
| 249 | + <span class="title">车辆异常停车</span> | ||
| 250 | + <br/> | ||
| 251 | + <span class="text"> {{line}} {{nbbm}} 在 {{address}} 异常停车</span> | ||
| 252 | + <span class="desc">--企业信息化运行监控中心</span> | ||
| 253 | + </div> | ||
| 254 | + </div> | ||
| 255 | +</script> | ||
| 246 | 256 | ||
| 247 | <script src="/real_control_v2/js/safe_driv/safeDriv.js" merge="custom_js"></script> | 257 | <script src="/real_control_v2/js/safe_driv/safeDriv.js" merge="custom_js"></script> |
| 258 | +<script src="/real_control_v2/js/platform/carErrorStop.js" merge="custom_js"></script> | ||
| 248 | <!-- #### 安全驾驶 end ### --> | 259 | <!-- #### 安全驾驶 end ### --> |
| 249 | 260 | ||
| 250 | <!-- 打电话 --> | 261 | <!-- 打电话 --> |