Commit 92391cdecb0091e49f3be2533832195f94ccb15a
Merge branch 'minhang' of http://222.66.0.204:8090//panzhaov5/bsth_control into minhang
Showing
26 changed files
with
355 additions
and
168 deletions
src/main/java/com/bsth/common/Constants.java
| @@ -29,7 +29,7 @@ public class Constants { | @@ -29,7 +29,7 @@ public class Constants { | ||
| 29 | //public static final String XD_TEMPS = "/pages/control/line/temps/**"; | 29 | //public static final String XD_TEMPS = "/pages/control/line/temps/**"; |
| 30 | 30 | ||
| 31 | //车载网关上行接口 | 31 | //车载网关上行接口 |
| 32 | - public static final String UPSTREAM_URL = "/control/upstream/"; | 32 | + public static final String UPSTREAM_URL = "/control/upstream"; |
| 33 | 33 | ||
| 34 | public static final String SESSION_USERNAME = "sessionUserName"; | 34 | public static final String SESSION_USERNAME = "sessionUserName"; |
| 35 | public static final String COMPANY_AUTHORITYS = "cmyAuths"; | 35 | public static final String COMPANY_AUTHORITYS = "cmyAuths"; |
src/main/java/com/bsth/data/gpsdata/arrival/GeoCacheData.java
| @@ -242,7 +242,11 @@ public class GeoCacheData { | @@ -242,7 +242,11 @@ public class GeoCacheData { | ||
| 242 | List<Map<String, Object>> speedMap = jdbcTemplate.queryForList(sql); | 242 | List<Map<String, Object>> speedMap = jdbcTemplate.queryForList(sql); |
| 243 | Map<String, Double> speedTempMap = new HashMap<>(); | 243 | Map<String, Double> speedTempMap = new HashMap<>(); |
| 244 | for (Map<String, Object> tMap : speedMap) { | 244 | for (Map<String, Object> tMap : speedMap) { |
| 245 | - speedTempMap.put(tMap.get("LINE_CODE").toString(), Double.parseDouble(tMap.get("SPEEDING").toString())); | 245 | + try { |
| 246 | + speedTempMap.put(tMap.get("LINE_CODE").toString(), Double.parseDouble(tMap.get("SPEEDING").toString())); | ||
| 247 | + } catch (NumberFormatException e) { | ||
| 248 | + logger.error("speeding is null..."); | ||
| 249 | + } | ||
| 246 | } | 250 | } |
| 247 | speedLimitMap = speedTempMap; | 251 | speedLimitMap = speedTempMap; |
| 248 | } | 252 | } |
src/main/java/com/bsth/data/gpsdata/arrival/handlers/InOutStationSignalHandle.java
| @@ -135,7 +135,7 @@ public class InOutStationSignalHandle extends SignalHandle{ | @@ -135,7 +135,7 @@ public class InOutStationSignalHandle extends SignalHandle{ | ||
| 135 | } | 135 | } |
| 136 | else if(sch.getBcType().equals("out")){ | 136 | else if(sch.getBcType().equals("out")){ |
| 137 | ScheduleRealInfo next = dayOfSchedule.nextSame(sch); | 137 | ScheduleRealInfo next = dayOfSchedule.nextSame(sch); |
| 138 | - if(prev.getStopNo().equals(next.getQdzCode())){ | 138 | + if(next != null && prev.getStopNo().equals(next.getQdzCode())){ |
| 139 | //发下一个班次 | 139 | //发下一个班次 |
| 140 | dayOfSchedule.addExecPlan(next); | 140 | dayOfSchedule.addExecPlan(next); |
| 141 | outStation(gps, prev); | 141 | outStation(gps, prev); |
src/main/java/com/bsth/entity/oil/Ylxxb.java
| @@ -35,11 +35,11 @@ public class Ylxxb { | @@ -35,11 +35,11 @@ public class Ylxxb { | ||
| 35 | private Date xgrq; | 35 | private Date xgrq; |
| 36 | private String xgr; | 36 | private String xgr; |
| 37 | private String fromgsdm; | 37 | private String fromgsdm; |
| 38 | - private int nylx; | 38 | + private Integer nylx; |
| 39 | @Transient | 39 | @Transient |
| 40 | private String ldgh; | 40 | private String ldgh; |
| 41 | //0为接口数据,1为手工输入 | 41 | //0为接口数据,1为手工输入 |
| 42 | - private int jylx=0; | 42 | + private Integer jylx=0; |
| 43 | @Transient | 43 | @Transient |
| 44 | private String gsname; | 44 | private String gsname; |
| 45 | @Transient | 45 | @Transient |
src/main/java/com/bsth/repository/oil/YlxxbRepository.java
| @@ -27,4 +27,12 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{ | @@ -27,4 +27,12 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{ | ||
| 27 | @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?1)=to_days(yyrq) and nbbm =?2 and jylx=1",nativeQuery=true) | 27 | @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?1)=to_days(yyrq) and nbbm =?2 and jylx=1",nativeQuery=true) |
| 28 | List<Ylxxb> obtainYlxx2(String rq,String nbbm); | 28 | List<Ylxxb> obtainYlxx2(String rq,String nbbm); |
| 29 | 29 | ||
| 30 | + @Transactional | ||
| 31 | + @Modifying | ||
| 32 | + @Query(value="select * from bsth_c_ylxxb s where s.nbbm = ?1 and " | ||
| 33 | + + "to_days(s.yyrq) = to_days(?2)",nativeQuery=true) | ||
| 34 | + List<Ylxxb> queryListYlxxb(String clZbh,String date); | ||
| 35 | + | ||
| 36 | + | ||
| 37 | + | ||
| 30 | } | 38 | } |
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
| @@ -39,12 +39,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | @@ -39,12 +39,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | ||
| 39 | + " s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 group by clZbh,jGh,jName") | 39 | + " s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 group by clZbh,jGh,jName") |
| 40 | List<Map<String, Object>> dailyInfo(String line,String date); | 40 | List<Map<String, Object>> dailyInfo(String line,String date); |
| 41 | 41 | ||
| 42 | - @Query(value="select t.car_code,d.sender,d.txt_content,d.timestamp,0 as xlbm from (" | ||
| 43 | - + " select equipment_code,car_code from bsth_c_cars where id in(" | 42 | + @Query(value="select t.inside_code,d.sender,d.txt_content,d.timestamp,0 as xlbm from (" |
| 43 | + + " select equipment_code,inside_code from bsth_c_cars where id in(" | ||
| 44 | + " select cl from bsth_c_s_ccinfo where xl in ( " | 44 | + " select cl from bsth_c_s_ccinfo where xl in ( " |
| 45 | + " select id from bsth_c_line where line_code=?1 ))) t" | 45 | + " select id from bsth_c_line where line_code=?1 ))) t" |
| 46 | + " left join bsth_v_directive_60 d on t.equipment_code=d.device_id " | 46 | + " left join bsth_v_directive_60 d on t.equipment_code=d.device_id " |
| 47 | - + " where d.timestamp >=?2 and d.timestamp <=?3 and t.car_code like %?4% ",nativeQuery=true) | 47 | + + " where d.timestamp >=?2 and d.timestamp <=?3 and t.inside_code like %?4% ",nativeQuery=true) |
| 48 | List<Object[]> historyMessage(String line,long d,long t,String code); | 48 | List<Object[]> historyMessage(String line,long d,long t,String code); |
| 49 | 49 | ||
| 50 | @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs " | 50 | @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs " |
| @@ -74,7 +74,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | @@ -74,7 +74,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | ||
| 74 | @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0") | 74 | @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0") |
| 75 | int findLjbc(String jName,String clZbh,String lpName); | 75 | int findLjbc(String jName,String clZbh,String lpName); |
| 76 | 76 | ||
| 77 | - @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T'),c.inside_code FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code = ?3",nativeQuery=true) | 77 | + @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T'),c.inside_code FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code like %?3%",nativeQuery=true) |
| 78 | List<Object[]> account(String line,String date,String code); | 78 | List<Object[]> account(String line,String date,String code); |
| 79 | 79 | ||
| 80 | @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') " | 80 | @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') " |
src/main/java/com/bsth/security/filter/LoginInterceptor.java
| @@ -8,10 +8,7 @@ import com.bsth.util.RequestUtils; | @@ -8,10 +8,7 @@ import com.bsth.util.RequestUtils; | ||
| 8 | import org.springframework.security.core.Authentication; | 8 | import org.springframework.security.core.Authentication; |
| 9 | import org.springframework.security.core.context.SecurityContextHolder; | 9 | import org.springframework.security.core.context.SecurityContextHolder; |
| 10 | 10 | ||
| 11 | -import javax.servlet.FilterChain; | ||
| 12 | -import javax.servlet.ServletException; | ||
| 13 | -import javax.servlet.ServletRequest; | ||
| 14 | -import javax.servlet.ServletResponse; | 11 | +import javax.servlet.*; |
| 15 | import javax.servlet.http.HttpServletRequest; | 12 | import javax.servlet.http.HttpServletRequest; |
| 16 | import javax.servlet.http.HttpServletResponse; | 13 | import javax.servlet.http.HttpServletResponse; |
| 17 | import java.io.IOException; | 14 | import java.io.IOException; |
| @@ -26,7 +23,7 @@ import java.util.Map; | @@ -26,7 +23,7 @@ import java.util.Map; | ||
| 26 | * @date 2016年3月24日 上午11:49:20 | 23 | * @date 2016年3月24日 上午11:49:20 |
| 27 | * | 24 | * |
| 28 | */ | 25 | */ |
| 29 | -public class LoginInterceptor extends BaseFilter{ | 26 | +public class LoginInterceptor extends BaseFilter { |
| 30 | 27 | ||
| 31 | @Override | 28 | @Override |
| 32 | public void destroy() { | 29 | public void destroy() { |
| @@ -34,16 +31,19 @@ public class LoginInterceptor extends BaseFilter{ | @@ -34,16 +31,19 @@ public class LoginInterceptor extends BaseFilter{ | ||
| 34 | } | 31 | } |
| 35 | 32 | ||
| 36 | @Override | 33 | @Override |
| 37 | - public void doFilter(ServletRequest arg0, ServletResponse arg1, | ||
| 38 | - FilterChain arg2) throws IOException, ServletException { | ||
| 39 | - | 34 | + public void init(FilterConfig filterConfig) throws ServletException { |
| 35 | + | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + @Override | ||
| 39 | + public void doFilter(HttpServletRequest request, | ||
| 40 | + HttpServletResponse response, FilterChain chain) | ||
| 41 | + throws IOException, ServletException { | ||
| 40 | Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); | 42 | Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); |
| 41 | - | 43 | + |
| 42 | if(null == authentication){ | 44 | if(null == authentication){ |
| 43 | //没有登录 | 45 | //没有登录 |
| 44 | - HttpServletRequest request = (HttpServletRequest)arg0; | ||
| 45 | - HttpServletResponse response = ((HttpServletResponse)arg1); | ||
| 46 | - | 46 | + |
| 47 | if(RequestUtils.isAjaxRequest(request)){ | 47 | if(RequestUtils.isAjaxRequest(request)){ |
| 48 | Map<String, Object> map = new HashMap<>(); | 48 | Map<String, Object> map = new HashMap<>(); |
| 49 | map.put("status", | 49 | map.put("status", |
| @@ -52,10 +52,11 @@ public class LoginInterceptor extends BaseFilter{ | @@ -52,10 +52,11 @@ public class LoginInterceptor extends BaseFilter{ | ||
| 52 | } | 52 | } |
| 53 | else | 53 | else |
| 54 | response.sendRedirect(Constants.LOGIN_PAGE); | 54 | response.sendRedirect(Constants.LOGIN_PAGE); |
| 55 | - | 55 | + |
| 56 | return; | 56 | return; |
| 57 | } | 57 | } |
| 58 | - | ||
| 59 | - arg2.doFilter(arg0, arg1); | 58 | + |
| 59 | + chain.doFilter(request, response); | ||
| 60 | } | 60 | } |
| 61 | + | ||
| 61 | } | 62 | } |
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
| @@ -15,6 +15,7 @@ import com.bsth.data.schedule.ScheduleComparator; | @@ -15,6 +15,7 @@ import com.bsth.data.schedule.ScheduleComparator; | ||
| 15 | import com.bsth.entity.Cars; | 15 | import com.bsth.entity.Cars; |
| 16 | import com.bsth.entity.Line; | 16 | import com.bsth.entity.Line; |
| 17 | import com.bsth.entity.Personnel; | 17 | import com.bsth.entity.Personnel; |
| 18 | +import com.bsth.entity.oil.Ylxxb; | ||
| 18 | import com.bsth.entity.realcontrol.ChildTaskPlan; | 19 | import com.bsth.entity.realcontrol.ChildTaskPlan; |
| 19 | import com.bsth.entity.realcontrol.LineConfig; | 20 | import com.bsth.entity.realcontrol.LineConfig; |
| 20 | import com.bsth.entity.realcontrol.ScheduleRealInfo; | 21 | import com.bsth.entity.realcontrol.ScheduleRealInfo; |
| @@ -25,6 +26,7 @@ import com.bsth.entity.schedule.GuideboardInfo; | @@ -25,6 +26,7 @@ import com.bsth.entity.schedule.GuideboardInfo; | ||
| 25 | import com.bsth.entity.sys.DutyEmployee; | 26 | import com.bsth.entity.sys.DutyEmployee; |
| 26 | import com.bsth.entity.sys.SysUser; | 27 | import com.bsth.entity.sys.SysUser; |
| 27 | import com.bsth.repository.LineRepository; | 28 | import com.bsth.repository.LineRepository; |
| 29 | +import com.bsth.repository.oil.YlxxbRepository; | ||
| 28 | import com.bsth.repository.realcontrol.ChildTaskPlanRepository; | 30 | import com.bsth.repository.realcontrol.ChildTaskPlanRepository; |
| 29 | import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; | 31 | import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; |
| 30 | import com.bsth.repository.realcontrol.SvgAttributeRepository; | 32 | import com.bsth.repository.realcontrol.SvgAttributeRepository; |
| @@ -99,6 +101,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -99,6 +101,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 99 | 101 | ||
| 100 | @Autowired | 102 | @Autowired |
| 101 | DutyEmployeeService dutyEmployeeService; | 103 | DutyEmployeeService dutyEmployeeService; |
| 104 | + | ||
| 105 | + @Autowired | ||
| 106 | + YlxxbRepository ylxxbRepository; | ||
| 102 | 107 | ||
| 103 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 108 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 104 | 109 | ||
| @@ -502,6 +507,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -502,6 +507,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 502 | 507 | ||
| 503 | map = new HashMap<String, Object>(); | 508 | map = new HashMap<String, Object>(); |
| 504 | try { | 509 | try { |
| 510 | + scheduleRealInfo.setjName(scheduleRealInfo.getjGh()+scheduleRealInfo.getjName()); | ||
| 511 | + scheduleRealInfo.setsName(scheduleRealInfo.getsGh()+scheduleRealInfo.getsName()); | ||
| 505 | map = rru.getMapValue(scheduleRealInfo); | 512 | map = rru.getMapValue(scheduleRealInfo); |
| 506 | String zdsj = scheduleRealInfo.getZdsj(); | 513 | String zdsj = scheduleRealInfo.getZdsj(); |
| 507 | String zdsjActual = scheduleRealInfo.getZdsjActual(); | 514 | String zdsjActual = scheduleRealInfo.getZdsjActual(); |
| @@ -2433,6 +2440,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -2433,6 +2440,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 2433 | try { | 2440 | try { |
| 2434 | scheduleRealInfo.setBcs(xyz); | 2441 | scheduleRealInfo.setBcs(xyz); |
| 2435 | xyz++; | 2442 | xyz++; |
| 2443 | + Set<ChildTaskPlan> cs = scheduleRealInfo.getcTasks(); | ||
| 2444 | + Double sjlc=0.0; | ||
| 2445 | + if(!cs.isEmpty()){ | ||
| 2446 | + Iterator<ChildTaskPlan> it = cs.iterator(); | ||
| 2447 | + while(it.hasNext()){ | ||
| 2448 | + ChildTaskPlan c = it.next(); | ||
| 2449 | + if(!c.isDestroy()){ | ||
| 2450 | + sjlc += c.getMileage()==null?0:c.getMileage(); | ||
| 2451 | + } | ||
| 2452 | + | ||
| 2453 | + } | ||
| 2454 | + }else{ | ||
| 2455 | + if(scheduleRealInfo.getStatus() != -1){ | ||
| 2456 | + sjlc =scheduleRealInfo.getJhlc(); | ||
| 2457 | + } | ||
| 2458 | + } | ||
| 2459 | + scheduleRealInfo.setjName(scheduleRealInfo.getjGh()+scheduleRealInfo.getjName()); | ||
| 2460 | + scheduleRealInfo.setsName(scheduleRealInfo.getsGh()+scheduleRealInfo.getsName()); | ||
| 2461 | + scheduleRealInfo.setSjlc(format.format(sjlc)); | ||
| 2436 | map = rru.getMapValue(scheduleRealInfo); | 2462 | map = rru.getMapValue(scheduleRealInfo); |
| 2437 | String zdsj = scheduleRealInfo.getZdsj(); | 2463 | String zdsj = scheduleRealInfo.getZdsj(); |
| 2438 | String zdsjActual = scheduleRealInfo.getZdsjActual(); | 2464 | String zdsjActual = scheduleRealInfo.getZdsjActual(); |
| @@ -2457,8 +2483,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -2457,8 +2483,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 2457 | } | 2483 | } |
| 2458 | } | 2484 | } |
| 2459 | 2485 | ||
| 2486 | + | ||
| 2487 | + List<Ylxxb> listYlxxb=ylxxbRepository.queryListYlxxb( clZbh, date); | ||
| 2488 | + Double jzl=0.0; | ||
| 2489 | + for(int t=0;t<listYlxxb.size();t++){ | ||
| 2490 | + Ylxxb y=listYlxxb.get(t); | ||
| 2491 | + jzl += y.getJzl(); | ||
| 2492 | + } | ||
| 2493 | + | ||
| 2460 | //计算里程和班次数,并放入Map里 | 2494 | //计算里程和班次数,并放入Map里 |
| 2461 | map = new HashMap<String, Object>(); | 2495 | map = new HashMap<String, Object>(); |
| 2496 | + map.put("jzl", jzl); | ||
| 2462 | map.put("jhlc", format.format(jhlc+jcclc)); | 2497 | map.put("jhlc", format.format(jhlc+jcclc)); |
| 2463 | map.put("yygljh", format.format(jhlc)); | 2498 | map.put("yygljh", format.format(jhlc)); |
| 2464 | map.put("ssgl", format.format(remMileage)); | 2499 | map.put("ssgl", format.format(remMileage)); |
| @@ -2632,7 +2667,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -2632,7 +2667,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 2632 | while(it.hasNext()){ | 2667 | while(it.hasNext()){ |
| 2633 | ChildTaskPlan c = it.next(); | 2668 | ChildTaskPlan c = it.next(); |
| 2634 | if(c.getRemarks()!=null && c.getRemarks().length()>0){ | 2669 | if(c.getRemarks()!=null && c.getRemarks().length()>0){ |
| 2635 | - remarks += c.getRemarks(); | 2670 | + if(remarks.indexOf(c.getRemarks())==-1){ |
| 2671 | + remarks += c.getRemarks(); | ||
| 2672 | + } | ||
| 2636 | } | 2673 | } |
| 2637 | 2674 | ||
| 2638 | if(!c.isDestroy()){ | 2675 | if(!c.isDestroy()){ |
| @@ -2664,7 +2701,13 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -2664,7 +2701,13 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 2664 | String xlbm=s.getXlBm(); | 2701 | String xlbm=s.getXlBm(); |
| 2665 | String fcrq=s.getScheduleDateStr(); | 2702 | String fcrq=s.getScheduleDateStr(); |
| 2666 | 2703 | ||
| 2667 | - | 2704 | + List<Ylxxb> listYlxxb=ylxxbRepository.queryListYlxxb( s.getClZbh(), fcrq); |
| 2705 | + Double jzl=0.0; | ||
| 2706 | + for(int t=0;t<listYlxxb.size();t++){ | ||
| 2707 | + Ylxxb y=listYlxxb.get(t); | ||
| 2708 | + jzl += y.getJzl(); | ||
| 2709 | + } | ||
| 2710 | + map.put("jzl", jzl); | ||
| 2668 | map.put("xlName", s.getXlName()); | 2711 | map.put("xlName", s.getXlName()); |
| 2669 | map.put("clZbh", s.getClZbh()); | 2712 | map.put("clZbh", s.getClZbh()); |
| 2670 | map.put("fcsjActual", s.getFcsjActual()); | 2713 | map.put("fcsjActual", s.getFcsjActual()); |
src/main/resources/ms-jdbc.properties
| @@ -4,6 +4,6 @@ | @@ -4,6 +4,6 @@ | ||
| 4 | #ms.mysql.password= 123456 | 4 | #ms.mysql.password= 123456 |
| 5 | 5 | ||
| 6 | ms.mysql.driver= com.mysql.jdbc.Driver | 6 | ms.mysql.driver= com.mysql.jdbc.Driver |
| 7 | -ms.mysql.url= jdbc:mysql://192.168.168.117:3306/ms?useUnicode=true&characterEncoding=utf-8 | 7 | +ms.mysql.url= jdbc:mysql://192.168.168.171:3306/ms?useUnicode=true&characterEncoding=utf-8 |
| 8 | ms.mysql.username= root | 8 | ms.mysql.username= root |
| 9 | -ms.mysql.password= root | ||
| 10 | \ No newline at end of file | 9 | \ No newline at end of file |
| 10 | +ms.mysql.password= root2jsp | ||
| 11 | \ No newline at end of file | 11 | \ No newline at end of file |
src/main/resources/static/pages/forms/mould/waybill_qingpu.xls
No preview for this file type
src/main/resources/static/pages/forms/statement/scheduleDaily.html
| @@ -158,31 +158,31 @@ | @@ -158,31 +158,31 @@ | ||
| 158 | <td colspan="40"> </td> | 158 | <td colspan="40"> </td> |
| 159 | </tr> --> | 159 | </tr> --> |
| 160 | <tr> | 160 | <tr> |
| 161 | - <td colspan="2">班序</td> | 161 | + <td colspan="2">路牌</td> |
| 162 | <td colspan="2">车号</td> | 162 | <td colspan="2">车号</td> |
| 163 | <td>司早</td> | 163 | <td>司早</td> |
| 164 | <td>售早</td> | 164 | <td>售早</td> |
| 165 | <td>司晚</td> | 165 | <td>司晚</td> |
| 166 | <td>售晚</td> | 166 | <td>售晚</td> |
| 167 | - <td colspan="2">班序</td> | 167 | + <td colspan="2">路牌</td> |
| 168 | <td colspan="2">车号</td> | 168 | <td colspan="2">车号</td> |
| 169 | <td>司早</td> | 169 | <td>司早</td> |
| 170 | <td>售早</td> | 170 | <td>售早</td> |
| 171 | <td>司晚</td> | 171 | <td>司晚</td> |
| 172 | <td>售晚</td> | 172 | <td>售晚</td> |
| 173 | - <td colspan="2">班序</td> | 173 | + <td colspan="2">路牌</td> |
| 174 | <td colspan="2">车号</td> | 174 | <td colspan="2">车号</td> |
| 175 | <td>司早</td> | 175 | <td>司早</td> |
| 176 | <td>售早</td> | 176 | <td>售早</td> |
| 177 | <td>司晚</td> | 177 | <td>司晚</td> |
| 178 | <td>售晚</td> | 178 | <td>售晚</td> |
| 179 | - <td colspan="2">班序</td> | 179 | + <td colspan="2">路牌</td> |
| 180 | <td colspan="2">车号</td> | 180 | <td colspan="2">车号</td> |
| 181 | <td>司早</td> | 181 | <td>司早</td> |
| 182 | <td>售早</td> | 182 | <td>售早</td> |
| 183 | <td>司晚</td> | 183 | <td>司晚</td> |
| 184 | <td>售晚</td> | 184 | <td>售晚</td> |
| 185 | - <td colspan="2">班序</td> | 185 | + <td colspan="2">路牌</td> |
| 186 | <td colspan="2">车号</td> | 186 | <td colspan="2">车号</td> |
| 187 | <td>司早</td> | 187 | <td>司早</td> |
| 188 | <td>售早</td> | 188 | <td>售早</td> |
src/main/resources/static/pages/forms/statement/waybill.html
| @@ -307,8 +307,8 @@ | @@ -307,8 +307,8 @@ | ||
| 307 | {{each list as obj i}} | 307 | {{each list as obj i}} |
| 308 | <tr> | 308 | <tr> |
| 309 | <td>{{i+1}}</td> | 309 | <td>{{i+1}}</td> |
| 310 | - <td>{{obj.jName}}</td> | ||
| 311 | - <td>{{obj.sName}}</td> | 310 | + <td>{{obj.jGh}}{{obj.jName}}</td> |
| 311 | + <td>{{obj.sGh}}{{obj.sName}}</td> | ||
| 312 | <td> </td> | 312 | <td> </td> |
| 313 | <td>{{obj.qdzName}}</td> | 313 | <td>{{obj.qdzName}}</td> |
| 314 | <td>{{obj.zdzName}}</td> | 314 | <td>{{obj.zdzName}}</td> |
src/main/resources/static/pages/forms/statement/waybillQp.html
| @@ -252,7 +252,7 @@ | @@ -252,7 +252,7 @@ | ||
| 252 | </tr> | 252 | </tr> |
| 253 | <tr> | 253 | <tr> |
| 254 | <td colspan="2">出场存油 升</td> | 254 | <td colspan="2">出场存油 升</td> |
| 255 | - <td colspan="3">加注油量 升</td> | 255 | + <td colspan="3">加注油量 {{map.jzl}}升</td> |
| 256 | <td colspan="2">进场存油 升</td> | 256 | <td colspan="2">进场存油 升</td> |
| 257 | <td colspan="4">加注机油 升</td> | 257 | <td colspan="4">加注机油 升</td> |
| 258 | <td colspan="5">本日耗油 升</td> | 258 | <td colspan="5">本日耗油 升</td> |
| @@ -298,8 +298,8 @@ | @@ -298,8 +298,8 @@ | ||
| 298 | <tr> | 298 | <tr> |
| 299 | <td>{{i+1}}</td> | 299 | <td>{{i+1}}</td> |
| 300 | <td>{{obj.lpName}}</td> | 300 | <td>{{obj.lpName}}</td> |
| 301 | - <td>{{obj.jName}}</td> | ||
| 302 | - <td>{{obj.sName}}</td> | 301 | + <td>{{obj.jGh}}{{obj.jName}}</td> |
| 302 | + <td>{{obj.sGh}}{{obj.sName}}</td> | ||
| 303 | <td> </td> | 303 | <td> </td> |
| 304 | <td>{{obj.qdzName}}</td> | 304 | <td>{{obj.qdzName}}</td> |
| 305 | <td>{{obj.zdzName}}</td> | 305 | <td>{{obj.zdzName}}</td> |
| @@ -350,8 +350,8 @@ | @@ -350,8 +350,8 @@ | ||
| 350 | <td>{{map.ljgl}}</td> | 350 | <td>{{map.ljgl}}</td> |
| 351 | <td colspan="2">损失班次</td> | 351 | <td colspan="2">损失班次</td> |
| 352 | <td colspan="1">{{map.ssbc}}</td> | 352 | <td colspan="1">{{map.ssbc}}</td> |
| 353 | - <td colspan="3">运送公里</td> | ||
| 354 | - <td colspan="2">{{map.ysgl}}</td> | 353 | + <td colspan="3"></td> |
| 354 | + <td colspan="2"></td> | ||
| 355 | </tr> | 355 | </tr> |
| 356 | <tr> | 356 | <tr> |
| 357 | 357 |
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lj_zrw.html
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_range_turn.html
| @@ -2,14 +2,14 @@ | @@ -2,14 +2,14 @@ | ||
| 2 | <div class="uk-modal-dialog" style="width: 1200px;"> | 2 | <div class="uk-modal-dialog" style="width: 1200px;"> |
| 3 | <a href="" class="uk-modal-close uk-close"></a> | 3 | <a href="" class="uk-modal-close uk-close"></a> |
| 4 | <div class="uk-modal-header"> | 4 | <div class="uk-modal-header"> |
| 5 | - <h2>区间掉头子任务</h2></div> | 5 | + <h2>区间调头子任务</h2></div> |
| 6 | 6 | ||
| 7 | <div style="width: 100%;padding-left: 1%;"> | 7 | <div style="width: 100%;padding-left: 1%;"> |
| 8 | <form class="uk-form uk-form-horizontal"> | 8 | <form class="uk-form uk-form-horizontal"> |
| 9 | <div class="uk-grid"> | 9 | <div class="uk-grid"> |
| 10 | <div class="uk-width-1-4"> | 10 | <div class="uk-width-1-4"> |
| 11 | <div class="uk-form-row" style="margin-top: 20px;"> | 11 | <div class="uk-form-row" style="margin-top: 20px;"> |
| 12 | - <label class="uk-form-label">掉头站点</label> | 12 | + <label class="uk-form-label">调头站点</label> |
| 13 | <div class="uk-form-controls"> | 13 | <div class="uk-form-controls"> |
| 14 | <select id="turnStationSelect"> | 14 | <select id="turnStationSelect"> |
| 15 | <option value="">请选择...</option> | 15 | <option value="">请选择...</option> |
| @@ -19,7 +19,7 @@ | @@ -19,7 +19,7 @@ | ||
| 19 | </div> | 19 | </div> |
| 20 | <div class="uk-width-1-4"> | 20 | <div class="uk-width-1-4"> |
| 21 | <div class="uk-form-row" style="margin-top: 20px;"> | 21 | <div class="uk-form-row" style="margin-top: 20px;"> |
| 22 | - <label class="uk-form-label">掉头原因</label> | 22 | + <label class="uk-form-label">调头原因</label> |
| 23 | <div class="uk-form-controls"> | 23 | <div class="uk-form-controls"> |
| 24 | <select id="turnReason" style="width: calc(100% - 9px);"> | 24 | <select id="turnReason" style="width: calc(100% - 9px);"> |
| 25 | <option value="">请选择...</option> | 25 | <option value="">请选择...</option> |
| @@ -29,7 +29,7 @@ | @@ -29,7 +29,7 @@ | ||
| 29 | </div> | 29 | </div> |
| 30 | <div class="uk-width-2-4" style="padding-left: 28px;"> | 30 | <div class="uk-width-2-4" style="padding-left: 28px;"> |
| 31 | <h6 style="color: #a7a5a5;margin-top: 35px;"><i class="uk-icon-question-circle"> </i> | 31 | <h6 style="color: #a7a5a5;margin-top: 35px;"><i class="uk-icon-question-circle"> </i> |
| 32 | - 如果“掉头站点”在另一个走向不存在,你需要手动选择第二个营运起点</h6> | 32 | + 如果“调头站点”在另一个走向不存在,你需要手动选择第二个营运起点</h6> |
| 33 | </div> | 33 | </div> |
| 34 | </div> | 34 | </div> |
| 35 | </form> | 35 | </form> |
| @@ -343,7 +343,7 @@ | @@ -343,7 +343,7 @@ | ||
| 343 | /** | 343 | /** |
| 344 | * 为班次添加备注 | 344 | * 为班次添加备注 |
| 345 | */ | 345 | */ |
| 346 | - var remarks = '掉头' + $('[name=endDate]', csf).val() + ' 因 ' + $('#turnReason', modal).val() + '在' + $('[name=endStation] option:selected', csf).text() + '掉头'; | 346 | + var remarks = '调头' + $('[name=endDate]', csf).val() + ' 因 ' + $('#turnReason', modal).val() + '在' + $('[name=endStation] option:selected', csf).text() + '调头'; |
| 347 | gb_schedule_table.addRemarks([sch, nextSch], remarks); | 347 | gb_schedule_table.addRemarks([sch, nextSch], remarks); |
| 348 | UIkit.modal(modal).hide(); | 348 | UIkit.modal(modal).hide(); |
| 349 | $('#schedule-lj_zrw-modal .main-schedule-table').trigger('refresh', {sch: sch}); | 349 | $('#schedule-lj_zrw-modal .main-schedule-table').trigger('refresh', {sch: sch}); |
| @@ -368,7 +368,7 @@ | @@ -368,7 +368,7 @@ | ||
| 368 | //submit | 368 | //submit |
| 369 | $('#submitChildTaskBtn', modal).on('click', function () { | 369 | $('#submitChildTaskBtn', modal).on('click', function () { |
| 370 | if ($('#turnReason', modal).val() == '') { | 370 | if ($('#turnReason', modal).val() == '') { |
| 371 | - return notify_err('你必须选择掉头原因!'); | 371 | + return notify_err('你必须选择调头原因!'); |
| 372 | } | 372 | } |
| 373 | 373 | ||
| 374 | $(this).addClass('disabled').attr('disabled', 'disabled'); | 374 | $(this).addClass('disabled').attr('disabled', 'disabled'); |
| @@ -377,7 +377,7 @@ | @@ -377,7 +377,7 @@ | ||
| 377 | fs.formValidation('validate'); | 377 | fs.formValidation('validate'); |
| 378 | }); | 378 | }); |
| 379 | 379 | ||
| 380 | - //掉头站切换 | 380 | + //调头站切换 |
| 381 | $('#turnStationSelect', modal).on('change', function () { | 381 | $('#turnStationSelect', modal).on('change', function () { |
| 382 | turnStation = $(this).val(); | 382 | turnStation = $(this).val(); |
| 383 | turnStationName = $('option:selected', this).text(); | 383 | turnStationName = $('option:selected', this).text(); |
src/main/resources/static/real_control_v2/js/home/line_panel.js
| @@ -122,7 +122,7 @@ var gb_home_line_panel = (function() { | @@ -122,7 +122,7 @@ var gb_home_line_panel = (function() { | ||
| 122 | 122 | ||
| 123 | var $t = function(e) { | 123 | var $t = function(e) { |
| 124 | return $(e).text(); | 124 | return $(e).text(); |
| 125 | - } | 125 | + }; |
| 126 | 126 | ||
| 127 | function groupByLineAndUpDown(list) { | 127 | function groupByLineAndUpDown(list) { |
| 128 | var rs = {}, | 128 | var rs = {}, |
src/main/resources/static/real_control_v2/js/main.js
| @@ -45,8 +45,10 @@ var gb_main_ep = new EventProxy(), | @@ -45,8 +45,10 @@ var gb_main_ep = new EventProxy(), | ||
| 45 | //初始化gps异常判定 | 45 | //初始化gps异常判定 |
| 46 | gb_gps_abnormal.initData(); | 46 | gb_gps_abnormal.initData(); |
| 47 | 47 | ||
| 48 | - //嵌入地图页面 | ||
| 49 | - $('li.map-panel', '#main-tab-content').load('/real_control_v2/mapmonitor/real.html'); | 48 | + setTimeout(function () { |
| 49 | + //嵌入地图页面 | ||
| 50 | + $('li.map-panel', '#main-tab-content').load('/real_control_v2/mapmonitor/real.html'); | ||
| 51 | + }, 1000); | ||
| 50 | //弹出更新说明 | 52 | //弹出更新说明 |
| 51 | //showUpdateDescription(); | 53 | //showUpdateDescription(); |
| 52 | }); | 54 | }); |
src/main/resources/static/real_control_v2/js/signal_state/signal_state.js
| @@ -10,7 +10,7 @@ var gb_signal_state = (function () { | @@ -10,7 +10,7 @@ var gb_signal_state = (function () { | ||
| 10 | }); | 10 | }); |
| 11 | 11 | ||
| 12 | var signal_state_data = {}; | 12 | var signal_state_data = {}; |
| 13 | - var enable = true; | 13 | + var enable = false;//true; |
| 14 | //读取本地状态 | 14 | //读取本地状态 |
| 15 | var locStatus = storage.getItem("signal_state_enable"); | 15 | var locStatus = storage.getItem("signal_state_enable"); |
| 16 | if (locStatus && locStatus=='0') | 16 | if (locStatus && locStatus=='0') |
src/main/resources/static/real_control_v2/mapmonitor/css/real.css
| @@ -28,10 +28,10 @@ input[type=checkbox].disabled{ | @@ -28,10 +28,10 @@ input[type=checkbox].disabled{ | ||
| 28 | overflow: hidden; | 28 | overflow: hidden; |
| 29 | left: auto; | 29 | left: auto; |
| 30 | top: 3px; | 30 | top: 3px; |
| 31 | - box-shadow: none; | ||
| 32 | - border-radius: 5px 0 0 5px; | 31 | + border-radius: 9px 0 0 9px; |
| 33 | border: 1px solid #dedede; | 32 | border: 1px solid #dedede; |
| 34 | border-right: none; | 33 | border-right: none; |
| 34 | + box-shadow: none; | ||
| 35 | } | 35 | } |
| 36 | 36 | ||
| 37 | .map-system-msg.flex-left a:before{ | 37 | .map-system-msg.flex-left a:before{ |
| @@ -119,14 +119,16 @@ input[type=checkbox].disabled{ | @@ -119,14 +119,16 @@ input[type=checkbox].disabled{ | ||
| 119 | .real_right_gps_panel>form{ | 119 | .real_right_gps_panel>form{ |
| 120 | text-align: center; | 120 | text-align: center; |
| 121 | margin-top: 20px; | 121 | margin-top: 20px; |
| 122 | + position: relative; | ||
| 122 | } | 123 | } |
| 123 | 124 | ||
| 124 | -.real_right_gps_panel>form>div.uk-form-icon{ | ||
| 125 | - width: 88%; | 125 | +.real_right_gps_panel>form div.uk-form-icon{ |
| 126 | + width: 100%; | ||
| 126 | } | 127 | } |
| 127 | 128 | ||
| 128 | -.real_right_gps_panel>form>div.uk-form-icon input{ | ||
| 129 | - width: 100%; | 129 | +.real_right_gps_panel>form div.uk-form-icon input{ |
| 130 | + width: calc(100% - 30px); | ||
| 131 | + font-size: 12px; | ||
| 130 | } | 132 | } |
| 131 | 133 | ||
| 132 | .real_right_gps_panel>form>div.uk-form-icon input::-webkit-input-placeholder{ | 134 | .real_right_gps_panel>form>div.uk-form-icon input::-webkit-input-placeholder{ |
| @@ -134,22 +136,12 @@ input[type=checkbox].disabled{ | @@ -134,22 +136,12 @@ input[type=checkbox].disabled{ | ||
| 134 | } | 136 | } |
| 135 | 137 | ||
| 136 | .real_right_gps_panel .gps_tree_list{ | 138 | .real_right_gps_panel .gps_tree_list{ |
| 137 | - height: calc(100% - 80px); | 139 | + height: calc(100% - 70px); |
| 138 | overflow: auto; | 140 | overflow: auto; |
| 139 | - padding: 20px 0 0 32px; | 141 | + padding: 15px 0 0 32px; |
| 140 | } | 142 | } |
| 141 | 143 | ||
| 142 | -/*.real_bottom_panel{ | ||
| 143 | - width: 100%; | ||
| 144 | - background: red; | ||
| 145 | - height: 100px; | ||
| 146 | - position: fixed !important; | ||
| 147 | - top: auto !important; | ||
| 148 | - bottom: 0 !important; | ||
| 149 | - left: 0; | ||
| 150 | - right: 0; | ||
| 151 | -} | ||
| 152 | -*/ | 144 | + |
| 153 | .real_bottom_panel #handle{ | 145 | .real_bottom_panel #handle{ |
| 154 | width: 100%; | 146 | width: 100%; |
| 155 | height: 4px; | 147 | height: 4px; |
| @@ -562,13 +554,47 @@ input[type=checkbox].disabled{ | @@ -562,13 +554,47 @@ input[type=checkbox].disabled{ | ||
| 562 | margin-left: -5px; | 554 | margin-left: -5px; |
| 563 | } | 555 | } |
| 564 | 556 | ||
| 565 | -/* | ||
| 566 | -.pb_log_item>div{ | ||
| 567 | - display: inline-block; | ||
| 568 | -}*/ | 557 | +.gps_tree_abnormal{ |
| 558 | + font-size: 11px; | ||
| 559 | + padding: 0 1px 0 2px; | ||
| 560 | + border-radius: 3px; | ||
| 561 | + margin-left: 2px; | ||
| 562 | +} | ||
| 569 | 563 | ||
| 570 | -/* | ||
| 571 | -.pb_tools_icon i:hover{ | ||
| 572 | - color: #787676; | ||
| 573 | - box-shadow: 1px 0px 5px 0 rgba(0,0,0,0.16), -1px 0px 10px 0 rgba(0,0,0,0.12); | ||
| 574 | -}*/ | 564 | +.gps_tree_abnormal.overspeed{ |
| 565 | + background: #ff3232; | ||
| 566 | + color: white; | ||
| 567 | +} | ||
| 568 | + | ||
| 569 | +.gps_tree_abnormal.outBounds{ | ||
| 570 | + background: #ffff00; | ||
| 571 | + color: #787777; | ||
| 572 | +} | ||
| 573 | + | ||
| 574 | +.gps_tree_abnormal.overspeed:hover{ | ||
| 575 | + background: #e37878; | ||
| 576 | + color: white; | ||
| 577 | +} | ||
| 578 | + | ||
| 579 | +.gps_tree_abnormal.outBounds:hover{ | ||
| 580 | + background:#fdfd00; | ||
| 581 | + color: #595959; | ||
| 582 | +} | ||
| 583 | + | ||
| 584 | +.real_right_gps_panel .ral-gps-autocom .uk-dropdown{ | ||
| 585 | + margin-left: 15px; | ||
| 586 | + width: 240px; | ||
| 587 | + text-align: left; | ||
| 588 | +} | ||
| 589 | + | ||
| 590 | +.uk-autocomplete-results.ral-gps-autocom-results{ | ||
| 591 | + | ||
| 592 | +} | ||
| 593 | + | ||
| 594 | +.uk-autocomplete-results.ral-gps-autocom-results .desc{ | ||
| 595 | + color: #8e8e8e; | ||
| 596 | +} | ||
| 597 | + | ||
| 598 | +.uk-nav-autocomplete>li.uk-active>a .desc{ | ||
| 599 | + color: #fff; | ||
| 600 | +} | ||
| 575 | \ No newline at end of file | 601 | \ No newline at end of file |
src/main/resources/static/real_control_v2/mapmonitor/js/config.js
| @@ -142,7 +142,7 @@ var gb_map_config = (function () { | @@ -142,7 +142,7 @@ var gb_map_config = (function () { | ||
| 142 | //标识角度 | 142 | //标识角度 |
| 143 | function carIcon_angle(val) { | 143 | function carIcon_angle(val) { |
| 144 | defaultConfig.carIcon.angle=this.checked; | 144 | defaultConfig.carIcon.angle=this.checked; |
| 145 | - gb_map_overlay_mge.reDraw(); | 145 | + gb_map_overlay_mge.reDrawGps(); |
| 146 | } | 146 | } |
| 147 | 147 | ||
| 148 | function recursion_get_attr(data, attr) { | 148 | function recursion_get_attr(data, attr) { |
src/main/resources/static/real_control_v2/mapmonitor/js/gps_tree.js
| @@ -7,7 +7,9 @@ var gb_map_gps_tree = (function () { | @@ -7,7 +7,9 @@ var gb_map_gps_tree = (function () { | ||
| 7 | var jstreeChanged = function (e, node, event) { | 7 | var jstreeChanged = function (e, node, event) { |
| 8 | gb_map_overlay_mge.refresh(); | 8 | gb_map_overlay_mge.refresh(); |
| 9 | }; | 9 | }; |
| 10 | - | 10 | + |
| 11 | + var readyStatus; | ||
| 12 | + | ||
| 11 | var init = function (cb) { | 13 | var init = function (cb) { |
| 12 | var allGps = gb_data_gps.allGps; | 14 | var allGps = gb_data_gps.allGps; |
| 13 | _devices = gb_common.get_keys(allGps); | 15 | _devices = gb_common.get_keys(allGps); |
| @@ -16,7 +18,7 @@ var gb_map_gps_tree = (function () { | @@ -16,7 +18,7 @@ var gb_map_gps_tree = (function () { | ||
| 16 | treeObj = $('.real_right_gps_panel .gps_tree_list') | 18 | treeObj = $('.real_right_gps_panel .gps_tree_list') |
| 17 | //节点初始化完成 | 19 | //节点初始化完成 |
| 18 | .on('ready.jstree', function () { | 20 | .on('ready.jstree', function () { |
| 19 | - treeObj.jstree(true).open_all(); | 21 | + //treeObj.jstree(true).open_all(); |
| 20 | //删掉tree node a标签的 href值(避免鼠标悬停浏览器出现状态条) | 22 | //删掉tree node a标签的 href值(避免鼠标悬停浏览器出现状态条) |
| 21 | $('.gps_tree_list .jstree-container-ul a.jstree-anchor').removeAttr('href'); | 23 | $('.gps_tree_list .jstree-container-ul a.jstree-anchor').removeAttr('href'); |
| 22 | }) | 24 | }) |
| @@ -24,6 +26,7 @@ var gb_map_gps_tree = (function () { | @@ -24,6 +26,7 @@ var gb_map_gps_tree = (function () { | ||
| 24 | .on('state_ready.jstree', function () { | 26 | .on('state_ready.jstree', function () { |
| 25 | //绑定checkbox状态切换事件 | 27 | //绑定checkbox状态切换事件 |
| 26 | treeObj.on('check_node.jstree uncheck_node.jstree', jstreeChanged); | 28 | treeObj.on('check_node.jstree uncheck_node.jstree', jstreeChanged); |
| 29 | + readyStatus = true; | ||
| 27 | cb && cb(); | 30 | cb && cb(); |
| 28 | }) | 31 | }) |
| 29 | .on('activate_node.jstree', function (e, n) { | 32 | .on('activate_node.jstree', function (e, n) { |
| @@ -43,28 +46,12 @@ var gb_map_gps_tree = (function () { | @@ -43,28 +46,12 @@ var gb_map_gps_tree = (function () { | ||
| 43 | 'keep_selected_style': false, | 46 | 'keep_selected_style': false, |
| 44 | 'whole_node': false, | 47 | 'whole_node': false, |
| 45 | 'tie_selection': false | 48 | 'tie_selection': false |
| 46 | - }/*, | ||
| 47 | - 'contextmenu': { | ||
| 48 | - 'items': { | ||
| 49 | - '轨迹回放': { | ||
| 50 | - 'label': '轨迹回放', | ||
| 51 | - 'action': function (data) { | ||
| 52 | - console.log('action', data); | ||
| 53 | - } | ||
| 54 | - }, | ||
| 55 | - '发送指令': { | ||
| 56 | - 'label': '发送指令', | ||
| 57 | - 'action': function (data) { | ||
| 58 | - console.log('action', data); | ||
| 59 | - } | ||
| 60 | - } | ||
| 61 | - } | ||
| 62 | - }*/, | 49 | + }, |
| 63 | //local storage里的key | 50 | //local storage里的key |
| 64 | 'state': { | 51 | 'state': { |
| 65 | 'key': 'jstree_map_devices' | 52 | 'key': 'jstree_map_devices' |
| 66 | }, | 53 | }, |
| 67 | - 'plugins': ['checkbox'/*, 'contextmenu'*/, 'state'] | 54 | + 'plugins': ['checkbox', 'state'] |
| 68 | }); | 55 | }); |
| 69 | }; | 56 | }; |
| 70 | 57 | ||
| @@ -106,7 +93,7 @@ var gb_map_gps_tree = (function () { | @@ -106,7 +93,7 @@ var gb_map_gps_tree = (function () { | ||
| 106 | }); | 93 | }); |
| 107 | } | 94 | } |
| 108 | })(); | 95 | })(); |
| 109 | - } | 96 | + }; |
| 110 | 97 | ||
| 111 | //创建线路和上下行节点 | 98 | //创建线路和上下行节点 |
| 112 | var create_route_node = function (lineCode, cb) { | 99 | var create_route_node = function (lineCode, cb) { |
| @@ -133,7 +120,7 @@ var gb_map_gps_tree = (function () { | @@ -133,7 +120,7 @@ var gb_map_gps_tree = (function () { | ||
| 133 | } | 120 | } |
| 134 | }] | 121 | }] |
| 135 | }, 'last', cb); | 122 | }, 'last', cb); |
| 136 | - } | 123 | + }; |
| 137 | 124 | ||
| 138 | var appendDeviceNode = function (routeNode, gps, cb) { | 125 | var appendDeviceNode = function (routeNode, gps, cb) { |
| 139 | if (!routeNode) { | 126 | if (!routeNode) { |
| @@ -150,16 +137,124 @@ var gb_map_gps_tree = (function () { | @@ -150,16 +137,124 @@ var gb_map_gps_tree = (function () { | ||
| 150 | 'data': {lineId: gps.lineId, upDown: gps.upDown}, | 137 | 'data': {lineId: gps.lineId, upDown: gps.upDown}, |
| 151 | 'icon': 'uk-icon-bus' | 138 | 'icon': 'uk-icon-bus' |
| 152 | }, 'last', cb); | 139 | }, 'last', cb); |
| 153 | - } | 140 | + }; |
| 141 | + | ||
| 142 | + /** | ||
| 143 | + * 上下行改变 | ||
| 144 | + * @param changeArray | ||
| 145 | + */ | ||
| 146 | + var changeUpDown = function (changeArray) { | ||
| 147 | + console.log('changeUpDown', changeArray); | ||
| 148 | + }; | ||
| 149 | + | ||
| 150 | + /** | ||
| 151 | + * 更新节点 | ||
| 152 | + */ | ||
| 153 | + var abnormalsMapp = { | ||
| 154 | + 'outBounds': '越界', | ||
| 155 | + 'overspeed': '超速' | ||
| 156 | + }; | ||
| 157 | + var update_node = function (ups) { | ||
| 158 | + var tree = treeObj.jstree(true) | ||
| 159 | + ,node,suffix; | ||
| 160 | + $.each(ups, function () { | ||
| 161 | + node = tree.get_node('map_tree_device_' + this.nbbm); | ||
| 162 | + suffix=abnormalsMapp[this['abnormalStatus']]; | ||
| 163 | + suffix = suffix?'<a class="gps_tree_abnormal '+this['abnormalStatus']+'">'+suffix+'</a>':''; | ||
| 164 | + tree.set_text(node, this.nbbm + suffix); | ||
| 165 | + }); | ||
| 166 | + }; | ||
| 167 | + | ||
| 168 | + | ||
| 169 | + /** | ||
| 170 | + * 搜索 | ||
| 171 | + */ | ||
| 172 | + var autocom = '.real_right_gps_panel .ral-gps-autocom' | ||
| 173 | + ,_input = $('input', autocom); | ||
| 174 | + | ||
| 175 | + var autocomplete_source = function(release) { | ||
| 176 | + var rs = [], | ||
| 177 | + v = _input.val().toUpperCase(), count=0; | ||
| 178 | + | ||
| 179 | + $.each(gb_common.get_vals(gb_data_gps.allGps), function () { | ||
| 180 | + if(this.nbbm.indexOf(v) != -1){ | ||
| 181 | + rs.push({ | ||
| 182 | + value: this.nbbm, | ||
| 183 | + lineName: '青浦1路', | ||
| 184 | + stationName: this.stationName?this.stationName:'', | ||
| 185 | + dateStr: this.dateStr | ||
| 186 | + }); | ||
| 187 | + count++; | ||
| 188 | + } | ||
| 189 | + if(count > 11) | ||
| 190 | + return false; | ||
| 191 | + }); | ||
| 192 | + release && release(rs); | ||
| 193 | + }; | ||
| 194 | + | ||
| 195 | + var selectitem = function (event, data, acobject) { | ||
| 196 | + //var deviceId = gb_data_basic.nbbm2deviceMap()[data.value]; | ||
| 197 | + //gb_map_imap.call('drawRealGpsMarker', {gpsList: [gb_data_gps.findOne(deviceId)]}); | ||
| 198 | + //地图定位 | ||
| 199 | + //gb_map_overlay_mge._focus(gb_data_basic.nbbm2deviceMap()[data.value]); | ||
| 200 | + | ||
| 201 | + var tree = treeObj.jstree(true) | ||
| 202 | + var deviceId = gb_data_basic.nbbm2deviceMap()[data.value] | ||
| 203 | + ,gps = gb_data_gps.findOne(deviceId); | ||
| 204 | + | ||
| 205 | + //展开线路节点 | ||
| 206 | + tree.open_node(tree.get_node('map_tree_line_' + gps.lineId), function () { | ||
| 207 | + //展开走向节点 | ||
| 208 | + tree.open_node(tree.get_node('map_tree_route_' + gps.lineId + '_' + gps.upDown), function () { | ||
| 209 | + //选中车辆 | ||
| 210 | + var id = 'map_tree_device_' + data.value; | ||
| 211 | + var node = tree.get_node(id); | ||
| 212 | + tree.check_node(node); | ||
| 213 | + | ||
| 214 | + var $e = $('#'+id); | ||
| 215 | + treeObj.animate({ | ||
| 216 | + scrollTop: $e.offset().top - treeObj.offset().top + treeObj.scrollTop() | ||
| 217 | + }, 500); | ||
| 218 | + //地图定位 | ||
| 219 | + gb_map_overlay_mge._focus(gb_data_basic.nbbm2deviceMap()[data.value]); | ||
| 220 | + }, false); | ||
| 221 | + }); | ||
| 222 | + }; | ||
| 223 | + var result_template = '<script type="text/autocomplete">' + | ||
| 224 | + ' <ul class="uk-nav uk-nav-autocomplete uk-autocomplete-results ral-gps-autocom-results">' + | ||
| 225 | + ' {{~items}}' + | ||
| 226 | + ' <li data-value="{{ $item.value }}">' + | ||
| 227 | + ' <a>' + | ||
| 228 | + ' {{ $item.value }} <small class="desc"> {{ $item.stationName }}</small>' + | ||
| 229 | + ' <div class="desc"><span>{{$item.dateStr}}</span></div>' + | ||
| 230 | + ' </a>' + | ||
| 231 | + ' </li>' + | ||
| 232 | + ' {{/items}}' + | ||
| 233 | + ' </ul>' + | ||
| 234 | + '</script>'; | ||
| 235 | + | ||
| 236 | + $(autocom).append(result_template); | ||
| 237 | + UIkit.autocomplete(autocom, { | ||
| 238 | + minLength: 1, | ||
| 239 | + delay: 10, | ||
| 240 | + source: autocomplete_source | ||
| 241 | + }).on('selectitem.uk.autocomplete', selectitem); | ||
| 242 | + | ||
| 243 | + | ||
| 154 | 244 | ||
| 155 | return { | 245 | return { |
| 156 | init: init, | 246 | init: init, |
| 247 | + readyStatus: function () { | ||
| 248 | + return readyStatus; | ||
| 249 | + }, | ||
| 157 | getChecked: function () { | 250 | getChecked: function () { |
| 158 | return treeObj.jstree(true).get_checked(true); | 251 | return treeObj.jstree(true).get_checked(true); |
| 159 | }, | 252 | }, |
| 160 | all_devices: function () { | 253 | all_devices: function () { |
| 161 | return _devices; | 254 | return _devices; |
| 162 | }, | 255 | }, |
| 163 | - create_node: create_node | 256 | + create_node: create_node, |
| 257 | + changeUpDown: changeUpDown, | ||
| 258 | + update_node: update_node | ||
| 164 | }; | 259 | }; |
| 165 | })(); | 260 | })(); |
| 166 | \ No newline at end of file | 261 | \ No newline at end of file |
src/main/resources/static/real_control_v2/mapmonitor/js/map/iMap.js
| @@ -92,7 +92,7 @@ var gb_map_imap = (function () { | @@ -92,7 +92,7 @@ var gb_map_imap = (function () { | ||
| 92 | 92 | ||
| 93 | var canvas = $('<canvas></canvas>')[0]; | 93 | var canvas = $('<canvas></canvas>')[0]; |
| 94 | canvas.width = w; | 94 | canvas.width = w; |
| 95 | - canvas.height = 75; | 95 | + canvas.height = 64; |
| 96 | var ctx = canvas.getContext('2d'); | 96 | var ctx = canvas.getContext('2d'); |
| 97 | 97 | ||
| 98 | var colours = color(gps); | 98 | var colours = color(gps); |
| @@ -101,13 +101,13 @@ var gb_map_imap = (function () { | @@ -101,13 +101,13 @@ var gb_map_imap = (function () { | ||
| 101 | //ctx.shadowBlur = 1; // 模糊尺寸 | 101 | //ctx.shadowBlur = 1; // 模糊尺寸 |
| 102 | //ctx.shadowColor = colours.shadow; // 颜色 | 102 | //ctx.shadowColor = colours.shadow; // 颜色 |
| 103 | 103 | ||
| 104 | - ctx.roundRect(0, 0, w, 24, 5).stroke(); | 104 | + ctx.roundRect(0, 0, w, 19, 4).stroke(); |
| 105 | ctx.fillStyle = colours.bgColor; | 105 | ctx.fillStyle = colours.bgColor; |
| 106 | ctx.fill(); | 106 | ctx.fill(); |
| 107 | //文字 | 107 | //文字 |
| 108 | ctx.font = "14px arial"; | 108 | ctx.font = "14px arial"; |
| 109 | ctx.fillStyle = "#fff"; | 109 | ctx.fillStyle = "#fff"; |
| 110 | - ctx.fillText(gps.nbbm, 2, 17); | 110 | + ctx.fillText(gps.nbbm, 2, 14); |
| 111 | 111 | ||
| 112 | //角度图标 | 112 | //角度图标 |
| 113 | var img = new Image(); | 113 | var img = new Image(); |
src/main/resources/static/real_control_v2/mapmonitor/js/map/platform/baidu.js
| @@ -179,6 +179,12 @@ var gb_map_baidu = (function(){ | @@ -179,6 +179,12 @@ var gb_map_baidu = (function(){ | ||
| 179 | carparks = {}; | 179 | carparks = {}; |
| 180 | map.clearOverlays(); | 180 | map.clearOverlays(); |
| 181 | }, | 181 | }, |
| 182 | + clearAllGps: function () { | ||
| 183 | + $.each(gb_common.get_vals(realMarkers), function () { | ||
| 184 | + map.removeOverlay(this); | ||
| 185 | + }); | ||
| 186 | + realMarkers = {}; | ||
| 187 | + }, | ||
| 182 | showGpsMarker:function (opt) { | 188 | showGpsMarker:function (opt) { |
| 183 | var chs = opt.chs; | 189 | var chs = opt.chs; |
| 184 | for(var device in realMarkers){ | 190 | for(var device in realMarkers){ |
| @@ -203,6 +209,8 @@ var gb_map_baidu = (function(){ | @@ -203,6 +209,8 @@ var gb_map_baidu = (function(){ | ||
| 203 | var deviceId = opts.deviceId | 209 | var deviceId = opts.deviceId |
| 204 | ,m = realMarkers[deviceId]; | 210 | ,m = realMarkers[deviceId]; |
| 205 | if(m){ | 211 | if(m){ |
| 212 | + if(!m.isVisible()) | ||
| 213 | + m.show(); | ||
| 206 | map.panTo(m.point, {noAnimation: true}); | 214 | map.panTo(m.point, {noAnimation: true}); |
| 207 | //setTop(m); | 215 | //setTop(m); |
| 208 | } | 216 | } |
| @@ -336,9 +344,9 @@ var gb_map_baidu = (function(){ | @@ -336,9 +344,9 @@ var gb_map_baidu = (function(){ | ||
| 336 | 344 | ||
| 337 | //如果需要标识角度 | 345 | //如果需要标识角度 |
| 338 | if(config.carIcon.angle) | 346 | if(config.carIcon.angle) |
| 339 | - marker.setIcon(new BMap.Icon(gb_map_imap.createCarIconRotation(gpsData, w), new BMap.Size(w,75))); | 347 | + marker.setIcon(new BMap.Icon(gb_map_imap.createCarIconRotation(gpsData, w), new BMap.Size(w,70))); |
| 340 | else | 348 | else |
| 341 | - marker.setIcon(new BMap.Icon(gb_map_imap.createCarIcon(gpsData, w), new BMap.Size(w,25))); | 349 | + marker.setIcon(new BMap.Icon(gb_map_imap.createCarIcon(gpsData, w), new BMap.Size(w,20))); |
| 342 | } | 350 | } |
| 343 | 351 | ||
| 344 | function createStationMark(statio) { | 352 | function createStationMark(statio) { |
| @@ -348,7 +356,7 @@ var gb_map_baidu = (function(){ | @@ -348,7 +356,7 @@ var gb_map_baidu = (function(){ | ||
| 348 | //根据站点名称 计算marker 宽度 | 356 | //根据站点名称 计算marker 宽度 |
| 349 | var w = statio.stationName.length * 12 + 4 | 357 | var w = statio.stationName.length * 12 + 4 |
| 350 | ,iw=w-2; | 358 | ,iw=w-2; |
| 351 | - var icon = new BMap.Icon(gb_map_imap.createStationIcon(statio, w), new BMap.Size(iw,20), {anchor: new BMap.Size(iw/2,20)}) | 359 | + var icon = new BMap.Icon(gb_map_imap.createStationIcon(statio, w), new BMap.Size(iw,24), {anchor: new BMap.Size(iw/2,24)}) |
| 352 | marker.setIcon(icon); | 360 | marker.setIcon(icon); |
| 353 | 361 | ||
| 354 | //信息窗口 | 362 | //信息窗口 |
src/main/resources/static/real_control_v2/mapmonitor/js/map/platform/gaode.js
| @@ -63,6 +63,10 @@ var gb_map_gaode = (function() { | @@ -63,6 +63,10 @@ var gb_map_gaode = (function() { | ||
| 63 | carparks={}; | 63 | carparks={}; |
| 64 | map.clearMap(); | 64 | map.clearMap(); |
| 65 | }, | 65 | }, |
| 66 | + clearAllGps: function () { | ||
| 67 | + map.remove(gb_common.get_vals(realMarkers)); | ||
| 68 | + realMarkers = {}; | ||
| 69 | + }, | ||
| 66 | drawLine: function(opt){ | 70 | drawLine: function(opt){ |
| 67 | if(polylines[opt.id]) | 71 | if(polylines[opt.id]) |
| 68 | return; | 72 | return; |
| @@ -331,17 +335,17 @@ var gb_map_gaode = (function() { | @@ -331,17 +335,17 @@ var gb_map_gaode = (function() { | ||
| 331 | //如果需要标识角度 | 335 | //如果需要标识角度 |
| 332 | if(config.carIcon.angle) { | 336 | if(config.carIcon.angle) { |
| 333 | marker.setIcon(new AMap.Icon({ | 337 | marker.setIcon(new AMap.Icon({ |
| 334 | - size: new AMap.Size(w, 75), //图标大小 | 338 | + size: new AMap.Size(w, 70), //图标大小 |
| 335 | image: gb_map_imap.createCarIconRotation(gps, w) | 339 | image: gb_map_imap.createCarIconRotation(gps, w) |
| 336 | })); | 340 | })); |
| 337 | marker.setOffset(new AMap.Pixel(-(w / 2), -35)); | 341 | marker.setOffset(new AMap.Pixel(-(w / 2), -35)); |
| 338 | } | 342 | } |
| 339 | else{ | 343 | else{ |
| 340 | marker.setIcon(new AMap.Icon({ | 344 | marker.setIcon(new AMap.Icon({ |
| 341 | - size: new AMap.Size(w, 25), //图标大小 | 345 | + size: new AMap.Size(w, 20), //图标大小 |
| 342 | image: gb_map_imap.createCarIcon(gps, w) | 346 | image: gb_map_imap.createCarIcon(gps, w) |
| 343 | })); | 347 | })); |
| 344 | - marker.setOffset(new AMap.Pixel(-(w / 2), -12.5)); | 348 | + marker.setOffset(new AMap.Pixel(-(w / 2), -10.5)); |
| 345 | } | 349 | } |
| 346 | } | 350 | } |
| 347 | 351 | ||
| @@ -354,10 +358,10 @@ var gb_map_gaode = (function() { | @@ -354,10 +358,10 @@ var gb_map_gaode = (function() { | ||
| 354 | map: map, | 358 | map: map, |
| 355 | position: [statio.gcj_lon, statio.gcj_lat], | 359 | position: [statio.gcj_lon, statio.gcj_lat], |
| 356 | icon: new AMap.Icon({ | 360 | icon: new AMap.Icon({ |
| 357 | - size: new AMap.Size(w, 20), //图标大小 | 361 | + size: new AMap.Size(w, 24), //图标大小 |
| 358 | image: gb_map_imap.createStationIcon(statio, w) | 362 | image: gb_map_imap.createStationIcon(statio, w) |
| 359 | }), | 363 | }), |
| 360 | - offset: new AMap.Pixel(-(w/2), -20) | 364 | + offset: new AMap.Pixel(-(w/2), -24) |
| 361 | }); | 365 | }); |
| 362 | 366 | ||
| 363 | //信息窗口 | 367 | //信息窗口 |
src/main/resources/static/real_control_v2/mapmonitor/js/map_overlay_manager.js
| @@ -11,25 +11,22 @@ var gb_map_overlay_mge = (function () { | @@ -11,25 +11,22 @@ var gb_map_overlay_mge = (function () { | ||
| 11 | //如果地图正在重绘,暂时不刷新GPS | 11 | //如果地图正在重绘,暂时不刷新GPS |
| 12 | if(reDrawing) | 12 | if(reDrawing) |
| 13 | return; | 13 | return; |
| 14 | - var all = addArr.concat(upArr).concat(upDownChange); | ||
| 15 | - gpsRefreshAll(all); | 14 | + //var all = addArr.concat(upArr).concat(upDownChange); |
| 15 | + gpsRefreshAll(addArr, upArr, upDownChange); | ||
| 16 | 16 | ||
| 17 | }; | 17 | }; |
| 18 | 18 | ||
| 19 | - var gpsRefreshAll = function (allList) { | ||
| 20 | - //是否需要添加樹節點 | ||
| 21 | - var newTreeNodes=[], currArray=gb_map_gps_tree.all_devices(); | ||
| 22 | - $.each(allList, function () { | ||
| 23 | - if(currArray.indexOf(this.deviceId) == -1) | ||
| 24 | - newTreeNodes.push(this); | ||
| 25 | - }); | ||
| 26 | - | ||
| 27 | - gb_map_imap.call('drawRealGpsMarker', {gpsList: allList}); | ||
| 28 | - | ||
| 29 | - //有新设备上线 | ||
| 30 | - if(newTreeNodes.length > 0){ | ||
| 31 | - gb_map_gps_tree.create_node(newTreeNodes, showOverlayByChecks); | 19 | + var gpsRefreshAll = function (addArr, upArr, upDownChange) { |
| 20 | + //更新设备树菜单 | ||
| 21 | + if(gb_map_gps_tree.readyStatus()){ | ||
| 22 | + gb_map_gps_tree.create_node(addArr); | ||
| 23 | + gb_map_gps_tree.update_node(upArr); | ||
| 24 | + gb_map_gps_tree.changeUpDown(upDownChange); | ||
| 32 | } | 25 | } |
| 26 | + | ||
| 27 | + //更新地图 | ||
| 28 | + var all = addArr.concat(upArr).concat(upDownChange); | ||
| 29 | + gb_map_imap.call('drawRealGpsMarker', {gpsList: all}); | ||
| 33 | }; | 30 | }; |
| 34 | 31 | ||
| 35 | var deviceFilter = function (node) { | 32 | var deviceFilter = function (node) { |
| @@ -83,15 +80,26 @@ var gb_map_overlay_mge = (function () { | @@ -83,15 +80,26 @@ var gb_map_overlay_mge = (function () { | ||
| 83 | gb_map_imap.call('clearAll'); | 80 | gb_map_imap.call('clearAll'); |
| 84 | 81 | ||
| 85 | drawAllSection(); | 82 | drawAllSection(); |
| 86 | - //初始绘制 | ||
| 87 | - gpsRefreshAll(gb_common.get_vals(gb_data_gps.allGps)); | 83 | + //重绘GPS |
| 84 | + gb_map_imap.call('drawRealGpsMarker', {gpsList: gb_common.get_vals(gb_data_gps.allGps)}); | ||
| 88 | 85 | ||
| 89 | showOverlayByChecks(); | 86 | showOverlayByChecks(); |
| 90 | //显示路段 | 87 | //显示路段 |
| 91 | showSection(getCheckedDevice()); | 88 | showSection(getCheckedDevice()); |
| 92 | 89 | ||
| 93 | reDrawing = false; | 90 | reDrawing = false; |
| 94 | - } | 91 | + }; |
| 92 | + | ||
| 93 | + //重绘GPS | ||
| 94 | + var reDrawGps = function () { | ||
| 95 | + reDrawing = true; | ||
| 96 | + gb_map_imap.call('clearAllGps'); | ||
| 97 | + //重绘GPS | ||
| 98 | + gb_map_imap.call('drawRealGpsMarker', {gpsList: gb_common.get_vals(gb_data_gps.allGps)}); | ||
| 99 | + | ||
| 100 | + showOverlayByChecks(); | ||
| 101 | + reDrawing = false; | ||
| 102 | + }; | ||
| 95 | 103 | ||
| 96 | var init = function () { | 104 | var init = function () { |
| 97 | reDraw(); | 105 | reDraw(); |
| @@ -102,7 +110,7 @@ var gb_map_overlay_mge = (function () { | @@ -102,7 +110,7 @@ var gb_map_overlay_mge = (function () { | ||
| 102 | centerToRational(); | 110 | centerToRational(); |
| 103 | }; | 111 | }; |
| 104 | 112 | ||
| 105 | - | 113 | + |
| 106 | var showOverlayByChecks = function () { | 114 | var showOverlayByChecks = function () { |
| 107 | var chs = getCheckedDevice(),chsMap={}; | 115 | var chs = getCheckedDevice(),chsMap={}; |
| 108 | $.each(chs, function () { | 116 | $.each(chs, function () { |
| @@ -115,7 +123,7 @@ var gb_map_overlay_mge = (function () { | @@ -115,7 +123,7 @@ var gb_map_overlay_mge = (function () { | ||
| 115 | showSection(chs); | 123 | showSection(chs); |
| 116 | 124 | ||
| 117 | }; | 125 | }; |
| 118 | - | 126 | + |
| 119 | var _focus = function (deviceId) { | 127 | var _focus = function (deviceId) { |
| 120 | gb_map_imap.call('goToMarker', {deviceId: deviceId}); | 128 | gb_map_imap.call('goToMarker', {deviceId: deviceId}); |
| 121 | //打开信息窗口 | 129 | //打开信息窗口 |
| @@ -125,14 +133,14 @@ var gb_map_overlay_mge = (function () { | @@ -125,14 +133,14 @@ var gb_map_overlay_mge = (function () { | ||
| 125 | //站点获得焦点 | 133 | //站点获得焦点 |
| 126 | var _focus_station = function (station) { | 134 | var _focus_station = function (station) { |
| 127 | gb_map_imap.call('goToStation', station.stationCode); | 135 | gb_map_imap.call('goToStation', station.stationCode); |
| 128 | - } | 136 | + }; |
| 129 | 137 | ||
| 130 | //停车场获得焦点 | 138 | //停车场获得焦点 |
| 131 | var _focus_carpark = function (carpark) { | 139 | var _focus_carpark = function (carpark) { |
| 132 | //console.log('_focus_carpark', carpark); | 140 | //console.log('_focus_carpark', carpark); |
| 133 | gb_map_imap.call('goToCarpark', carpark.parkCode); | 141 | gb_map_imap.call('goToCarpark', carpark.parkCode); |
| 134 | - } | ||
| 135 | - | 142 | + }; |
| 143 | + | ||
| 136 | function getCheckedDevice() { | 144 | function getCheckedDevice() { |
| 137 | return gb_map_gps_tree.getChecked().filter(deviceFilter); | 145 | return gb_map_gps_tree.getChecked().filter(deviceFilter); |
| 138 | } | 146 | } |
| @@ -144,7 +152,7 @@ var gb_map_overlay_mge = (function () { | @@ -144,7 +152,7 @@ var gb_map_overlay_mge = (function () { | ||
| 144 | gb_map_imap.call('drawStationMarker', {list: list}); | 152 | gb_map_imap.call('drawStationMarker', {list: list}); |
| 145 | //绘制电子围栏 | 153 | //绘制电子围栏 |
| 146 | drawElectronicFence(list); | 154 | drawElectronicFence(list); |
| 147 | - } | 155 | + }; |
| 148 | 156 | ||
| 149 | //绘制电子围栏 | 157 | //绘制电子围栏 |
| 150 | var drawElectronicFence = function (list) { | 158 | var drawElectronicFence = function (list) { |
| @@ -162,13 +170,13 @@ var gb_map_overlay_mge = (function () { | @@ -162,13 +170,13 @@ var gb_map_overlay_mge = (function () { | ||
| 162 | fun=this.shapesType=='r'?drawCircle:drawPolygon; | 170 | fun=this.shapesType=='r'?drawCircle:drawPolygon; |
| 163 | fun(this); | 171 | fun(this); |
| 164 | }); | 172 | }); |
| 165 | - } | 173 | + }; |
| 166 | 174 | ||
| 167 | //绘制停车场 | 175 | //绘制停车场 |
| 168 | var drawCarpark = function () { | 176 | var drawCarpark = function () { |
| 169 | var list = gb_map_spatial_data.gteCheckedCarpark(); | 177 | var list = gb_map_spatial_data.gteCheckedCarpark(); |
| 170 | gb_map_imap.call('drawCarpark', {list: list}); | 178 | gb_map_imap.call('drawCarpark', {list: list}); |
| 171 | - } | 179 | + }; |
| 172 | 180 | ||
| 173 | var drawCircle=function (data) { | 181 | var drawCircle=function (data) { |
| 174 | var config = gb_map_config.getConfig().section.color; | 182 | var config = gb_map_config.getConfig().section.color; |
| @@ -185,7 +193,7 @@ var gb_map_overlay_mge = (function () { | @@ -185,7 +193,7 @@ var gb_map_overlay_mge = (function () { | ||
| 185 | }; | 193 | }; |
| 186 | 194 | ||
| 187 | gb_map_imap.call('drawCircle', opt); | 195 | gb_map_imap.call('drawCircle', opt); |
| 188 | - } | 196 | + }; |
| 189 | 197 | ||
| 190 | var drawPolygon=function (data) { | 198 | var drawPolygon=function (data) { |
| 191 | var config = gb_map_config.getConfig().section.color; | 199 | var config = gb_map_config.getConfig().section.color; |
| @@ -199,7 +207,7 @@ var gb_map_overlay_mge = (function () { | @@ -199,7 +207,7 @@ var gb_map_overlay_mge = (function () { | ||
| 199 | }; | 207 | }; |
| 200 | 208 | ||
| 201 | gb_map_imap.call('drawPolygon', opt); | 209 | gb_map_imap.call('drawPolygon', opt); |
| 202 | - } | 210 | + }; |
| 203 | 211 | ||
| 204 | //地图居中至合理的位置 | 212 | //地图居中至合理的位置 |
| 205 | var centerToRational=function () { | 213 | var centerToRational=function () { |
| @@ -208,8 +216,8 @@ var gb_map_overlay_mge = (function () { | @@ -208,8 +216,8 @@ var gb_map_overlay_mge = (function () { | ||
| 208 | var id=chs[0].data.lineId+'_'+chs[0].data.upDown; | 216 | var id=chs[0].data.lineId+'_'+chs[0].data.upDown; |
| 209 | gb_map_imap.call('centerToLine', {id: id}); | 217 | gb_map_imap.call('centerToLine', {id: id}); |
| 210 | } | 218 | } |
| 211 | - } | ||
| 212 | - | 219 | + }; |
| 220 | + | ||
| 213 | return { | 221 | return { |
| 214 | init: init, | 222 | init: init, |
| 215 | refresh: showOverlayByChecks, | 223 | refresh: showOverlayByChecks, |
| @@ -226,6 +234,7 @@ var gb_map_overlay_mge = (function () { | @@ -226,6 +234,7 @@ var gb_map_overlay_mge = (function () { | ||
| 226 | return temps['map-win-carpark-detail-temp'](data); | 234 | return temps['map-win-carpark-detail-temp'](data); |
| 227 | }, | 235 | }, |
| 228 | reDraw: reDraw, | 236 | reDraw: reDraw, |
| 237 | + reDrawGps: reDrawGps, | ||
| 229 | getCheckedDevice: getCheckedDevice, | 238 | getCheckedDevice: getCheckedDevice, |
| 230 | drawStation: drawStation, | 239 | drawStation: drawStation, |
| 231 | drawElectronicFence: drawElectronicFence, | 240 | drawElectronicFence: drawElectronicFence, |
src/main/resources/static/real_control_v2/mapmonitor/real.html
| @@ -5,31 +5,18 @@ | @@ -5,31 +5,18 @@ | ||
| 5 | <link rel="stylesheet" href="/real_control_v2/mapmonitor/css/real.css"/> | 5 | <link rel="stylesheet" href="/real_control_v2/mapmonitor/css/real.css"/> |
| 6 | <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/progress.gradient.min.css"> | 6 | <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/progress.gradient.min.css"> |
| 7 | 7 | ||
| 8 | -<div class="map-system-msg"> | ||
| 9 | - <a class="z-depth-2" href="/pages/mapmonitor/alone/wrap.html" target="_blank"> | ||
| 10 | - 当前地图模块正在维护升级中,请点这里打开原版地图 | ||
| 11 | - | ||
| 12 | - <i class="uk-icon-close map-system-msg-close"></i> | ||
| 13 | - </a> | 8 | +<div class="map-system-msg flex-left"> |
| 9 | + <a class="z-depth-2" href="/pages/mapmonitor/alone/wrap.html" target="_blank"></a> | ||
| 14 | </div> | 10 | </div> |
| 15 | -<script> | ||
| 16 | - $('.map-system-msg-close').on('click', function (e) { | ||
| 17 | - e.stopPropagation(); | ||
| 18 | - $('.map-system-msg').addClass('flex-left'); | ||
| 19 | - return false; | ||
| 20 | - }); | ||
| 21 | - | ||
| 22 | - setTimeout(function () { | ||
| 23 | - $('.map-system-msg-close').trigger('click'); | ||
| 24 | - }, 2000); | ||
| 25 | -</script> | ||
| 26 | 11 | ||
| 27 | <div id="real_map_container"></div> | 12 | <div id="real_map_container"></div> |
| 28 | <div class="real_right_gps_panel"> | 13 | <div class="real_right_gps_panel"> |
| 29 | - <form class="uk-form" data-uk-margin=""> | ||
| 30 | - <div class="uk-form-icon"> | ||
| 31 | - <i class="uk-icon-search"></i> | ||
| 32 | - <input type="text" placeholder="搜索..." disabled> | 14 | + <form class="uk-form" > |
| 15 | + <div class="uk-autocomplete uk-form ral-gps-autocom" style="width: 100%;"> | ||
| 16 | + <div class="uk-form-icon"> | ||
| 17 | + <i class="uk-icon-search"></i> | ||
| 18 | + <input type="text" placeholder="搜索..."> | ||
| 19 | + </div> | ||
| 33 | </div> | 20 | </div> |
| 34 | </form> | 21 | </form> |
| 35 | 22 | ||
| @@ -40,7 +27,7 @@ | @@ -40,7 +27,7 @@ | ||
| 40 | <!--<div id="handle" class="ui-resizable-handle ui-resizable-n"></div>--> | 27 | <!--<div id="handle" class="ui-resizable-handle ui-resizable-n"></div>--> |
| 41 | <div class="real_br_cont map_config_wrap"></div> | 28 | <div class="real_br_cont map_config_wrap"></div> |
| 42 | <div class="telescopic"> | 29 | <div class="telescopic"> |
| 43 | - <i class="uk-icon-angle-double-up" ></i> | 30 | + <i class="uk-icon-angle-double-up"></i> |
| 44 | </div> | 31 | </div> |
| 45 | </div> | 32 | </div> |
| 46 | 33 |