Commit 37c2c8268c68cc9ea5f71ce638135eb2fba073c5

Authored by 徐烜
2 parents 20a5c6da 52b38105

Merge branch 'minhang' of http://222.66.0.204:8090//panzhaov5/bsth_control into minhang

Showing 56 changed files with 5518 additions and 4370 deletions
src/main/java/com/bsth/controller/StationRouteController.java
@@ -111,7 +111,6 @@ public class StationRouteController extends BaseController<StationRoute, Integer @@ -111,7 +111,6 @@ public class StationRouteController extends BaseController<StationRoute, Integer
111 */ 111 */
112 @RequestMapping(value = "/findStationRouteInfo",method = RequestMethod.GET) 112 @RequestMapping(value = "/findStationRouteInfo",method = RequestMethod.GET)
113 public List<Map<String, Object>> findStationRouteInfo(@RequestParam Map<String, Object> map) { 113 public List<Map<String, Object>> findStationRouteInfo(@RequestParam Map<String, Object> map) {
114 -  
115 return service.findStationRouteInfo(map); 114 return service.findStationRouteInfo(map);
116 } 115 }
117 116
@@ -140,4 +139,13 @@ public class StationRouteController extends BaseController&lt;StationRoute, Integer @@ -140,4 +139,13 @@ public class StationRouteController extends BaseController&lt;StationRoute, Integer
140 return service.updSwitchDir(lineIds); 139 return service.updSwitchDir(lineIds);
141 } 140 }
142 141
  142 + /**
  143 + *
  144 + * @Title: upddis
  145 + * @Description: TODO(更新站距)
  146 + */
  147 + @RequestMapping(value = "/upddis",method = RequestMethod.POST)
  148 + public Map<String, Object> upddis(@RequestParam Map<String, Object> map) {
  149 + return service.upddis(map);
  150 + }
143 } 151 }
src/main/java/com/bsth/data/safe_driv/SafeDriv.java 0 → 100644
  1 +package com.bsth.data.safe_driv;
  2 +
  3 +/**
  4 + * 安全驾驶
  5 + * Created by panzhao on 2017/4/6.
  6 + */
  7 +public class SafeDriv {
  8 +
  9 + /**
  10 + * 时间
  11 + * 2017-04-06 08:00:00.0
  12 + */
  13 + private String Startime;
  14 +
  15 + /**
  16 + * 时间戳
  17 + */
  18 + private Long ts;
  19 +
  20 + /**
  21 + * 设备编号
  22 + */
  23 + private String sbbh;
  24 +
  25 + /**
  26 + * 线路名称
  27 + */
  28 + private String xlmc;
  29 +
  30 + /**
  31 + * 车辆自编号
  32 + */
  33 + private String clzbh;
  34 +
  35 + /**
  36 + * 车牌号
  37 + */
  38 + private String cph;
  39 +
  40 + /**
  41 + * 检查属性
  42 + * 双脱手 0 单脱手 1 其他为0都是异常
  43 + */
  44 + private String jctype;
  45 +
  46 + /**
  47 + * 异常种类
  48 + * 手部检测: 1
  49 + * 脸部检测: 5
  50 + * 摄像头检测: 2
  51 + * 安全带检测: 3
  52 + * 袖章检测: 4
  53 + */
  54 + private String yczltype;
  55 +
  56 + @Override
  57 + public int hashCode() {
  58 + return ("safe_" + (this.getClzbh() + this.getStartime())).hashCode();
  59 + }
  60 +
  61 + @Override
  62 + public boolean equals(Object obj) {
  63 + SafeDriv s2 = (SafeDriv)obj;
  64 + return (this.getClzbh() + this.getStartime()).equals(s2.getClzbh() + s2.getStartime());
  65 + }
  66 +
  67 + public String getStartime() {
  68 + return Startime;
  69 + }
  70 +
  71 + public void setStartime(String startime) {
  72 + Startime = startime;
  73 + }
  74 +
  75 + public String getSbbh() {
  76 + return sbbh;
  77 + }
  78 +
  79 + public void setSbbh(String sbbh) {
  80 + this.sbbh = sbbh;
  81 + }
  82 +
  83 + public String getXlmc() {
  84 + return xlmc;
  85 + }
  86 +
  87 + public void setXlmc(String xlmc) {
  88 + this.xlmc = xlmc;
  89 + }
  90 +
  91 + public String getClzbh() {
  92 + return clzbh;
  93 + }
  94 +
  95 + public void setClzbh(String clzbh) {
  96 + this.clzbh = clzbh;
  97 + }
  98 +
  99 + public String getCph() {
  100 + return cph;
  101 + }
  102 +
  103 + public void setCph(String cph) {
  104 + this.cph = cph;
  105 + }
  106 +
  107 + public String getJctype() {
  108 + return jctype;
  109 + }
  110 +
  111 + public void setJctype(String jctype) {
  112 + this.jctype = jctype;
  113 + }
  114 +
  115 + public String getYczltype() {
  116 + return yczltype;
  117 + }
  118 +
  119 + public void setYczltype(String yczltype) {
  120 + this.yczltype = yczltype;
  121 + }
  122 +
  123 + public Long getTs() {
  124 + return ts;
  125 + }
  126 +
  127 + public void setTs(Long ts) {
  128 + this.ts = ts;
  129 + }
  130 +}
src/main/java/com/bsth/data/safe_driv/SafeDrivCenter.java 0 → 100644
  1 +package com.bsth.data.safe_driv;
  2 +
  3 +import com.bsth.Application;
  4 +import com.bsth.websocket.handler.SendUtils;
  5 +import org.joda.time.format.DateTimeFormat;
  6 +import org.joda.time.format.DateTimeFormatter;
  7 +import org.springframework.beans.BeansException;
  8 +import org.springframework.beans.factory.annotation.Autowired;
  9 +import org.springframework.boot.CommandLineRunner;
  10 +import org.springframework.context.ApplicationContext;
  11 +import org.springframework.context.ApplicationContextAware;
  12 +import org.springframework.stereotype.Component;
  13 +
  14 +import java.util.HashMap;
  15 +import java.util.HashSet;
  16 +import java.util.Map;
  17 +import java.util.Set;
  18 +import java.util.concurrent.TimeUnit;
  19 +
  20 +/**
  21 + * 安全驾驶
  22 + * Created by panzhao on 2017/4/6.
  23 + */
  24 +@Component
  25 +public class SafeDrivCenter implements CommandLineRunner,ApplicationContextAware {
  26 +
  27 + private static Set<SafeDriv> data;
  28 +
  29 + @Autowired
  30 + SafeDrivDataLoadThread safeDrivDataLoadThread;
  31 +
  32 + static SendUtils sendUtils;
  33 +
  34 + /**
  35 + * 车辆自编号 和 最新一条数据对照
  36 + */
  37 + private static Map<String, SafeDriv> safeMap;
  38 +
  39 + static {
  40 + data = new HashSet<>();
  41 + safeMap = new HashMap<>();
  42 + }
  43 +
  44 + private static DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss.SSS");
  45 + public static void put(SafeDriv sd){
  46 + sd.setTs(fmt.parseMillis(sd.getStartime()));
  47 + data.add(sd);
  48 +
  49 + if(sd.getYczltype().indexOf("A") == -1)
  50 + sd.setYczltype("A" + sd.getYczltype());
  51 +
  52 + SafeDriv old = safeMap.get(sd.getClzbh());
  53 + if(old == null || sd.getTs() > old.getTs()){
  54 + //通知客户端
  55 + sendUtils.sendSafeDriv(sd);
  56 + }
  57 +
  58 + safeMap.put(sd.getClzbh(), sd);
  59 + }
  60 +
  61 + @Override
  62 + public void run(String... strings) throws Exception {
  63 + //定时加载安全驾驶数据
  64 + Application.mainServices.scheduleWithFixedDelay(safeDrivDataLoadThread, 60, 5, TimeUnit.SECONDS);
  65 + }
  66 +
  67 + @Override
  68 + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
  69 + sendUtils = applicationContext.getBean(SendUtils.class);
  70 + }
  71 +}
src/main/java/com/bsth/data/safe_driv/SafeDrivDataLoadThread.java 0 → 100644
  1 +package com.bsth.data.safe_driv;
  2 +
  3 +import com.alibaba.fastjson.JSON;
  4 +import org.apache.http.HttpEntity;
  5 +import org.apache.http.client.methods.CloseableHttpResponse;
  6 +import org.apache.http.client.methods.HttpGet;
  7 +import org.apache.http.impl.client.CloseableHttpClient;
  8 +import org.apache.http.impl.client.HttpClients;
  9 +import org.slf4j.Logger;
  10 +import org.slf4j.LoggerFactory;
  11 +import org.springframework.stereotype.Component;
  12 +
  13 +import java.io.BufferedReader;
  14 +import java.io.InputStreamReader;
  15 +import java.util.List;
  16 +
  17 +/**
  18 + * 安全驾驶数据加载线程
  19 + * Created by panzhao on 2017/4/6.
  20 + */
  21 +@Component
  22 +public class SafeDrivDataLoadThread extends Thread{
  23 +
  24 + private final static String url = "http://180.166.5.82:9988//bsth-safedriving/Crlcxb/realtimeInterface.do";
  25 +
  26 + Logger logger = LoggerFactory.getLogger(this.getClass());
  27 +
  28 + @Override
  29 + public void run() {
  30 + List<SafeDriv> list = null;
  31 + CloseableHttpClient httpClient = null;
  32 + CloseableHttpResponse response = null;
  33 + try {
  34 + httpClient = HttpClients.createDefault();
  35 + HttpGet get = new HttpGet(url);
  36 +
  37 + response = httpClient.execute(get);
  38 +
  39 + HttpEntity entity = response.getEntity();
  40 + if (null != entity) {
  41 + BufferedReader br = new BufferedReader(new InputStreamReader(entity.getContent()));
  42 + StringBuffer stringBuffer = new StringBuffer();
  43 + String str = "";
  44 + while ((str = br.readLine()) != null)
  45 + stringBuffer.append(str);
  46 +
  47 +
  48 + list = JSON.parseArray(stringBuffer.toString(), SafeDriv.class);
  49 + /**
  50 + * 模拟数据
  51 +
  52 + SafeDriv sd1 = new SafeDriv();
  53 + sd1.setYczltype("1");
  54 + sd1.setClzbh("W2B-001");
  55 + sd1.setStartime("2017-04-07 08:00:00.0");
  56 +
  57 + SafeDriv sd2 = new SafeDriv();
  58 + sd2.setYczltype("2");
  59 + sd2.setClzbh("W2B-002");
  60 + sd2.setStartime("2017-04-07 08:02:00.0");
  61 +
  62 + SafeDriv sd3 = new SafeDriv();
  63 + sd3.setYczltype("3");
  64 + sd3.setClzbh("W2B-003");
  65 + sd3.setStartime("2017-04-07 08:03:00.0");
  66 +
  67 + SafeDriv sd4 = new SafeDriv();
  68 + sd4.setYczltype("4");
  69 + sd4.setClzbh("W2B-004");
  70 + sd4.setStartime("2017-04-07 08:04:00.0");
  71 +
  72 + SafeDriv sd5 = new SafeDriv();
  73 + sd5.setYczltype("5");
  74 + sd5.setClzbh("W2B-005");
  75 + sd5.setStartime("2017-04-07 08:05:00.0");
  76 +
  77 + list.add(sd1);
  78 + list.add(sd2);
  79 + list.add(sd3);
  80 + list.add(sd4);
  81 + list.add(sd5);
  82 + */
  83 + for(SafeDriv sd : list){
  84 + SafeDrivCenter.put(sd);
  85 + }
  86 + }
  87 +
  88 + httpClient.close();
  89 + response.close();
  90 + } catch (Exception e) {
  91 + logger.error("", e);
  92 + }
  93 + }
  94 +}
src/main/java/com/bsth/entity/excep/Offline.java
@@ -6,6 +6,7 @@ import javax.persistence.Entity; @@ -6,6 +6,7 @@ import javax.persistence.Entity;
6 import javax.persistence.GeneratedValue; 6 import javax.persistence.GeneratedValue;
7 import javax.persistence.Id; 7 import javax.persistence.Id;
8 import javax.persistence.Table; 8 import javax.persistence.Table;
  9 +import javax.persistence.Transient;
9 10
10 /** 11 /**
11 * 掉线 12 * 掉线
@@ -65,7 +66,12 @@ public class Offline { @@ -65,7 +66,12 @@ public class Offline {
65 */ 66 */
66 private Date createDate; 67 private Date createDate;
67 68
68 - 69 + @Transient
  70 + private String nbbm;
  71 + @Transient
  72 + private String jsy;
  73 + @Transient
  74 + private String lpname;
69 public Integer getId() { 75 public Integer getId() {
70 return id; 76 return id;
71 } 77 }
@@ -146,5 +152,29 @@ public class Offline { @@ -146,5 +152,29 @@ public class Offline {
146 this.timestampDate = timestampDate; 152 this.timestampDate = timestampDate;
147 } 153 }
148 154
  155 + public String getNbbm() {
  156 + return nbbm;
  157 + }
  158 +
  159 + public void setNbbm(String nbbm) {
  160 + this.nbbm = nbbm;
  161 + }
149 162
  163 + public String getJsy() {
  164 + return jsy;
  165 + }
  166 +
  167 + public void setJsy(String jsy) {
  168 + this.jsy = jsy;
  169 + }
  170 +
  171 + public String getLpname() {
  172 + return lpname;
  173 + }
  174 +
  175 + public void setLpname(String lpname) {
  176 + this.lpname = lpname;
  177 + }
  178 +
  179 +
150 } 180 }
src/main/java/com/bsth/entity/excep/Outbound.java
@@ -6,6 +6,7 @@ import javax.persistence.Entity; @@ -6,6 +6,7 @@ import javax.persistence.Entity;
6 import javax.persistence.GeneratedValue; 6 import javax.persistence.GeneratedValue;
7 import javax.persistence.Id; 7 import javax.persistence.Id;
8 import javax.persistence.Table; 8 import javax.persistence.Table;
  9 +import javax.persistence.Transient;
9 10
10 /** 11 /**
11 * 越界 12 * 越界
@@ -72,7 +73,12 @@ public class Outbound { @@ -72,7 +73,12 @@ public class Outbound {
72 * 时间 73 * 时间
73 */ 74 */
74 private Date createDate; 75 private Date createDate;
75 - 76 + @Transient
  77 + private String nbbm;
  78 + @Transient
  79 + private String jsy;
  80 + @Transient
  81 + private String lpname;
76 82
77 public Integer getId() { 83 public Integer getId() {
78 return id; 84 return id;
@@ -162,5 +168,29 @@ public class Outbound { @@ -162,5 +168,29 @@ public class Outbound {
162 this.timestampDate = timestampDate; 168 this.timestampDate = timestampDate;
163 } 169 }
164 170
  171 + public String getNbbm() {
  172 + return nbbm;
  173 + }
  174 +
  175 + public void setNbbm(String nbbm) {
  176 + this.nbbm = nbbm;
  177 + }
  178 +
  179 + public String getJsy() {
  180 + return jsy;
  181 + }
  182 +
  183 + public void setJsy(String jsy) {
  184 + this.jsy = jsy;
  185 + }
  186 +
  187 + public String getLpname() {
  188 + return lpname;
  189 + }
  190 +
  191 + public void setLpname(String lpname) {
  192 + this.lpname = lpname;
  193 + }
  194 +
165 195
166 } 196 }
src/main/java/com/bsth/entity/excep/Speeding.java
@@ -6,6 +6,7 @@ import javax.persistence.Entity; @@ -6,6 +6,7 @@ import javax.persistence.Entity;
6 import javax.persistence.GeneratedValue; 6 import javax.persistence.GeneratedValue;
7 import javax.persistence.Id; 7 import javax.persistence.Id;
8 import javax.persistence.Table; 8 import javax.persistence.Table;
  9 +import javax.persistence.Transient;
9 10
10 /** 11 /**
11 * 超速 12 * 超速
@@ -66,6 +67,13 @@ public class Speeding { @@ -66,6 +67,13 @@ public class Speeding {
66 private String timestampDate; 67 private String timestampDate;
67 68
68 69
  70 + @Transient
  71 + private String nbbm;
  72 + @Transient
  73 + private String jsy;
  74 + @Transient
  75 + private String lpname;
  76 +
69 /** 77 /**
70 * 创建时间 78 * 创建时间
71 */ 79 */
@@ -161,6 +169,30 @@ public class Speeding { @@ -161,6 +169,30 @@ public class Speeding {
161 this.timestampDate = timestampDate; 169 this.timestampDate = timestampDate;
162 } 170 }
163 171
  172 + public String getNbbm() {
  173 + return nbbm;
  174 + }
  175 +
  176 + public void setNbbm(String nbbm) {
  177 + this.nbbm = nbbm;
  178 + }
  179 +
  180 + public String getJsy() {
  181 + return jsy;
  182 + }
  183 +
  184 + public void setJsy(String jsy) {
  185 + this.jsy = jsy;
  186 + }
  187 +
  188 + public String getLpname() {
  189 + return lpname;
  190 + }
  191 +
  192 + public void setLpname(String lpname) {
  193 + this.lpname = lpname;
  194 + }
  195 +
164 196
165 197
166 } 198 }
src/main/java/com/bsth/repository/StationRouteRepository.java
@@ -272,4 +272,8 @@ public interface StationRouteRepository extends BaseRepository&lt;StationRoute, Int @@ -272,4 +272,8 @@ public interface StationRouteRepository extends BaseRepository&lt;StationRoute, Int
272 @Modifying 272 @Modifying
273 @Query(value="update bsth_c_stationroute set directions = case directions when 1 then 0 when 0 then 1 end where line_code = ?1 ", nativeQuery=true) 273 @Query(value="update bsth_c_stationroute set directions = case directions when 1 then 0 when 0 then 1 end where line_code = ?1 ", nativeQuery=true)
274 public void stationRouteDir(Integer line); 274 public void stationRouteDir(Integer line);
  275 +
  276 + @Modifying
  277 + @Query(value="update bsth_c_stationroute set distances =?2 where id = ?1 ", nativeQuery=true)
  278 + public void upddis(Integer id,Double dis);
275 } 279 }
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
@@ -137,7 +137,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -137,7 +137,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
137 List<ScheduleRealInfo> scheduleByDateAndLine(String line,String date); 137 List<ScheduleRealInfo> scheduleByDateAndLine(String line,String date);
138 138
139 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) 139 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH)
140 - @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 order by (s.lpName+1), s.realExecDate,s.fcsj") 140 + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm =?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 order by (s.lpName+1), s.realExecDate,s.fcsj")
141 List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date); 141 List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date);
142 142
143 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) 143 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH)
src/main/java/com/bsth/service/StationRouteService.java
@@ -82,4 +82,6 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt; @@ -82,4 +82,6 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt;
82 Map<String, Object> findByMultiLine(String lineIds); 82 Map<String, Object> findByMultiLine(String lineIds);
83 83
84 Map<String, Object> updSwitchDir(String lineIds); 84 Map<String, Object> updSwitchDir(String lineIds);
  85 +
  86 + Map<String, Object> upddis(Map<String, Object> map);
85 } 87 }
src/main/java/com/bsth/service/excep/impl/OfflineServiceImpl.java
@@ -12,10 +12,15 @@ import java.util.HashMap; @@ -12,10 +12,15 @@ import java.util.HashMap;
12 import java.util.List; 12 import java.util.List;
13 import java.util.Map; 13 import java.util.Map;
14 14
  15 +import org.springframework.beans.factory.annotation.Autowired;
  16 +import org.springframework.jdbc.core.JdbcTemplate;
  17 +import org.springframework.jdbc.core.RowMapper;
15 import org.springframework.stereotype.Service; 18 import org.springframework.stereotype.Service;
16 19
17 import com.bsth.data.BasicData; 20 import com.bsth.data.BasicData;
18 import com.bsth.entity.excep.Offline; 21 import com.bsth.entity.excep.Offline;
  22 +import com.bsth.entity.oil.Ylb;
  23 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
19 import com.bsth.service.excep.OfflineService; 24 import com.bsth.service.excep.OfflineService;
20 import com.bsth.util.EchartConver; 25 import com.bsth.util.EchartConver;
21 import com.bsth.util.PageHelper; 26 import com.bsth.util.PageHelper;
@@ -27,6 +32,8 @@ import com.google.gson.Gson; @@ -27,6 +32,8 @@ import com.google.gson.Gson;
27 @Service 32 @Service
28 public class OfflineServiceImpl implements OfflineService { 33 public class OfflineServiceImpl implements OfflineService {
29 34
  35 + @Autowired
  36 + JdbcTemplate jdbcTemplate;
30 // @Override 37 // @Override
31 static List<Offline> findAll(Map<String, Object> map) { 38 static List<Offline> findAll(Map<String, Object> map) {
32 // TODO Auto-generated method stub 39 // TODO Auto-generated method stub
@@ -53,7 +60,9 @@ public class OfflineServiceImpl implements OfflineService { @@ -53,7 +60,9 @@ public class OfflineServiceImpl implements OfflineService {
53 } 60 }
54 61
55 if(nbbm!=null){ 62 if(nbbm!=null){
56 - sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 63 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  64 + if(nbbm!=null)
  65 + sql +=" and vehicle like '%"+nbbm+"%'";
57 } 66 }
58 67
59 if(updown!=null){ 68 if(updown!=null){
@@ -61,7 +70,7 @@ public class OfflineServiceImpl implements OfflineService { @@ -61,7 +70,7 @@ public class OfflineServiceImpl implements OfflineService {
61 } 70 }
62 if(date!=null){ 71 if(date!=null){
63 if (date.toString().length()>0) { 72 if (date.toString().length()>0) {
64 - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:MM:SS"); 73 + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
65 try { 74 try {
66 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime(); 75 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime();
67 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime(); 76 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime();
@@ -112,7 +121,7 @@ public class OfflineServiceImpl implements OfflineService { @@ -112,7 +121,7 @@ public class OfflineServiceImpl implements OfflineService {
112 offline.setTimestamp(Long.valueOf(rs.getObject("timestamp").toString())); 121 offline.setTimestamp(Long.valueOf(rs.getObject("timestamp").toString()));
113 offline.setTimestampDate(sdf.format(new Date(offline.getTimestamp()))); 122 offline.setTimestampDate(sdf.format(new Date(offline.getTimestamp())));
114 offline.setUpDown(Integer.valueOf(rs.getObject("up_down").toString())); 123 offline.setUpDown(Integer.valueOf(rs.getObject("up_down").toString()));
115 - offline.setVehicle(rs.getObject("vehicle").toString()); 124 + offline.setVehicle(BasicData.deviceId2NbbmMap.get(rs.getObject("vehicle").toString()));
116 list.add(offline); 125 list.add(offline);
117 } 126 }
118 return list; 127 return list;
@@ -135,7 +144,9 @@ public class OfflineServiceImpl implements OfflineService { @@ -135,7 +144,9 @@ public class OfflineServiceImpl implements OfflineService {
135 } 144 }
136 145
137 if(nbbm!=null){ 146 if(nbbm!=null){
138 - sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 147 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  148 + if(nbbm!=null)
  149 + sql +=" and vehicle like '%"+nbbm+"%'";
139 } 150 }
140 151
141 if(updown!=null){ 152 if(updown!=null){
@@ -143,7 +154,7 @@ public class OfflineServiceImpl implements OfflineService { @@ -143,7 +154,7 @@ public class OfflineServiceImpl implements OfflineService {
143 } 154 }
144 if(date!=null){ 155 if(date!=null){
145 if (date.toString().length()>0) { 156 if (date.toString().length()>0) {
146 - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:MM:SS"); 157 + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
147 try { 158 try {
148 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime(); 159 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime();
149 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime(); 160 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime();
@@ -177,8 +188,41 @@ public class OfflineServiceImpl implements OfflineService { @@ -177,8 +188,41 @@ public class OfflineServiceImpl implements OfflineService {
177 PageHelper pageHelper = new PageHelper(totalData, map); 188 PageHelper pageHelper = new PageHelper(totalData, map);
178 // List<T> list = this.baseDao.queryByObject(pageHelper.getMap()); 189 // List<T> list = this.baseDao.queryByObject(pageHelper.getMap());
179 List<Offline> list=findAll(pageHelper.getMap()); 190 List<Offline> list=findAll(pageHelper.getMap());
  191 + for (int i = 0; i < list.size(); i++) {
  192 + String nbbm2=list.get(i).getVehicle() ;
  193 + Long d1=list.get(i).getTimestamp();
  194 + Date datess = new Date(d1);
  195 + String dates=new SimpleDateFormat("yyyy-MM-dd").format(datess);
  196 + String sk=new SimpleDateFormat("HH:mm").format(datess);
  197 + String sqlPbb="select * from bsth_c_s_sp_info_real where cl_zbh='"+nbbm2+"' and"
  198 + + " real_exec_date='"+dates+"' ";
  199 +// + "and fcsj_actual > '"+sk+"' ";
  200 +// + "and '"+sk+"' <dfsj";
  201 + List<ScheduleRealInfo> pbb =jdbcTemplate.query(sqlPbb,
  202 + new RowMapper<ScheduleRealInfo>(){
  203 + @Override
  204 + public ScheduleRealInfo mapRow(ResultSet rs, int rowNum) throws SQLException {
  205 + ScheduleRealInfo s = new ScheduleRealInfo();
  206 + s.setjGh(rs.getString("j_gh"));
  207 + s.setjName(rs.getString("j_name"));
  208 + s.setLpName(rs.getString("lp_name"));
  209 + return s;
  210 + }
  211 + });
  212 + if(pbb.size()>0){
  213 + list.get(i).setJsy(pbb.get(0).getjGh()+"/"+pbb.get(0).getjName());
  214 + list.get(i).setLpname(pbb.get(0).getLpName());
  215 +
  216 + }
  217 +
  218 + }
180 PageObject<Offline> pageObject = pageHelper.getPageObject(); 219 PageObject<Offline> pageObject = pageHelper.getPageObject();
181 - pageObject.setDataList(list); 220 +// for (int i = 0; i < list.size(); i++) {
  221 +// if(list.get(i).getLpname()!=null){
  222 + pageObject.setDataList(list);
  223 +// }
  224 +// }
  225 +
182 return pageObject; 226 return pageObject;
183 } 227 }
184 public static void main(String[] args) { 228 public static void main(String[] args) {
src/main/java/com/bsth/service/excep/impl/OutboundServiceImpl.java
@@ -12,10 +12,14 @@ import java.util.HashMap; @@ -12,10 +12,14 @@ import java.util.HashMap;
12 import java.util.List; 12 import java.util.List;
13 import java.util.Map; 13 import java.util.Map;
14 14
  15 +import org.springframework.beans.factory.annotation.Autowired;
  16 +import org.springframework.jdbc.core.JdbcTemplate;
  17 +import org.springframework.jdbc.core.RowMapper;
15 import org.springframework.stereotype.Service; 18 import org.springframework.stereotype.Service;
16 19
17 import com.bsth.data.BasicData; 20 import com.bsth.data.BasicData;
18 import com.bsth.entity.excep.Outbound; 21 import com.bsth.entity.excep.Outbound;
  22 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
19 import com.bsth.service.excep.OutboundService; 23 import com.bsth.service.excep.OutboundService;
20 import com.bsth.util.EchartConver; 24 import com.bsth.util.EchartConver;
21 import com.bsth.util.PageHelper; 25 import com.bsth.util.PageHelper;
@@ -25,8 +29,9 @@ import com.github.abel533.echarts.Option; @@ -25,8 +29,9 @@ import com.github.abel533.echarts.Option;
25 import com.google.gson.Gson; 29 import com.google.gson.Gson;
26 @Service 30 @Service
27 public class OutboundServiceImpl implements OutboundService{ 31 public class OutboundServiceImpl implements OutboundService{
28 -  
29 - static List<Outbound> findAll(Map<String, Object> map) { 32 + @Autowired
  33 + JdbcTemplate jdbcTemplate;
  34 + static List<Outbound> findAll(Map<String, Object> map) {
30 Connection conn = null; 35 Connection conn = null;
31 PreparedStatement ps = null; 36 PreparedStatement ps = null;
32 ResultSet rs = null; 37 ResultSet rs = null;
@@ -37,12 +42,13 @@ public class OutboundServiceImpl implements OutboundService{ @@ -37,12 +42,13 @@ public class OutboundServiceImpl implements OutboundService{
37 Object nbbm=map.get("nbbm"); 42 Object nbbm=map.get("nbbm");
38 Object updown=map.get("updown"); 43 Object updown=map.get("updown");
39 Object date=map.get("date"); 44 Object date=map.get("date");
40 -  
41 if(line!=null){ 45 if(line!=null){
42 sql +=" and line like'%"+line.toString()+"%'"; 46 sql +=" and line like'%"+line.toString()+"%'";
43 } 47 }
44 48
45 if(nbbm!=null){ 49 if(nbbm!=null){
  50 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  51 + if(nbbm!=null)
46 sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 52 sql +=" and vehicle like '%"+nbbm.toString()+"%'";
47 } 53 }
48 54
@@ -51,7 +57,7 @@ public class OutboundServiceImpl implements OutboundService{ @@ -51,7 +57,7 @@ public class OutboundServiceImpl implements OutboundService{
51 } 57 }
52 if(date!=null){ 58 if(date!=null){
53 if (date.toString().length()>0) { 59 if (date.toString().length()>0) {
54 - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:MM:SS"); 60 + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
55 try { 61 try {
56 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime(); 62 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime();
57 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime(); 63 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime();
@@ -98,7 +104,7 @@ public class OutboundServiceImpl implements OutboundService{ @@ -98,7 +104,7 @@ public class OutboundServiceImpl implements OutboundService{
98 outbound.setTimestamp((Long.valueOf(rs.getObject("timestamp").toString()))); 104 outbound.setTimestamp((Long.valueOf(rs.getObject("timestamp").toString())));
99 outbound.setTimestampDate(sdf.format(new Date(outbound.getTimestamp()))); 105 outbound.setTimestampDate(sdf.format(new Date(outbound.getTimestamp())));
100 outbound.setUpDown(Integer.valueOf(rs.getObject("up_down").toString())); 106 outbound.setUpDown(Integer.valueOf(rs.getObject("up_down").toString()));
101 - outbound.setVehicle(rs.getObject("vehicle").toString()); 107 + outbound.setVehicle(BasicData.deviceId2NbbmMap.get(rs.getObject("vehicle").toString()));
102 outbound.setLocation(rs.getObject("location")==null?"":rs.getObject("location").toString()); 108 outbound.setLocation(rs.getObject("location")==null?"":rs.getObject("location").toString());
103 list.add(outbound); 109 list.add(outbound);
104 } 110 }
@@ -119,6 +125,8 @@ public class OutboundServiceImpl implements OutboundService{ @@ -119,6 +125,8 @@ public class OutboundServiceImpl implements OutboundService{
119 } 125 }
120 126
121 if(nbbm!=null){ 127 if(nbbm!=null){
  128 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  129 + if(nbbm!=null)
122 sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 130 sql +=" and vehicle like '%"+nbbm.toString()+"%'";
123 } 131 }
124 132
@@ -160,7 +168,34 @@ public class OutboundServiceImpl implements OutboundService{ @@ -160,7 +168,34 @@ public class OutboundServiceImpl implements OutboundService{
160 168
161 PageHelper pageHelper = new PageHelper(totalData, map); 169 PageHelper pageHelper = new PageHelper(totalData, map);
162 List<Outbound> list=findAll(pageHelper.getMap()); 170 List<Outbound> list=findAll(pageHelper.getMap());
163 - 171 + for (int i = 0; i < list.size(); i++) {
  172 + String nbbm2=list.get(i).getVehicle() ;
  173 + Long d1=list.get(i).getTimestamp();
  174 + Date datess = new Date(d1);
  175 + String dates=new SimpleDateFormat("yyyy-MM-dd").format(datess);
  176 + String sk=new SimpleDateFormat("HH:mm").format(datess);
  177 + String sqlPbb="select * from bsth_c_s_sp_info_real where cl_zbh='"+nbbm2+"' and"
  178 + + " real_exec_date='"+dates+"' ";
  179 +// + "and fcsj_actual > '"+sk+"' ";
  180 +// + "and '"+sk+"' <dfsj";
  181 + List<ScheduleRealInfo> pbb =jdbcTemplate.query(sqlPbb,
  182 + new RowMapper<ScheduleRealInfo>(){
  183 + @Override
  184 + public ScheduleRealInfo mapRow(ResultSet rs, int rowNum) throws SQLException {
  185 + ScheduleRealInfo s = new ScheduleRealInfo();
  186 + s.setjGh(rs.getString("j_gh"));
  187 + s.setjName(rs.getString("j_name"));
  188 + s.setLpName(rs.getString("lp_name"));
  189 + return s;
  190 + }
  191 + });
  192 + if(pbb.size()>0){
  193 + list.get(i).setJsy(pbb.get(0).getjGh()+"/"+pbb.get(0).getjName());
  194 + list.get(i).setLpname(pbb.get(0).getLpName());
  195 +
  196 + }
  197 +
  198 + }
164 PageObject<Outbound> pageObject = pageHelper.getPageObject(); 199 PageObject<Outbound> pageObject = pageHelper.getPageObject();
165 pageObject.setDataList(list); 200 pageObject.setDataList(list);
166 return pageObject; 201 return pageObject;
src/main/java/com/bsth/service/excep/impl/SpeedingServiceImpl.java
@@ -12,10 +12,14 @@ import java.util.HashMap; @@ -12,10 +12,14 @@ import java.util.HashMap;
12 import java.util.List; 12 import java.util.List;
13 import java.util.Map; 13 import java.util.Map;
14 14
  15 +import org.springframework.jdbc.core.JdbcTemplate;
  16 +import org.springframework.jdbc.core.RowMapper;
15 import org.springframework.stereotype.Service; 17 import org.springframework.stereotype.Service;
  18 +import org.springframework.beans.factory.annotation.Autowired;
16 19
17 import com.bsth.data.BasicData; 20 import com.bsth.data.BasicData;
18 import com.bsth.entity.excep.Speeding; 21 import com.bsth.entity.excep.Speeding;
  22 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
19 import com.bsth.service.excep.SpeedingService; 23 import com.bsth.service.excep.SpeedingService;
20 import com.bsth.util.EchartConver; 24 import com.bsth.util.EchartConver;
21 import com.bsth.util.PageHelper; 25 import com.bsth.util.PageHelper;
@@ -27,7 +31,8 @@ import com.google.gson.Gson; @@ -27,7 +31,8 @@ import com.google.gson.Gson;
27 @Service 31 @Service
28 public class SpeedingServiceImpl implements SpeedingService { 32 public class SpeedingServiceImpl implements SpeedingService {
29 33
30 - 34 + @Autowired
  35 + JdbcTemplate jdbcTemplate;
31 static List<Speeding> findAll(Map<String, Object> map) { 36 static List<Speeding> findAll(Map<String, Object> map) {
32 Connection conn = null; 37 Connection conn = null;
33 PreparedStatement ps = null; 38 PreparedStatement ps = null;
@@ -45,6 +50,8 @@ public class SpeedingServiceImpl implements SpeedingService { @@ -45,6 +50,8 @@ public class SpeedingServiceImpl implements SpeedingService {
45 } 50 }
46 51
47 if(nbbm!=null){ 52 if(nbbm!=null){
  53 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  54 + if(nbbm!=null)
48 sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 55 sql +=" and vehicle like '%"+nbbm.toString()+"%'";
49 } 56 }
50 57
@@ -53,7 +60,7 @@ public class SpeedingServiceImpl implements SpeedingService { @@ -53,7 +60,7 @@ public class SpeedingServiceImpl implements SpeedingService {
53 } 60 }
54 if(date!=null){ 61 if(date!=null){
55 if (date.toString().length()>0) { 62 if (date.toString().length()>0) {
56 - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:MM:SS"); 63 + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
57 try { 64 try {
58 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime(); 65 Long t1=sdf.parse(date.toString()+" 00:00:00").getTime();
59 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime(); 66 Long t2=sdf.parse(date.toString()+" 23:59:59").getTime();
@@ -102,7 +109,7 @@ public class SpeedingServiceImpl implements SpeedingService { @@ -102,7 +109,7 @@ public class SpeedingServiceImpl implements SpeedingService {
102 speeding.setTimestamp((Long.valueOf(rs.getObject("timestamp").toString()))); 109 speeding.setTimestamp((Long.valueOf(rs.getObject("timestamp").toString())));
103 speeding.setTimestampDate(sdf.format(new Date(speeding.getTimestamp()))); 110 speeding.setTimestampDate(sdf.format(new Date(speeding.getTimestamp())));
104 speeding.setUpDown(Integer.valueOf(rs.getObject("up_down").toString())); 111 speeding.setUpDown(Integer.valueOf(rs.getObject("up_down").toString()));
105 - speeding.setVehicle(rs.getObject("vehicle").toString()); 112 + speeding.setVehicle(BasicData.deviceId2NbbmMap.get(rs.getObject("vehicle").toString()));
106 list.add(speeding); 113 list.add(speeding);
107 } 114 }
108 return list; 115 return list;
@@ -122,9 +129,10 @@ public class SpeedingServiceImpl implements SpeedingService { @@ -122,9 +129,10 @@ public class SpeedingServiceImpl implements SpeedingService {
122 } 129 }
123 130
124 if(nbbm!=null){ 131 if(nbbm!=null){
  132 + nbbm=BasicData.deviceId2NbbmMap.inverse().get(nbbm);
  133 + if(nbbm!=null)
125 sql +=" and vehicle like '%"+nbbm.toString()+"%'"; 134 sql +=" and vehicle like '%"+nbbm.toString()+"%'";
126 } 135 }
127 -  
128 if(updown!=null){ 136 if(updown!=null){
129 sql +="and up_down like '%"+updown.toString()+"%'"; 137 sql +="and up_down like '%"+updown.toString()+"%'";
130 } 138 }
@@ -163,7 +171,34 @@ public class SpeedingServiceImpl implements SpeedingService { @@ -163,7 +171,34 @@ public class SpeedingServiceImpl implements SpeedingService {
163 171
164 PageHelper pageHelper = new PageHelper(totalData, map); 172 PageHelper pageHelper = new PageHelper(totalData, map);
165 List<Speeding> list=findAll(pageHelper.getMap()); 173 List<Speeding> list=findAll(pageHelper.getMap());
166 - 174 + for (int i = 0; i < list.size(); i++) {
  175 + String nbbm2=list.get(i).getVehicle() ;
  176 + Long d1=list.get(i).getTimestamp();
  177 + Date datess = new Date(d1);
  178 + String dates=new SimpleDateFormat("yyyy-MM-dd").format(datess);
  179 + String sk=new SimpleDateFormat("HH:mm").format(datess);
  180 + String sqlPbb="select * from bsth_c_s_sp_info_real where cl_zbh='"+nbbm2+"' and"
  181 + + " real_exec_date='"+dates+"' ";
  182 +// + "and fcsj_actual > '"+sk+"' ";
  183 +// + "and '"+sk+"' <dfsj";
  184 + List<ScheduleRealInfo> pbb =jdbcTemplate.query(sqlPbb,
  185 + new RowMapper<ScheduleRealInfo>(){
  186 + @Override
  187 + public ScheduleRealInfo mapRow(ResultSet rs, int rowNum) throws SQLException {
  188 + ScheduleRealInfo s = new ScheduleRealInfo();
  189 + s.setjGh(rs.getString("j_gh"));
  190 + s.setjName(rs.getString("j_name"));
  191 + s.setLpName(rs.getString("lp_name"));
  192 + return s;
  193 + }
  194 + });
  195 + if(pbb.size()>0){
  196 + list.get(i).setJsy(pbb.get(0).getjGh()+"/"+pbb.get(0).getjName());
  197 + list.get(i).setLpname(pbb.get(0).getLpName());
  198 +
  199 + }
  200 +
  201 + }
167 PageObject<Speeding> pageObject = pageHelper.getPageObject(); 202 PageObject<Speeding> pageObject = pageHelper.getPageObject();
168 pageObject.setDataList(list); 203 pageObject.setDataList(list);
169 return pageObject; 204 return pageObject;
src/main/java/com/bsth/service/gps/entity/HistoryGps_DTO.java
1 -package com.bsth.service.gps.entity;  
2 -  
3 -import com.alibaba.fastjson.JSON;  
4 -import com.alibaba.fastjson.JSONObject;  
5 -import com.bsth.data.arrival.ArrivalEntity;  
6 -import com.fasterxml.jackson.annotation.JsonIgnore;  
7 -import com.vividsolutions.jts.geom.Coordinate;  
8 -import com.vividsolutions.jts.geom.GeometryFactory;  
9 -import com.vividsolutions.jts.geom.Point;  
10 -  
11 -import java.util.List;  
12 -import java.util.Map;  
13 -  
14 -/**  
15 - * 历史GPS DTO  
16 - * Created by panzhao on 2017/4/5.  
17 - */  
18 -public class HistoryGps_DTO {  
19 -  
20 - public static List<HistoryGps_DTO> craete(List<Map<String, Object>> mapList){  
21 - List<HistoryGps_DTO> list = JSONObject.parseArray(JSON.toJSONString(mapList), HistoryGps_DTO.class);  
22 -  
23 - GeometryFactory geometryFactory = new GeometryFactory();  
24 - Point point;  
25 - for(HistoryGps_DTO gps : list){  
26 - point = geometryFactory.createPoint(new Coordinate(gps.getLat(), gps.getLon()));  
27 - gps.setPoint(point);  
28 - }  
29 - return list;  
30 - }  
31 -  
32 - private double gcj_lon;  
33 - private double gcj_lat;  
34 -  
35 - private double bd_lon;  
36 - private double bd_lat;  
37 -  
38 - private double lon;  
39 - private double lat;  
40 -  
41 - private String deviceId;  
42 - private long ts;  
43 - private long timestamp;  
44 - private String stopNo;  
45 - private float direction;  
46 -  
47 - private String lineId;  
48 - private float speed;  
49 - private ArrivalEntity inout_stop_info;  
50 - private int inout_stop;  
51 -  
52 - private String nbbm;  
53 - private int state;  
54 - private int upDown;  
55 -  
56 - @JsonIgnore  
57 - private Point point;  
58 -  
59 - /** 路段 */  
60 - private Road_DTO road;  
61 - /** 和路段的最短距离 */  
62 - private double roadMinDistance;  
63 -  
64 - public double getGcj_lon() {  
65 - return gcj_lon;  
66 - }  
67 -  
68 - public void setGcj_lon(double gcj_lon) {  
69 - this.gcj_lon = gcj_lon;  
70 - }  
71 -  
72 - public double getGcj_lat() {  
73 - return gcj_lat;  
74 - }  
75 -  
76 - public void setGcj_lat(double gcj_lat) {  
77 - this.gcj_lat = gcj_lat;  
78 - }  
79 -  
80 - public double getBd_lon() {  
81 - return bd_lon;  
82 - }  
83 -  
84 - public void setBd_lon(double bd_lon) {  
85 - this.bd_lon = bd_lon;  
86 - }  
87 -  
88 - public double getBd_lat() {  
89 - return bd_lat;  
90 - }  
91 -  
92 - public void setBd_lat(double bd_lat) {  
93 - this.bd_lat = bd_lat;  
94 - }  
95 -  
96 - public String getDeviceId() {  
97 - return deviceId;  
98 - }  
99 -  
100 - public void setDeviceId(String deviceId) {  
101 - this.deviceId = deviceId;  
102 - }  
103 -  
104 - public long getTs() {  
105 - return ts;  
106 - }  
107 -  
108 - public void setTs(long ts) {  
109 - this.ts = ts;  
110 - }  
111 -  
112 - public long getTimestamp() {  
113 - return timestamp;  
114 - }  
115 -  
116 - public void setTimestamp(long timestamp) {  
117 - this.timestamp = timestamp;  
118 - }  
119 -  
120 - public String getStopNo() {  
121 - return stopNo;  
122 - }  
123 -  
124 - public void setStopNo(String stopNo) {  
125 - this.stopNo = stopNo;  
126 - }  
127 -  
128 - public float getDirection() {  
129 - return direction;  
130 - }  
131 -  
132 - public void setDirection(float direction) {  
133 - this.direction = direction;  
134 - }  
135 -  
136 - public String getLineId() {  
137 - return lineId;  
138 - }  
139 -  
140 - public void setLineId(String lineId) {  
141 - this.lineId = lineId;  
142 - }  
143 -  
144 - public float getSpeed() {  
145 - return speed;  
146 - }  
147 -  
148 - public void setSpeed(float speed) {  
149 - this.speed = speed;  
150 - }  
151 -  
152 - public ArrivalEntity getInout_stop_info() {  
153 - return inout_stop_info;  
154 - }  
155 -  
156 - public void setInout_stop_info(ArrivalEntity inout_stop_info) {  
157 - this.inout_stop_info = inout_stop_info;  
158 - }  
159 -  
160 - public int getInout_stop() {  
161 - return inout_stop;  
162 - }  
163 -  
164 - public void setInout_stop(int inout_stop) {  
165 - this.inout_stop = inout_stop;  
166 - }  
167 -  
168 - public String getNbbm() {  
169 - return nbbm;  
170 - }  
171 -  
172 - public void setNbbm(String nbbm) {  
173 - this.nbbm = nbbm;  
174 - }  
175 -  
176 - public int getState() {  
177 - return state;  
178 - }  
179 -  
180 - public void setState(int state) {  
181 - this.state = state;  
182 - }  
183 -  
184 - public int getUpDown() {  
185 - return upDown;  
186 - }  
187 -  
188 - public void setUpDown(int upDown) {  
189 - this.upDown = upDown;  
190 - }  
191 -  
192 - public Road_DTO getRoad() {  
193 - return road;  
194 - }  
195 -  
196 - public void setRoad(Road_DTO road) {  
197 - this.road = road;  
198 - }  
199 -  
200 - public double getRoadMinDistance() {  
201 - return roadMinDistance;  
202 - }  
203 -  
204 - public void setRoadMinDistance(double roadMinDistance) {  
205 - this.roadMinDistance = roadMinDistance;  
206 - }  
207 -  
208 - public double getLon() {  
209 - return lon;  
210 - }  
211 -  
212 - public void setLon(double lon) {  
213 - this.lon = lon;  
214 - }  
215 -  
216 - public double getLat() {  
217 - return lat;  
218 - }  
219 -  
220 - public void setLat(double lat) {  
221 - this.lat = lat;  
222 - }  
223 -  
224 - public Point getPoint() {  
225 - return point;  
226 - }  
227 -  
228 - public void setPoint(Point point) {  
229 - this.point = point;  
230 - }  
231 -} 1 +package com.bsth.service.gps.entity;
  2 +
  3 +import com.alibaba.fastjson.JSON;
  4 +import com.alibaba.fastjson.JSONObject;
  5 +import com.bsth.data.arrival.ArrivalEntity;
  6 +import com.fasterxml.jackson.annotation.JsonIgnore;
  7 +import com.vividsolutions.jts.geom.Coordinate;
  8 +import com.vividsolutions.jts.geom.GeometryFactory;
  9 +import com.vividsolutions.jts.geom.Point;
  10 +
  11 +import java.util.List;
  12 +import java.util.Map;
  13 +
  14 +/**
  15 + * 历史GPS DTO
  16 + * Created by panzhao on 2017/4/5.
  17 + */
  18 +public class HistoryGps_DTO {
  19 +
  20 + public static List<HistoryGps_DTO> craete(List<Map<String, Object>> mapList){
  21 + List<HistoryGps_DTO> list = JSONObject.parseArray(JSON.toJSONString(mapList), HistoryGps_DTO.class);
  22 +
  23 + GeometryFactory geometryFactory = new GeometryFactory();
  24 + Point point;
  25 + for(HistoryGps_DTO gps : list){
  26 + point = geometryFactory.createPoint(new Coordinate(gps.getLat(), gps.getLon()));
  27 + gps.setPoint(point);
  28 + }
  29 + return list;
  30 + }
  31 +
  32 + private double gcj_lon;
  33 + private double gcj_lat;
  34 +
  35 + private double bd_lon;
  36 + private double bd_lat;
  37 +
  38 + private double lon;
  39 + private double lat;
  40 +
  41 + private String deviceId;
  42 + private long ts;
  43 + private long timestamp;
  44 + private String stopNo;
  45 + private float direction;
  46 +
  47 + private String lineId;
  48 + private float speed;
  49 + private ArrivalEntity inout_stop_info;
  50 + private int inout_stop;
  51 +
  52 + private String nbbm;
  53 + private int state;
  54 + private int upDown;
  55 +
  56 + @JsonIgnore
  57 + private Point point;
  58 +
  59 + /** 路段 */
  60 + private Road_DTO road;
  61 + /** 和路段的最短距离 */
  62 + private double roadMinDistance;
  63 +
  64 + public double getGcj_lon() {
  65 + return gcj_lon;
  66 + }
  67 +
  68 + public void setGcj_lon(double gcj_lon) {
  69 + this.gcj_lon = gcj_lon;
  70 + }
  71 +
  72 + public double getGcj_lat() {
  73 + return gcj_lat;
  74 + }
  75 +
  76 + public void setGcj_lat(double gcj_lat) {
  77 + this.gcj_lat = gcj_lat;
  78 + }
  79 +
  80 + public double getBd_lon() {
  81 + return bd_lon;
  82 + }
  83 +
  84 + public void setBd_lon(double bd_lon) {
  85 + this.bd_lon = bd_lon;
  86 + }
  87 +
  88 + public double getBd_lat() {
  89 + return bd_lat;
  90 + }
  91 +
  92 + public void setBd_lat(double bd_lat) {
  93 + this.bd_lat = bd_lat;
  94 + }
  95 +
  96 + public String getDeviceId() {
  97 + return deviceId;
  98 + }
  99 +
  100 + public void setDeviceId(String deviceId) {
  101 + this.deviceId = deviceId;
  102 + }
  103 +
  104 + public long getTs() {
  105 + return ts;
  106 + }
  107 +
  108 + public void setTs(long ts) {
  109 + this.ts = ts;
  110 + }
  111 +
  112 + public long getTimestamp() {
  113 + return timestamp;
  114 + }
  115 +
  116 + public void setTimestamp(long timestamp) {
  117 + this.timestamp = timestamp;
  118 + }
  119 +
  120 + public String getStopNo() {
  121 + return stopNo;
  122 + }
  123 +
  124 + public void setStopNo(String stopNo) {
  125 + this.stopNo = stopNo;
  126 + }
  127 +
  128 + public float getDirection() {
  129 + return direction;
  130 + }
  131 +
  132 + public void setDirection(float direction) {
  133 + this.direction = direction;
  134 + }
  135 +
  136 + public String getLineId() {
  137 + return lineId;
  138 + }
  139 +
  140 + public void setLineId(String lineId) {
  141 + this.lineId = lineId;
  142 + }
  143 +
  144 + public float getSpeed() {
  145 + return speed;
  146 + }
  147 +
  148 + public void setSpeed(float speed) {
  149 + this.speed = speed;
  150 + }
  151 +
  152 + public ArrivalEntity getInout_stop_info() {
  153 + return inout_stop_info;
  154 + }
  155 +
  156 + public void setInout_stop_info(ArrivalEntity inout_stop_info) {
  157 + this.inout_stop_info = inout_stop_info;
  158 + }
  159 +
  160 + public int getInout_stop() {
  161 + return inout_stop;
  162 + }
  163 +
  164 + public void setInout_stop(int inout_stop) {
  165 + this.inout_stop = inout_stop;
  166 + }
  167 +
  168 + public String getNbbm() {
  169 + return nbbm;
  170 + }
  171 +
  172 + public void setNbbm(String nbbm) {
  173 + this.nbbm = nbbm;
  174 + }
  175 +
  176 + public int getState() {
  177 + return state;
  178 + }
  179 +
  180 + public void setState(int state) {
  181 + this.state = state;
  182 + }
  183 +
  184 + public int getUpDown() {
  185 + return upDown;
  186 + }
  187 +
  188 + public void setUpDown(int upDown) {
  189 + this.upDown = upDown;
  190 + }
  191 +
  192 + public Road_DTO getRoad() {
  193 + return road;
  194 + }
  195 +
  196 + public void setRoad(Road_DTO road) {
  197 + this.road = road;
  198 + }
  199 +
  200 + public double getRoadMinDistance() {
  201 + return roadMinDistance;
  202 + }
  203 +
  204 + public void setRoadMinDistance(double roadMinDistance) {
  205 + this.roadMinDistance = roadMinDistance;
  206 + }
  207 +
  208 + public double getLon() {
  209 + return lon;
  210 + }
  211 +
  212 + public void setLon(double lon) {
  213 + this.lon = lon;
  214 + }
  215 +
  216 + public double getLat() {
  217 + return lat;
  218 + }
  219 +
  220 + public void setLat(double lat) {
  221 + this.lat = lat;
  222 + }
  223 +
  224 + public Point getPoint() {
  225 + return point;
  226 + }
  227 +
  228 + public void setPoint(Point point) {
  229 + this.point = point;
  230 + }
  231 +}
src/main/java/com/bsth/service/gps/entity/Road_DTO.java
1 -package com.bsth.service.gps.entity;  
2 -  
3 -import com.alibaba.fastjson.JSON;  
4 -import com.alibaba.fastjson.JSONObject;  
5 -import com.fasterxml.jackson.annotation.JsonIgnore;  
6 -import com.vividsolutions.jts.geom.Coordinate;  
7 -import com.vividsolutions.jts.geom.GeometryFactory;  
8 -import com.vividsolutions.jts.geom.LineString;  
9 -  
10 -import java.util.ArrayList;  
11 -import java.util.List;  
12 -import java.util.Map;  
13 -  
14 -/**  
15 - * 路段信息DTO  
16 - * Created by panzhao on 2017/4/5.  
17 - */  
18 -public class Road_DTO {  
19 -  
20 - public static List<Road_DTO> craete(List<Map<String, Object>> mapList){  
21 - List<Road_DTO> list = JSONObject.parseArray(JSON.toJSONString(mapList), Road_DTO.class);  
22 - //处理路段坐标  
23 - String polygonStr;  
24 - String[] coords;  
25 - int i, len;  
26 - String[] temps;//1, temps2;  
27 - List<Coordinate> cds;  
28 -  
29 - GeometryFactory geometryFactory = new GeometryFactory();  
30 - for(Road_DTO road : list){  
31 - polygonStr = road.getGROAD_VECTOR();  
32 - coords = polygonStr.substring(11, polygonStr.length() - 1).split(",");  
33 - len = coords.length;  
34 -  
35 - cds = new ArrayList<>();  
36 - //每2个点连一条线  
37 - for(i = 0; i < len; i ++){  
38 - temps = coords[i].split(" ");  
39 - cds.add(new Coordinate(Float.parseFloat(temps[1]), Float.parseFloat(temps[0])));  
40 - }  
41 -  
42 - Coordinate[] cdsArray = new Coordinate[cds.size()];  
43 - road.setLineStr(geometryFactory.createLineString(cds.toArray(cdsArray)));  
44 - }  
45 - return list;  
46 - }  
47 -  
48 - private long ID;  
49 -  
50 - @JsonIgnore  
51 - private String GROAD_VECTOR;  
52 -  
53 - private String ROAD_CODE;  
54 -  
55 - private String ROAD_NAME;  
56 -  
57 - private double SPEED;  
58 -  
59 - @JsonIgnore  
60 - private LineString lineStr;  
61 -  
62 - public long getID() {  
63 - return ID;  
64 - }  
65 -  
66 - public void setID(long ID) {  
67 - this.ID = ID;  
68 - }  
69 -  
70 - public String getGROAD_VECTOR() {  
71 - return GROAD_VECTOR;  
72 - }  
73 -  
74 - public void setGROAD_VECTOR(String GROAD_VECTOR) {  
75 - this.GROAD_VECTOR = GROAD_VECTOR;  
76 - }  
77 -  
78 - public String getROAD_CODE() {  
79 - return ROAD_CODE;  
80 - }  
81 -  
82 - public void setROAD_CODE(String ROAD_CODE) {  
83 - this.ROAD_CODE = ROAD_CODE;  
84 - }  
85 -  
86 - public String getROAD_NAME() {  
87 - return ROAD_NAME;  
88 - }  
89 -  
90 - public void setROAD_NAME(String ROAD_NAME) {  
91 - this.ROAD_NAME = ROAD_NAME;  
92 - }  
93 -  
94 - public double getSPEED() {  
95 - return SPEED;  
96 - }  
97 -  
98 - public void setSPEED(double SPEED) {  
99 - this.SPEED = SPEED;  
100 - }  
101 -  
102 - public LineString getLineStr() {  
103 - return lineStr;  
104 - }  
105 -  
106 - public void setLineStr(LineString lineStr) {  
107 - this.lineStr = lineStr;  
108 - }  
109 -} 1 +package com.bsth.service.gps.entity;
  2 +
  3 +import com.alibaba.fastjson.JSON;
  4 +import com.alibaba.fastjson.JSONObject;
  5 +import com.fasterxml.jackson.annotation.JsonIgnore;
  6 +import com.vividsolutions.jts.geom.Coordinate;
  7 +import com.vividsolutions.jts.geom.GeometryFactory;
  8 +import com.vividsolutions.jts.geom.LineString;
  9 +
  10 +import java.util.ArrayList;
  11 +import java.util.List;
  12 +import java.util.Map;
  13 +
  14 +/**
  15 + * 路段信息DTO
  16 + * Created by panzhao on 2017/4/5.
  17 + */
  18 +public class Road_DTO {
  19 +
  20 + public static List<Road_DTO> craete(List<Map<String, Object>> mapList){
  21 + List<Road_DTO> list = JSONObject.parseArray(JSON.toJSONString(mapList), Road_DTO.class);
  22 + //处理路段坐标
  23 + String polygonStr;
  24 + String[] coords;
  25 + int i, len;
  26 + String[] temps;//1, temps2;
  27 + List<Coordinate> cds;
  28 +
  29 + GeometryFactory geometryFactory = new GeometryFactory();
  30 + for(Road_DTO road : list){
  31 + polygonStr = road.getGROAD_VECTOR();
  32 + coords = polygonStr.substring(11, polygonStr.length() - 1).split(",");
  33 + len = coords.length;
  34 +
  35 + cds = new ArrayList<>();
  36 + //每2个点连一条线
  37 + for(i = 0; i < len; i ++){
  38 + temps = coords[i].split(" ");
  39 + cds.add(new Coordinate(Float.parseFloat(temps[1]), Float.parseFloat(temps[0])));
  40 + }
  41 +
  42 + Coordinate[] cdsArray = new Coordinate[cds.size()];
  43 + road.setLineStr(geometryFactory.createLineString(cds.toArray(cdsArray)));
  44 + }
  45 + return list;
  46 + }
  47 +
  48 + private long ID;
  49 +
  50 + @JsonIgnore
  51 + private String GROAD_VECTOR;
  52 +
  53 + private String ROAD_CODE;
  54 +
  55 + private String ROAD_NAME;
  56 +
  57 + private double SPEED;
  58 +
  59 + @JsonIgnore
  60 + private LineString lineStr;
  61 +
  62 + public long getID() {
  63 + return ID;
  64 + }
  65 +
  66 + public void setID(long ID) {
  67 + this.ID = ID;
  68 + }
  69 +
  70 + public String getGROAD_VECTOR() {
  71 + return GROAD_VECTOR;
  72 + }
  73 +
  74 + public void setGROAD_VECTOR(String GROAD_VECTOR) {
  75 + this.GROAD_VECTOR = GROAD_VECTOR;
  76 + }
  77 +
  78 + public String getROAD_CODE() {
  79 + return ROAD_CODE;
  80 + }
  81 +
  82 + public void setROAD_CODE(String ROAD_CODE) {
  83 + this.ROAD_CODE = ROAD_CODE;
  84 + }
  85 +
  86 + public String getROAD_NAME() {
  87 + return ROAD_NAME;
  88 + }
  89 +
  90 + public void setROAD_NAME(String ROAD_NAME) {
  91 + this.ROAD_NAME = ROAD_NAME;
  92 + }
  93 +
  94 + public double getSPEED() {
  95 + return SPEED;
  96 + }
  97 +
  98 + public void setSPEED(double SPEED) {
  99 + this.SPEED = SPEED;
  100 + }
  101 +
  102 + public LineString getLineStr() {
  103 + return lineStr;
  104 + }
  105 +
  106 + public void setLineStr(LineString lineStr) {
  107 + this.lineStr = lineStr;
  108 + }
  109 +}
src/main/java/com/bsth/service/impl/StationRouteServiceImpl.java
@@ -1100,4 +1100,24 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1100,4 +1100,24 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1100 } 1100 }
1101 return rs; 1101 return rs;
1102 } 1102 }
  1103 +
  1104 + @Override
  1105 + @Transactional
  1106 + public Map<String, Object> upddis(Map<String, Object> map) {
  1107 + Map<String, Object> rs = new HashMap<>();
  1108 + try{
  1109 + Iterator it = map.entrySet().iterator();
  1110 + while(it.hasNext()){
  1111 + java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
  1112 + Integer id = Integer.parseInt(entry.getKey().toString().split("_")[1]); //返回对应的键
  1113 + Double dis = Double.parseDouble(entry.getValue().toString()) / 1000; //返回对应的值
  1114 + repository.upddis(id, dis);
  1115 + }
  1116 + rs.put("status", ResponseCode.SUCCESS);
  1117 + }catch(Exception e){
  1118 + logger.error("", e);
  1119 + rs.put("status", ResponseCode.ERROR);
  1120 + }
  1121 + return rs;
  1122 + }
1103 } 1123 }
src/main/java/com/bsth/websocket/handler/RealControlSocketHandler.java
@@ -94,7 +94,7 @@ public class RealControlSocketHandler implements WebSocketHandler { @@ -94,7 +94,7 @@ public class RealControlSocketHandler implements WebSocketHandler {
94 /** 94 /**
95 * 根据线路推送消息 95 * 根据线路推送消息
96 */ 96 */
97 - public synchronized void sendMessageToLine(String lineCode, String msg) { 97 + public void sendMessageToLine(String lineCode, String msg) {
98 98
99 TextMessage message = new TextMessage(msg.getBytes()); 99 TextMessage message = new TextMessage(msg.getBytes());
100 100
@@ -117,4 +117,28 @@ public class RealControlSocketHandler implements WebSocketHandler { @@ -117,4 +117,28 @@ public class RealControlSocketHandler implements WebSocketHandler {
117 } 117 }
118 } 118 }
119 } 119 }
  120 +
  121 +
  122 +
  123 + /**
  124 + * 全局推送
  125 + */
  126 + public void sendMessage(String msg) {
  127 +
  128 + TextMessage message = new TextMessage(msg.getBytes());
  129 +
  130 + Iterator<WebSocketSession> iterator = users.iterator();
  131 +
  132 + WebSocketSession user;
  133 + while(iterator.hasNext()){
  134 + user = iterator.next();
  135 + try {
  136 + if (user.isOpen()) {
  137 + user.sendMessage(message);
  138 + }
  139 + } catch (Exception e) {
  140 + logger.error("sendMessage error ...."+msg);
  141 + }
  142 + }
  143 + }
120 } 144 }
src/main/java/com/bsth/websocket/handler/SendUtils.java
@@ -5,6 +5,7 @@ import com.bsth.data.BasicData; @@ -5,6 +5,7 @@ import com.bsth.data.BasicData;
5 import com.bsth.data.LineConfigData; 5 import com.bsth.data.LineConfigData;
6 import com.bsth.data.gpsdata.GpsEntity; 6 import com.bsth.data.gpsdata.GpsEntity;
7 import com.bsth.data.gpsdata.arrival.entity.SignalState; 7 import com.bsth.data.gpsdata.arrival.entity.SignalState;
  8 +import com.bsth.data.safe_driv.SafeDriv;
8 import com.bsth.entity.directive.D80; 9 import com.bsth.entity.directive.D80;
9 import com.bsth.entity.realcontrol.ScheduleRealInfo; 10 import com.bsth.entity.realcontrol.ScheduleRealInfo;
10 import com.fasterxml.jackson.core.JsonProcessingException; 11 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -184,4 +185,18 @@ public class SendUtils{ @@ -184,4 +185,18 @@ public class SendUtils{
184 logger.error("", e); 185 logger.error("", e);
185 } 186 }
186 } 187 }
  188 +
  189 + public void sendSafeDriv(SafeDriv sd){
  190 + Map<String, Object> map = new HashMap<>();
  191 + map.put("fn", "safeDriv");
  192 + map.put("t", sd);;
  193 + ObjectMapper mapper = new ObjectMapper();
  194 +
  195 + try {
  196 + socketHandler.sendMessage(mapper.writeValueAsString(map));
  197 +
  198 + } catch (JsonProcessingException e) {
  199 + logger.error("", e);
  200 + }
  201 + }
187 } 202 }
src/main/resources/datatools/ktrs/ttinfodetailoutputforedit.ktr
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<transformation>  
3 - <info>  
4 - <name>ttinfodetailoutputforedit</name>  
5 - <description/>  
6 - <extended_description/>  
7 - <trans_version/>  
8 - <trans_type>Normal</trans_type>  
9 - <trans_status>0</trans_status>  
10 - <directory>&#x2f;</directory>  
11 - <parameters>  
12 - <parameter>  
13 - <name>tempfilepath</name>  
14 - <default_value>&#x2f;Users&#x2f;xu&#x2f;resource&#x2f;project_code&#x2f;runtime_temp&#x2f;bsth_control_u_d_files&#x2f;temp&#x2f;test</default_value>  
15 - <description>&#x9ed8;&#x8ba4;&#x8f93;&#x51fa;&#x7684;&#x6587;&#x4ef6;&#x8def;&#x5f84;&#x540d;</description>  
16 - </parameter>  
17 - <parameter>  
18 - <name>ttid</name>  
19 - <default_value>79</default_value>  
20 - <description>&#x65f6;&#x523b;&#x8868;id</description>  
21 - </parameter>  
22 - <parameter>  
23 - <name>xlid</name>  
24 - <default_value>63020</default_value>  
25 - <description>&#x7ebf;&#x8def;id</description>  
26 - </parameter>  
27 - </parameters>  
28 - <log>  
29 -<trans-log-table><connection/>  
30 -<schema/>  
31 -<table/>  
32 -<size_limit_lines/>  
33 -<interval/>  
34 -<timeout_days/>  
35 -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>  
36 -<perf-log-table><connection/>  
37 -<schema/>  
38 -<table/>  
39 -<interval/>  
40 -<timeout_days/>  
41 -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>  
42 -<channel-log-table><connection/>  
43 -<schema/>  
44 -<table/>  
45 -<timeout_days/>  
46 -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>  
47 -<step-log-table><connection/>  
48 -<schema/>  
49 -<table/>  
50 -<timeout_days/>  
51 -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>  
52 -<metrics-log-table><connection/>  
53 -<schema/>  
54 -<table/>  
55 -<timeout_days/>  
56 -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>  
57 - </log>  
58 - <maxdate>  
59 - <connection/>  
60 - <table/>  
61 - <field/>  
62 - <offset>0.0</offset>  
63 - <maxdiff>0.0</maxdiff>  
64 - </maxdate>  
65 - <size_rowset>10000</size_rowset>  
66 - <sleep_time_empty>50</sleep_time_empty>  
67 - <sleep_time_full>50</sleep_time_full>  
68 - <unique_connections>N</unique_connections>  
69 - <feedback_shown>Y</feedback_shown>  
70 - <feedback_size>50000</feedback_size>  
71 - <using_thread_priorities>Y</using_thread_priorities>  
72 - <shared_objects_file/>  
73 - <capture_step_performance>N</capture_step_performance>  
74 - <step_performance_capturing_delay>1000</step_performance_capturing_delay>  
75 - <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>  
76 - <dependencies>  
77 - </dependencies>  
78 - <partitionschemas>  
79 - </partitionschemas>  
80 - <slaveservers>  
81 - </slaveservers>  
82 - <clusterschemas>  
83 - </clusterschemas>  
84 - <created_user>-</created_user>  
85 - <created_date>2016&#x2f;07&#x2f;11 21&#x3a;45&#x3a;05.041</created_date>  
86 - <modified_user>-</modified_user>  
87 - <modified_date>2016&#x2f;07&#x2f;11 21&#x3a;45&#x3a;05.041</modified_date>  
88 - <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>  
89 - <is_key_private>N</is_key_private>  
90 - </info>  
91 - <notepads>  
92 - <notepad>  
93 - <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>  
94 - <xloc>45</xloc>  
95 - <yloc>261</yloc>  
96 - <width>333</width>  
97 - <heigth>90</heigth>  
98 - <fontname>YaHei Consolas Hybrid</fontname>  
99 - <fontsize>12</fontsize>  
100 - <fontbold>N</fontbold>  
101 - <fontitalic>N</fontitalic>  
102 - <fontcolorred>0</fontcolorred>  
103 - <fontcolorgreen>0</fontcolorgreen>  
104 - <fontcolorblue>0</fontcolorblue>  
105 - <backgroundcolorred>255</backgroundcolorred>  
106 - <backgroundcolorgreen>205</backgroundcolorgreen>  
107 - <backgroundcolorblue>112</backgroundcolorblue>  
108 - <bordercolorred>100</bordercolorred>  
109 - <bordercolorgreen>100</bordercolorgreen>  
110 - <bordercolorblue>100</bordercolorblue>  
111 - <drawshadow>Y</drawshadow>  
112 - </notepad>  
113 - <notepad>  
114 - <note>&#x6b64;&#x5904;&#x8f6c;&#x6362;excel&#x6709;&#x95ee;&#x9898;&#xff0c;&#xa;2003&#x683c;&#x5f0f;&#x7684;xls&#x6700;&#x591a;256&#x5217;&#xff0c;&#xa;&#x8fd9;&#x91cc;&#x660e;&#x663e;&#x8d85;&#x8fc7;&#xff0c;&#x6240;&#x4ee5;&#x628a;&#x6240;&#x6709;&#x5185;&#x5bb9;&#x5408;&#x5e76;&#x6210;1&#x5217;&#xff0c;&#xa;&#x7528;,&#x5206;&#x9694;</note>  
115 - <xloc>256</xloc>  
116 - <yloc>397</yloc>  
117 - <width>245</width>  
118 - <heigth>74</heigth>  
119 - <fontname>YaHei Consolas Hybrid</fontname>  
120 - <fontsize>12</fontsize>  
121 - <fontbold>N</fontbold>  
122 - <fontitalic>N</fontitalic>  
123 - <fontcolorred>0</fontcolorred>  
124 - <fontcolorgreen>0</fontcolorgreen>  
125 - <fontcolorblue>0</fontcolorblue>  
126 - <backgroundcolorred>255</backgroundcolorred>  
127 - <backgroundcolorgreen>205</backgroundcolorgreen>  
128 - <backgroundcolorblue>112</backgroundcolorblue>  
129 - <bordercolorred>100</bordercolorred>  
130 - <bordercolorgreen>100</bordercolorgreen>  
131 - <bordercolorblue>100</bordercolorblue>  
132 - <drawshadow>Y</drawshadow>  
133 - </notepad>  
134 - </notepads>  
135 - <connection>  
136 - <name>bus_control_variable</name>  
137 - <server>&#x24;&#x7b;v_db_ip&#x7d;</server>  
138 - <type>MYSQL</type>  
139 - <access>Native</access>  
140 - <database>&#x24;&#x7b;v_db_dname&#x7d;</database>  
141 - <port>3306</port>  
142 - <username>&#x24;&#x7b;v_db_uname&#x7d;</username>  
143 - <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>  
144 - <servername/>  
145 - <data_tablespace/>  
146 - <index_tablespace/>  
147 - <attributes>  
148 - <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>  
149 - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>  
150 - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>  
151 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
152 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
153 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
154 - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>  
155 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
156 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
157 - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>  
158 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>  
159 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>  
160 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
161 - </attributes>  
162 - </connection>  
163 - <connection>  
164 - <name>bus_control_&#x516c;&#x53f8;_201</name>  
165 - <server>localhost</server>  
166 - <type>MYSQL</type>  
167 - <access>Native</access>  
168 - <database>control</database>  
169 - <port>3306</port>  
170 - <username>root</username>  
171 - <password>Encrypted </password>  
172 - <servername/>  
173 - <data_tablespace/>  
174 - <index_tablespace/>  
175 - <attributes>  
176 - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>  
177 - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>  
178 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
179 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
180 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
181 - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>  
182 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
183 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
184 - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>  
185 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>  
186 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>  
187 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
188 - </attributes>  
189 - </connection>  
190 - <connection>  
191 - <name>bus_control_&#x672c;&#x673a;</name>  
192 - <server>localhost</server>  
193 - <type>MYSQL</type>  
194 - <access>Native</access>  
195 - <database>control</database>  
196 - <port>3306</port>  
197 - <username>root</username>  
198 - <password>Encrypted </password>  
199 - <servername/>  
200 - <data_tablespace/>  
201 - <index_tablespace/>  
202 - <attributes>  
203 - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>  
204 - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>  
205 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
206 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
207 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
208 - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>  
209 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
210 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
211 - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>  
212 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>  
213 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>  
214 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
215 - </attributes>  
216 - </connection>  
217 - <connection>  
218 - <name>xlab_mysql_youle</name>  
219 - <server>101.231.124.8</server>  
220 - <type>MYSQL</type>  
221 - <access>Native</access>  
222 - <database>xlab_youle</database>  
223 - <port>45687</port>  
224 - <username>xlab-youle</username>  
225 - <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>  
226 - <servername/>  
227 - <data_tablespace/>  
228 - <index_tablespace/>  
229 - <attributes>  
230 - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>  
231 - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>  
232 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
233 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
234 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
235 - <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>  
236 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
237 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
238 - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>  
239 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>  
240 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>  
241 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
242 - </attributes>  
243 - </connection>  
244 - <connection>  
245 - <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>  
246 - <server>localhost</server>  
247 - <type>MYSQL</type>  
248 - <access>Native</access>  
249 - <database>xlab_youle</database>  
250 - <port>3306</port>  
251 - <username>root</username>  
252 - <password>Encrypted </password>  
253 - <servername/>  
254 - <data_tablespace/>  
255 - <index_tablespace/>  
256 - <attributes>  
257 - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>  
258 - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>  
259 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
260 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
261 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
262 - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>  
263 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
264 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
265 - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>  
266 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>  
267 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>  
268 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
269 - </attributes>  
270 - </connection>  
271 - <connection>  
272 - <name>xlab_youle</name>  
273 - <server/>  
274 - <type>MYSQL</type>  
275 - <access>JNDI</access>  
276 - <database>xlab_youle</database>  
277 - <port>1521</port>  
278 - <username/>  
279 - <password>Encrypted </password>  
280 - <servername/>  
281 - <data_tablespace/>  
282 - <index_tablespace/>  
283 - <attributes>  
284 - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>  
285 - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>  
286 - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>  
287 - <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>  
288 - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>  
289 - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>  
290 - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>  
291 - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>  
292 - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>  
293 - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>  
294 - </attributes>  
295 - </connection>  
296 - <order>  
297 - <hop> <from>&#x8868;&#x8f93;&#x5165;</from><to>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>  
298 - <hop> <from>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</from><to>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</to><enabled>Y</enabled> </hop>  
299 - <hop> <from>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</from><to>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</to><enabled>Y</enabled> </hop>  
300 - <hop> <from>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</from><to>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</to><enabled>Y</enabled> </hop>  
301 - <hop> <from>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</from><to>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</to><enabled>Y</enabled> </hop>  
302 - <hop> <from>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>  
303 - <hop> <from>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</to><enabled>Y</enabled> </hop>  
304 - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>  
305 - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>  
306 - <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</to><enabled>Y</enabled> </hop>  
307 - <hop> <from>&#x5217;&#x8f6c;&#x884c;</from><to>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</to><enabled>Y</enabled> </hop>  
308 - <hop> <from>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>  
309 - <hop> <from>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</from><to>&#x8868;&#x8f93;&#x5165;</to><enabled>Y</enabled> </hop>  
310 - <hop> <from>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</from><to>&#x5408;&#x5e76;&#x5185;&#x5bb9;</to><enabled>Y</enabled> </hop>  
311 - <hop> <from>&#x5408;&#x5e76;&#x5185;&#x5bb9;</from><to>&#x5217;&#x8f6c;&#x884c;</to><enabled>Y</enabled> </hop>  
312 - <hop> <from>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</from><to>&#x6587;&#x672c;&#x6587;&#x4ef6;&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>  
313 - </order>  
314 - <step>  
315 - <name>Excel&#x8f93;&#x51fa;</name>  
316 - <type>ExcelOutput</type>  
317 - <description/>  
318 - <distribute>Y</distribute>  
319 - <custom_distribution/>  
320 - <copies>1</copies>  
321 - <partitioning>  
322 - <method>none</method>  
323 - <schema_name/>  
324 - </partitioning>  
325 - <header>Y</header>  
326 - <footer>N</footer>  
327 - <encoding/>  
328 - <append>N</append>  
329 - <add_to_result_filenames>Y</add_to_result_filenames>  
330 - <file>  
331 - <name>&#x24;&#x7b;tempfilepath&#x7d;</name>  
332 - <extention>xls</extention>  
333 - <do_not_open_newfile_init>N</do_not_open_newfile_init>  
334 - <create_parent_folder>N</create_parent_folder>  
335 - <split>N</split>  
336 - <add_date>N</add_date>  
337 - <add_time>N</add_time>  
338 - <SpecifyFormat>N</SpecifyFormat>  
339 - <date_time_format/>  
340 - <sheetname>Sheet1</sheetname>  
341 - <autosizecolums>N</autosizecolums>  
342 - <nullisblank>N</nullisblank>  
343 - <protect_sheet>N</protect_sheet>  
344 - <password>Encrypted </password>  
345 - <splitevery>0</splitevery>  
346 - <usetempfiles>N</usetempfiles>  
347 - <tempdirectory/>  
348 - </file>  
349 - <template>  
350 - <enabled>N</enabled>  
351 - <append>N</append>  
352 - <filename>template.xls</filename>  
353 - </template>  
354 - <fields>  
355 - <field>  
356 - <name>lp</name>  
357 - <type>String</type>  
358 - <format/>  
359 - </field>  
360 - <field>  
361 - <name>fcno1</name>  
362 - <type>String</type>  
363 - <format/>  
364 - </field>  
365 - <field>  
366 - <name>fcno2</name>  
367 - <type>String</type>  
368 - <format/>  
369 - </field>  
370 - <field>  
371 - <name>fcno3</name>  
372 - <type>String</type>  
373 - <format/>  
374 - </field>  
375 - <field>  
376 - <name>fcno4</name>  
377 - <type>String</type>  
378 - <format/>  
379 - </field>  
380 - <field>  
381 - <name>fcno5</name>  
382 - <type>String</type>  
383 - <format/>  
384 - </field>  
385 - <field>  
386 - <name>fcno6</name>  
387 - <type>String</type>  
388 - <format/>  
389 - </field>  
390 - <field>  
391 - <name>fcno7</name>  
392 - <type>String</type>  
393 - <format/>  
394 - </field>  
395 - <field>  
396 - <name>fcno8</name>  
397 - <type>String</type>  
398 - <format/>  
399 - </field>  
400 - <field>  
401 - <name>fcno9</name>  
402 - <type>String</type>  
403 - <format/>  
404 - </field>  
405 - <field>  
406 - <name>fcno10</name>  
407 - <type>String</type>  
408 - <format/>  
409 - </field>  
410 - <field>  
411 - <name>fcno11</name>  
412 - <type>String</type>  
413 - <format/>  
414 - </field>  
415 - <field>  
416 - <name>fcno12</name>  
417 - <type>String</type>  
418 - <format/>  
419 - </field>  
420 - <field>  
421 - <name>fcno13</name>  
422 - <type>String</type>  
423 - <format/>  
424 - </field>  
425 - <field>  
426 - <name>fcno14</name>  
427 - <type>String</type>  
428 - <format/>  
429 - </field>  
430 - <field>  
431 - <name>fcno15</name>  
432 - <type>String</type>  
433 - <format/>  
434 - </field>  
435 - <field>  
436 - <name>fcno16</name>  
437 - <type>String</type>  
438 - <format/>  
439 - </field>  
440 - <field>  
441 - <name>fcno17</name>  
442 - <type>String</type>  
443 - <format/>  
444 - </field>  
445 - <field>  
446 - <name>fcno18</name>  
447 - <type>String</type>  
448 - <format/>  
449 - </field>  
450 - <field>  
451 - <name>fcno19</name>  
452 - <type>String</type>  
453 - <format/>  
454 - </field>  
455 - <field>  
456 - <name>fcno20</name>  
457 - <type>String</type>  
458 - <format/>  
459 - </field>  
460 - <field>  
461 - <name>fcno21</name>  
462 - <type>String</type>  
463 - <format/>  
464 - </field>  
465 - <field>  
466 - <name>fcno22</name>  
467 - <type>String</type>  
468 - <format/>  
469 - </field>  
470 - <field>  
471 - <name>fcno23</name>  
472 - <type>String</type>  
473 - <format/>  
474 - </field>  
475 - <field>  
476 - <name>fcno24</name>  
477 - <type>String</type>  
478 - <format/>  
479 - </field>  
480 - <field>  
481 - <name>fcno25</name>  
482 - <type>String</type>  
483 - <format/>  
484 - </field>  
485 - <field>  
486 - <name>fcno26</name>  
487 - <type>String</type>  
488 - <format/>  
489 - </field>  
490 - <field>  
491 - <name>fcno27</name>  
492 - <type>String</type>  
493 - <format/>  
494 - </field>  
495 - <field>  
496 - <name>fcno28</name>  
497 - <type>String</type>  
498 - <format/>  
499 - </field>  
500 - <field>  
501 - <name>fcno29</name>  
502 - <type>String</type>  
503 - <format/>  
504 - </field>  
505 - <field>  
506 - <name>fcno30</name>  
507 - <type>String</type>  
508 - <format/>  
509 - </field>  
510 - <field>  
511 - <name>fcno31</name>  
512 - <type>String</type>  
513 - <format/>  
514 - </field>  
515 - <field>  
516 - <name>fcno32</name>  
517 - <type>String</type>  
518 - <format/>  
519 - </field>  
520 - <field>  
521 - <name>fcno33</name>  
522 - <type>String</type>  
523 - <format/>  
524 - </field>  
525 - <field>  
526 - <name>fcno34</name>  
527 - <type>String</type>  
528 - <format/>  
529 - </field>  
530 - <field>  
531 - <name>fcno35</name>  
532 - <type>String</type>  
533 - <format/>  
534 - </field>  
535 - <field>  
536 - <name>fcno36</name>  
537 - <type>String</type>  
538 - <format/>  
539 - </field>  
540 - <field>  
541 - <name>fcno37</name>  
542 - <type>String</type>  
543 - <format/>  
544 - </field>  
545 - <field>  
546 - <name>fcno38</name>  
547 - <type>String</type>  
548 - <format/>  
549 - </field>  
550 - <field>  
551 - <name>fcno39</name>  
552 - <type>String</type>  
553 - <format/>  
554 - </field>  
555 - <field>  
556 - <name>fcno40</name>  
557 - <type>String</type>  
558 - <format/>  
559 - </field>  
560 - <field>  
561 - <name>fcno41</name>  
562 - <type>String</type>  
563 - <format/>  
564 - </field>  
565 - <field>  
566 - <name>fcno42</name>  
567 - <type>String</type>  
568 - <format/>  
569 - </field>  
570 - <field>  
571 - <name>fcno43</name>  
572 - <type>String</type>  
573 - <format/>  
574 - </field>  
575 - <field>  
576 - <name>fcno44</name>  
577 - <type>String</type>  
578 - <format/>  
579 - </field>  
580 - <field>  
581 - <name>fcno45</name>  
582 - <type>String</type>  
583 - <format/>  
584 - </field>  
585 - <field>  
586 - <name>fcno46</name>  
587 - <type>String</type>  
588 - <format/>  
589 - </field>  
590 - <field>  
591 - <name>fcno47</name>  
592 - <type>String</type>  
593 - <format/>  
594 - </field>  
595 - <field>  
596 - <name>fcno48</name>  
597 - <type>String</type>  
598 - <format/>  
599 - </field>  
600 - <field>  
601 - <name>fcno49</name>  
602 - <type>String</type>  
603 - <format/>  
604 - </field>  
605 - <field>  
606 - <name>fcno50</name>  
607 - <type>String</type>  
608 - <format/>  
609 - </field>  
610 - <field>  
611 - <name>fcno51</name>  
612 - <type>String</type>  
613 - <format/>  
614 - </field>  
615 - <field>  
616 - <name>fcno52</name>  
617 - <type>String</type>  
618 - <format/>  
619 - </field>  
620 - <field>  
621 - <name>fcno53</name>  
622 - <type>String</type>  
623 - <format/>  
624 - </field>  
625 - <field>  
626 - <name>fcno54</name>  
627 - <type>String</type>  
628 - <format/>  
629 - </field>  
630 - <field>  
631 - <name>fcno55</name>  
632 - <type>String</type>  
633 - <format/>  
634 - </field>  
635 - <field>  
636 - <name>fcno56</name>  
637 - <type>String</type>  
638 - <format/>  
639 - </field>  
640 - <field>  
641 - <name>fcno57</name>  
642 - <type>String</type>  
643 - <format/>  
644 - </field>  
645 - <field>  
646 - <name>fcno58</name>  
647 - <type>String</type>  
648 - <format/>  
649 - </field>  
650 - <field>  
651 - <name>fcno59</name>  
652 - <type>String</type>  
653 - <format/>  
654 - </field>  
655 - <field>  
656 - <name>fcno60</name>  
657 - <type>String</type>  
658 - <format/>  
659 - </field>  
660 - <field>  
661 - <name>fcno61</name>  
662 - <type>String</type>  
663 - <format/>  
664 - </field>  
665 - <field>  
666 - <name>fcno62</name>  
667 - <type>String</type>  
668 - <format/>  
669 - </field>  
670 - <field>  
671 - <name>fcno63</name>  
672 - <type>String</type>  
673 - <format/>  
674 - </field>  
675 - <field>  
676 - <name>fcno64</name>  
677 - <type>String</type>  
678 - <format/>  
679 - </field>  
680 - <field>  
681 - <name>fcno65</name>  
682 - <type>String</type>  
683 - <format/>  
684 - </field>  
685 - <field>  
686 - <name>fcno66</name>  
687 - <type>String</type>  
688 - <format/>  
689 - </field>  
690 - <field>  
691 - <name>fcno67</name>  
692 - <type>String</type>  
693 - <format/>  
694 - </field>  
695 - <field>  
696 - <name>fcno68</name>  
697 - <type>String</type>  
698 - <format/>  
699 - </field>  
700 - <field>  
701 - <name>fcno69</name>  
702 - <type>String</type>  
703 - <format/>  
704 - </field>  
705 - <field>  
706 - <name>fcno70</name>  
707 - <type>String</type>  
708 - <format/>  
709 - </field>  
710 - </fields>  
711 - <custom>  
712 - <header_font_name>arial</header_font_name>  
713 - <header_font_size>10</header_font_size>  
714 - <header_font_bold>N</header_font_bold>  
715 - <header_font_italic>N</header_font_italic>  
716 - <header_font_underline>no</header_font_underline>  
717 - <header_font_orientation>horizontal</header_font_orientation>  
718 - <header_font_color>black</header_font_color>  
719 - <header_background_color>none</header_background_color>  
720 - <header_row_height>255</header_row_height>  
721 - <header_alignment>left</header_alignment>  
722 - <header_image/>  
723 - <row_font_name>arial</row_font_name>  
724 - <row_font_size>10</row_font_size>  
725 - <row_font_color>black</row_font_color>  
726 - <row_background_color>none</row_background_color>  
727 - </custom>  
728 - <cluster_schema/>  
729 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
730 - <xloc>692</xloc>  
731 - <yloc>514</yloc>  
732 - <draw>Y</draw>  
733 - </GUI>  
734 - </step>  
735 -  
736 - <step>  
737 - <name>&#x5217;&#x8f6c;&#x884c;</name>  
738 - <type>Denormaliser</type>  
739 - <description/>  
740 - <distribute>N</distribute>  
741 - <custom_distribution/>  
742 - <copies>1</copies>  
743 - <partitioning>  
744 - <method>none</method>  
745 - <schema_name/>  
746 - </partitioning>  
747 - <key_field>fcno</key_field>  
748 - <group>  
749 - <field>  
750 - <name>lp</name>  
751 - </field>  
752 - </group>  
753 - <fields>  
754 - <field>  
755 - <field_name>all_content</field_name>  
756 - <key_value>1</key_value>  
757 - <target_name>fcno1</target_name>  
758 - <target_type>String</target_type>  
759 - <target_format/>  
760 - <target_length>-1</target_length>  
761 - <target_precision>-1</target_precision>  
762 - <target_decimal_symbol/>  
763 - <target_grouping_symbol/>  
764 - <target_currency_symbol/>  
765 - <target_null_string/>  
766 - <target_aggregation_type>-</target_aggregation_type>  
767 - </field>  
768 - <field>  
769 - <field_name>all_content</field_name>  
770 - <key_value>2</key_value>  
771 - <target_name>fcno2</target_name>  
772 - <target_type>String</target_type>  
773 - <target_format/>  
774 - <target_length>-1</target_length>  
775 - <target_precision>-1</target_precision>  
776 - <target_decimal_symbol/>  
777 - <target_grouping_symbol/>  
778 - <target_currency_symbol/>  
779 - <target_null_string/>  
780 - <target_aggregation_type>-</target_aggregation_type>  
781 - </field>  
782 - <field>  
783 - <field_name>all_content</field_name>  
784 - <key_value>3</key_value>  
785 - <target_name>fcno3</target_name>  
786 - <target_type>String</target_type>  
787 - <target_format/>  
788 - <target_length>-1</target_length>  
789 - <target_precision>-1</target_precision>  
790 - <target_decimal_symbol/>  
791 - <target_grouping_symbol/>  
792 - <target_currency_symbol/>  
793 - <target_null_string/>  
794 - <target_aggregation_type>-</target_aggregation_type>  
795 - </field>  
796 - <field>  
797 - <field_name>all_content</field_name>  
798 - <key_value>4</key_value>  
799 - <target_name>fcno4</target_name>  
800 - <target_type>String</target_type>  
801 - <target_format/>  
802 - <target_length>-1</target_length>  
803 - <target_precision>-1</target_precision>  
804 - <target_decimal_symbol/>  
805 - <target_grouping_symbol/>  
806 - <target_currency_symbol/>  
807 - <target_null_string/>  
808 - <target_aggregation_type>-</target_aggregation_type>  
809 - </field>  
810 - <field>  
811 - <field_name>all_content</field_name>  
812 - <key_value>5</key_value>  
813 - <target_name>fcno5</target_name>  
814 - <target_type>String</target_type>  
815 - <target_format/>  
816 - <target_length>-1</target_length>  
817 - <target_precision>-1</target_precision>  
818 - <target_decimal_symbol/>  
819 - <target_grouping_symbol/>  
820 - <target_currency_symbol/>  
821 - <target_null_string/>  
822 - <target_aggregation_type>-</target_aggregation_type>  
823 - </field>  
824 - <field>  
825 - <field_name>all_content</field_name>  
826 - <key_value>6</key_value>  
827 - <target_name>fcno6</target_name>  
828 - <target_type>String</target_type>  
829 - <target_format/>  
830 - <target_length>-1</target_length>  
831 - <target_precision>-1</target_precision>  
832 - <target_decimal_symbol/>  
833 - <target_grouping_symbol/>  
834 - <target_currency_symbol/>  
835 - <target_null_string/>  
836 - <target_aggregation_type>-</target_aggregation_type>  
837 - </field>  
838 - <field>  
839 - <field_name>all_content</field_name>  
840 - <key_value>7</key_value>  
841 - <target_name>fcno7</target_name>  
842 - <target_type>String</target_type>  
843 - <target_format/>  
844 - <target_length>-1</target_length>  
845 - <target_precision>-1</target_precision>  
846 - <target_decimal_symbol/>  
847 - <target_grouping_symbol/>  
848 - <target_currency_symbol/>  
849 - <target_null_string/>  
850 - <target_aggregation_type>-</target_aggregation_type>  
851 - </field>  
852 - <field>  
853 - <field_name>all_content</field_name>  
854 - <key_value>8</key_value>  
855 - <target_name>fcno8</target_name>  
856 - <target_type>String</target_type>  
857 - <target_format/>  
858 - <target_length>-1</target_length>  
859 - <target_precision>-1</target_precision>  
860 - <target_decimal_symbol/>  
861 - <target_grouping_symbol/>  
862 - <target_currency_symbol/>  
863 - <target_null_string/>  
864 - <target_aggregation_type>-</target_aggregation_type>  
865 - </field>  
866 - <field>  
867 - <field_name>all_content</field_name>  
868 - <key_value>9</key_value>  
869 - <target_name>fcno9</target_name>  
870 - <target_type>String</target_type>  
871 - <target_format/>  
872 - <target_length>-1</target_length>  
873 - <target_precision>-1</target_precision>  
874 - <target_decimal_symbol/>  
875 - <target_grouping_symbol/>  
876 - <target_currency_symbol/>  
877 - <target_null_string/>  
878 - <target_aggregation_type>-</target_aggregation_type>  
879 - </field>  
880 - <field>  
881 - <field_name>all_content</field_name>  
882 - <key_value>10</key_value>  
883 - <target_name>fcno10</target_name>  
884 - <target_type>String</target_type>  
885 - <target_format/>  
886 - <target_length>-1</target_length>  
887 - <target_precision>-1</target_precision>  
888 - <target_decimal_symbol/>  
889 - <target_grouping_symbol/>  
890 - <target_currency_symbol/>  
891 - <target_null_string/>  
892 - <target_aggregation_type>-</target_aggregation_type>  
893 - </field>  
894 - <field>  
895 - <field_name>all_content</field_name>  
896 - <key_value>11</key_value>  
897 - <target_name>fcno11</target_name>  
898 - <target_type>String</target_type>  
899 - <target_format/>  
900 - <target_length>-1</target_length>  
901 - <target_precision>-1</target_precision>  
902 - <target_decimal_symbol/>  
903 - <target_grouping_symbol/>  
904 - <target_currency_symbol/>  
905 - <target_null_string/>  
906 - <target_aggregation_type>-</target_aggregation_type>  
907 - </field>  
908 - <field>  
909 - <field_name>all_content</field_name>  
910 - <key_value>12</key_value>  
911 - <target_name>fcno12</target_name>  
912 - <target_type>String</target_type>  
913 - <target_format/>  
914 - <target_length>-1</target_length>  
915 - <target_precision>-1</target_precision>  
916 - <target_decimal_symbol/>  
917 - <target_grouping_symbol/>  
918 - <target_currency_symbol/>  
919 - <target_null_string/>  
920 - <target_aggregation_type>-</target_aggregation_type>  
921 - </field>  
922 - <field>  
923 - <field_name>all_content</field_name>  
924 - <key_value>13</key_value>  
925 - <target_name>fcno13</target_name>  
926 - <target_type>String</target_type>  
927 - <target_format/>  
928 - <target_length>-1</target_length>  
929 - <target_precision>-1</target_precision>  
930 - <target_decimal_symbol/>  
931 - <target_grouping_symbol/>  
932 - <target_currency_symbol/>  
933 - <target_null_string/>  
934 - <target_aggregation_type>-</target_aggregation_type>  
935 - </field>  
936 - <field>  
937 - <field_name>all_content</field_name>  
938 - <key_value>14</key_value>  
939 - <target_name>fcno14</target_name>  
940 - <target_type>String</target_type>  
941 - <target_format/>  
942 - <target_length>-1</target_length>  
943 - <target_precision>-1</target_precision>  
944 - <target_decimal_symbol/>  
945 - <target_grouping_symbol/>  
946 - <target_currency_symbol/>  
947 - <target_null_string/>  
948 - <target_aggregation_type>-</target_aggregation_type>  
949 - </field>  
950 - <field>  
951 - <field_name>all_content</field_name>  
952 - <key_value>15</key_value>  
953 - <target_name>fcno15</target_name>  
954 - <target_type>String</target_type>  
955 - <target_format/>  
956 - <target_length>-1</target_length>  
957 - <target_precision>-1</target_precision>  
958 - <target_decimal_symbol/>  
959 - <target_grouping_symbol/>  
960 - <target_currency_symbol/>  
961 - <target_null_string/>  
962 - <target_aggregation_type>-</target_aggregation_type>  
963 - </field>  
964 - <field>  
965 - <field_name>all_content</field_name>  
966 - <key_value>16</key_value>  
967 - <target_name>fcno16</target_name>  
968 - <target_type>String</target_type>  
969 - <target_format/>  
970 - <target_length>-1</target_length>  
971 - <target_precision>-1</target_precision>  
972 - <target_decimal_symbol/>  
973 - <target_grouping_symbol/>  
974 - <target_currency_symbol/>  
975 - <target_null_string/>  
976 - <target_aggregation_type>-</target_aggregation_type>  
977 - </field>  
978 - <field>  
979 - <field_name>all_content</field_name>  
980 - <key_value>17</key_value>  
981 - <target_name>fcno17</target_name>  
982 - <target_type>String</target_type>  
983 - <target_format/>  
984 - <target_length>-1</target_length>  
985 - <target_precision>-1</target_precision>  
986 - <target_decimal_symbol/>  
987 - <target_grouping_symbol/>  
988 - <target_currency_symbol/>  
989 - <target_null_string/>  
990 - <target_aggregation_type>-</target_aggregation_type>  
991 - </field>  
992 - <field>  
993 - <field_name>all_content</field_name>  
994 - <key_value>18</key_value>  
995 - <target_name>fcno18</target_name>  
996 - <target_type>String</target_type>  
997 - <target_format/>  
998 - <target_length>-1</target_length>  
999 - <target_precision>-1</target_precision>  
1000 - <target_decimal_symbol/>  
1001 - <target_grouping_symbol/>  
1002 - <target_currency_symbol/>  
1003 - <target_null_string/>  
1004 - <target_aggregation_type>-</target_aggregation_type>  
1005 - </field>  
1006 - <field>  
1007 - <field_name>all_content</field_name>  
1008 - <key_value>19</key_value>  
1009 - <target_name>fcno19</target_name>  
1010 - <target_type>String</target_type>  
1011 - <target_format/>  
1012 - <target_length>-1</target_length>  
1013 - <target_precision>-1</target_precision>  
1014 - <target_decimal_symbol/>  
1015 - <target_grouping_symbol/>  
1016 - <target_currency_symbol/>  
1017 - <target_null_string/>  
1018 - <target_aggregation_type>-</target_aggregation_type>  
1019 - </field>  
1020 - <field>  
1021 - <field_name>all_content</field_name>  
1022 - <key_value>20</key_value>  
1023 - <target_name>fcno20</target_name>  
1024 - <target_type>String</target_type>  
1025 - <target_format/>  
1026 - <target_length>-1</target_length>  
1027 - <target_precision>-1</target_precision>  
1028 - <target_decimal_symbol/>  
1029 - <target_grouping_symbol/>  
1030 - <target_currency_symbol/>  
1031 - <target_null_string/>  
1032 - <target_aggregation_type>-</target_aggregation_type>  
1033 - </field>  
1034 - <field>  
1035 - <field_name>all_content</field_name>  
1036 - <key_value>21</key_value>  
1037 - <target_name>fcno21</target_name>  
1038 - <target_type>String</target_type>  
1039 - <target_format/>  
1040 - <target_length>-1</target_length>  
1041 - <target_precision>-1</target_precision>  
1042 - <target_decimal_symbol/>  
1043 - <target_grouping_symbol/>  
1044 - <target_currency_symbol/>  
1045 - <target_null_string/>  
1046 - <target_aggregation_type>-</target_aggregation_type>  
1047 - </field>  
1048 - <field>  
1049 - <field_name>all_content</field_name>  
1050 - <key_value>22</key_value>  
1051 - <target_name>fcno22</target_name>  
1052 - <target_type>String</target_type>  
1053 - <target_format/>  
1054 - <target_length>-1</target_length>  
1055 - <target_precision>-1</target_precision>  
1056 - <target_decimal_symbol/>  
1057 - <target_grouping_symbol/>  
1058 - <target_currency_symbol/>  
1059 - <target_null_string/>  
1060 - <target_aggregation_type>-</target_aggregation_type>  
1061 - </field>  
1062 - <field>  
1063 - <field_name>all_content</field_name>  
1064 - <key_value>23</key_value>  
1065 - <target_name>fcno23</target_name>  
1066 - <target_type>String</target_type>  
1067 - <target_format/>  
1068 - <target_length>-1</target_length>  
1069 - <target_precision>-1</target_precision>  
1070 - <target_decimal_symbol/>  
1071 - <target_grouping_symbol/>  
1072 - <target_currency_symbol/>  
1073 - <target_null_string/>  
1074 - <target_aggregation_type>-</target_aggregation_type>  
1075 - </field>  
1076 - <field>  
1077 - <field_name>all_content</field_name>  
1078 - <key_value>24</key_value>  
1079 - <target_name>fcno24</target_name>  
1080 - <target_type>String</target_type>  
1081 - <target_format/>  
1082 - <target_length>-1</target_length>  
1083 - <target_precision>-1</target_precision>  
1084 - <target_decimal_symbol/>  
1085 - <target_grouping_symbol/>  
1086 - <target_currency_symbol/>  
1087 - <target_null_string/>  
1088 - <target_aggregation_type>-</target_aggregation_type>  
1089 - </field>  
1090 - <field>  
1091 - <field_name>all_content</field_name>  
1092 - <key_value>25</key_value>  
1093 - <target_name>fcno25</target_name>  
1094 - <target_type>String</target_type>  
1095 - <target_format/>  
1096 - <target_length>-1</target_length>  
1097 - <target_precision>-1</target_precision>  
1098 - <target_decimal_symbol/>  
1099 - <target_grouping_symbol/>  
1100 - <target_currency_symbol/>  
1101 - <target_null_string/>  
1102 - <target_aggregation_type>-</target_aggregation_type>  
1103 - </field>  
1104 - <field>  
1105 - <field_name>all_content</field_name>  
1106 - <key_value>26</key_value>  
1107 - <target_name>fcno26</target_name>  
1108 - <target_type>String</target_type>  
1109 - <target_format/>  
1110 - <target_length>-1</target_length>  
1111 - <target_precision>-1</target_precision>  
1112 - <target_decimal_symbol/>  
1113 - <target_grouping_symbol/>  
1114 - <target_currency_symbol/>  
1115 - <target_null_string/>  
1116 - <target_aggregation_type>-</target_aggregation_type>  
1117 - </field>  
1118 - <field>  
1119 - <field_name>all_content</field_name>  
1120 - <key_value>27</key_value>  
1121 - <target_name>fcno27</target_name>  
1122 - <target_type>String</target_type>  
1123 - <target_format/>  
1124 - <target_length>-1</target_length>  
1125 - <target_precision>-1</target_precision>  
1126 - <target_decimal_symbol/>  
1127 - <target_grouping_symbol/>  
1128 - <target_currency_symbol/>  
1129 - <target_null_string/>  
1130 - <target_aggregation_type>-</target_aggregation_type>  
1131 - </field>  
1132 - <field>  
1133 - <field_name>all_content</field_name>  
1134 - <key_value>28</key_value>  
1135 - <target_name>fcno28</target_name>  
1136 - <target_type>String</target_type>  
1137 - <target_format/>  
1138 - <target_length>-1</target_length>  
1139 - <target_precision>-1</target_precision>  
1140 - <target_decimal_symbol/>  
1141 - <target_grouping_symbol/>  
1142 - <target_currency_symbol/>  
1143 - <target_null_string/>  
1144 - <target_aggregation_type>-</target_aggregation_type>  
1145 - </field>  
1146 - <field>  
1147 - <field_name>all_content</field_name>  
1148 - <key_value>29</key_value>  
1149 - <target_name>fcno29</target_name>  
1150 - <target_type>String</target_type>  
1151 - <target_format/>  
1152 - <target_length>-1</target_length>  
1153 - <target_precision>-1</target_precision>  
1154 - <target_decimal_symbol/>  
1155 - <target_grouping_symbol/>  
1156 - <target_currency_symbol/>  
1157 - <target_null_string/>  
1158 - <target_aggregation_type>-</target_aggregation_type>  
1159 - </field>  
1160 - <field>  
1161 - <field_name>all_content</field_name>  
1162 - <key_value>30</key_value>  
1163 - <target_name>fcno30</target_name>  
1164 - <target_type>String</target_type>  
1165 - <target_format/>  
1166 - <target_length>-1</target_length>  
1167 - <target_precision>-1</target_precision>  
1168 - <target_decimal_symbol/>  
1169 - <target_grouping_symbol/>  
1170 - <target_currency_symbol/>  
1171 - <target_null_string/>  
1172 - <target_aggregation_type>-</target_aggregation_type>  
1173 - </field>  
1174 - <field>  
1175 - <field_name>all_content</field_name>  
1176 - <key_value>31</key_value>  
1177 - <target_name>fcno31</target_name>  
1178 - <target_type>String</target_type>  
1179 - <target_format/>  
1180 - <target_length>-1</target_length>  
1181 - <target_precision>-1</target_precision>  
1182 - <target_decimal_symbol/>  
1183 - <target_grouping_symbol/>  
1184 - <target_currency_symbol/>  
1185 - <target_null_string/>  
1186 - <target_aggregation_type>-</target_aggregation_type>  
1187 - </field>  
1188 - <field>  
1189 - <field_name>all_content</field_name>  
1190 - <key_value>32</key_value>  
1191 - <target_name>fcno32</target_name>  
1192 - <target_type>String</target_type>  
1193 - <target_format/>  
1194 - <target_length>-1</target_length>  
1195 - <target_precision>-1</target_precision>  
1196 - <target_decimal_symbol/>  
1197 - <target_grouping_symbol/>  
1198 - <target_currency_symbol/>  
1199 - <target_null_string/>  
1200 - <target_aggregation_type>-</target_aggregation_type>  
1201 - </field>  
1202 - <field>  
1203 - <field_name>all_content</field_name>  
1204 - <key_value>33</key_value>  
1205 - <target_name>fcno33</target_name>  
1206 - <target_type>String</target_type>  
1207 - <target_format/>  
1208 - <target_length>-1</target_length>  
1209 - <target_precision>-1</target_precision>  
1210 - <target_decimal_symbol/>  
1211 - <target_grouping_symbol/>  
1212 - <target_currency_symbol/>  
1213 - <target_null_string/>  
1214 - <target_aggregation_type>-</target_aggregation_type>  
1215 - </field>  
1216 - <field>  
1217 - <field_name>all_content</field_name>  
1218 - <key_value>34</key_value>  
1219 - <target_name>fcno34</target_name>  
1220 - <target_type>String</target_type>  
1221 - <target_format/>  
1222 - <target_length>-1</target_length>  
1223 - <target_precision>-1</target_precision>  
1224 - <target_decimal_symbol/>  
1225 - <target_grouping_symbol/>  
1226 - <target_currency_symbol/>  
1227 - <target_null_string/>  
1228 - <target_aggregation_type>-</target_aggregation_type>  
1229 - </field>  
1230 - <field>  
1231 - <field_name>all_content</field_name>  
1232 - <key_value>35</key_value>  
1233 - <target_name>fcno35</target_name>  
1234 - <target_type>String</target_type>  
1235 - <target_format/>  
1236 - <target_length>-1</target_length>  
1237 - <target_precision>-1</target_precision>  
1238 - <target_decimal_symbol/>  
1239 - <target_grouping_symbol/>  
1240 - <target_currency_symbol/>  
1241 - <target_null_string/>  
1242 - <target_aggregation_type>-</target_aggregation_type>  
1243 - </field>  
1244 - <field>  
1245 - <field_name>all_content</field_name>  
1246 - <key_value>36</key_value>  
1247 - <target_name>fcno36</target_name>  
1248 - <target_type>String</target_type>  
1249 - <target_format/>  
1250 - <target_length>-1</target_length>  
1251 - <target_precision>-1</target_precision>  
1252 - <target_decimal_symbol/>  
1253 - <target_grouping_symbol/>  
1254 - <target_currency_symbol/>  
1255 - <target_null_string/>  
1256 - <target_aggregation_type>-</target_aggregation_type>  
1257 - </field>  
1258 - <field>  
1259 - <field_name>all_content</field_name>  
1260 - <key_value>37</key_value>  
1261 - <target_name>fcno37</target_name>  
1262 - <target_type>String</target_type>  
1263 - <target_format/>  
1264 - <target_length>-1</target_length>  
1265 - <target_precision>-1</target_precision>  
1266 - <target_decimal_symbol/>  
1267 - <target_grouping_symbol/>  
1268 - <target_currency_symbol/>  
1269 - <target_null_string/>  
1270 - <target_aggregation_type>-</target_aggregation_type>  
1271 - </field>  
1272 - <field>  
1273 - <field_name>all_content</field_name>  
1274 - <key_value>38</key_value>  
1275 - <target_name>fcno38</target_name>  
1276 - <target_type>String</target_type>  
1277 - <target_format/>  
1278 - <target_length>-1</target_length>  
1279 - <target_precision>-1</target_precision>  
1280 - <target_decimal_symbol/>  
1281 - <target_grouping_symbol/>  
1282 - <target_currency_symbol/>  
1283 - <target_null_string/>  
1284 - <target_aggregation_type>-</target_aggregation_type>  
1285 - </field>  
1286 - <field>  
1287 - <field_name>all_content</field_name>  
1288 - <key_value>39</key_value>  
1289 - <target_name>fcno39</target_name>  
1290 - <target_type>String</target_type>  
1291 - <target_format/>  
1292 - <target_length>-1</target_length>  
1293 - <target_precision>-1</target_precision>  
1294 - <target_decimal_symbol/>  
1295 - <target_grouping_symbol/>  
1296 - <target_currency_symbol/>  
1297 - <target_null_string/>  
1298 - <target_aggregation_type>-</target_aggregation_type>  
1299 - </field>  
1300 - <field>  
1301 - <field_name>all_content</field_name>  
1302 - <key_value>40</key_value>  
1303 - <target_name>fcno40</target_name>  
1304 - <target_type>String</target_type>  
1305 - <target_format/>  
1306 - <target_length>-1</target_length>  
1307 - <target_precision>-1</target_precision>  
1308 - <target_decimal_symbol/>  
1309 - <target_grouping_symbol/>  
1310 - <target_currency_symbol/>  
1311 - <target_null_string/>  
1312 - <target_aggregation_type>-</target_aggregation_type>  
1313 - </field>  
1314 - <field>  
1315 - <field_name>all_content</field_name>  
1316 - <key_value>41</key_value>  
1317 - <target_name>fcno41</target_name>  
1318 - <target_type>String</target_type>  
1319 - <target_format/>  
1320 - <target_length>-1</target_length>  
1321 - <target_precision>-1</target_precision>  
1322 - <target_decimal_symbol/>  
1323 - <target_grouping_symbol/>  
1324 - <target_currency_symbol/>  
1325 - <target_null_string/>  
1326 - <target_aggregation_type>-</target_aggregation_type>  
1327 - </field>  
1328 - <field>  
1329 - <field_name>all_content</field_name>  
1330 - <key_value>42</key_value>  
1331 - <target_name>fcno42</target_name>  
1332 - <target_type>String</target_type>  
1333 - <target_format/>  
1334 - <target_length>-1</target_length>  
1335 - <target_precision>-1</target_precision>  
1336 - <target_decimal_symbol/>  
1337 - <target_grouping_symbol/>  
1338 - <target_currency_symbol/>  
1339 - <target_null_string/>  
1340 - <target_aggregation_type>-</target_aggregation_type>  
1341 - </field>  
1342 - <field>  
1343 - <field_name>all_content</field_name>  
1344 - <key_value>43</key_value>  
1345 - <target_name>fcno43</target_name>  
1346 - <target_type>String</target_type>  
1347 - <target_format/>  
1348 - <target_length>-1</target_length>  
1349 - <target_precision>-1</target_precision>  
1350 - <target_decimal_symbol/>  
1351 - <target_grouping_symbol/>  
1352 - <target_currency_symbol/>  
1353 - <target_null_string/>  
1354 - <target_aggregation_type>-</target_aggregation_type>  
1355 - </field>  
1356 - <field>  
1357 - <field_name>all_content</field_name>  
1358 - <key_value>44</key_value>  
1359 - <target_name>fcno44</target_name>  
1360 - <target_type>String</target_type>  
1361 - <target_format/>  
1362 - <target_length>-1</target_length>  
1363 - <target_precision>-1</target_precision>  
1364 - <target_decimal_symbol/>  
1365 - <target_grouping_symbol/>  
1366 - <target_currency_symbol/>  
1367 - <target_null_string/>  
1368 - <target_aggregation_type>-</target_aggregation_type>  
1369 - </field>  
1370 - <field>  
1371 - <field_name>all_content</field_name>  
1372 - <key_value>45</key_value>  
1373 - <target_name>fcno45</target_name>  
1374 - <target_type>String</target_type>  
1375 - <target_format/>  
1376 - <target_length>-1</target_length>  
1377 - <target_precision>-1</target_precision>  
1378 - <target_decimal_symbol/>  
1379 - <target_grouping_symbol/>  
1380 - <target_currency_symbol/>  
1381 - <target_null_string/>  
1382 - <target_aggregation_type>-</target_aggregation_type>  
1383 - </field>  
1384 - <field>  
1385 - <field_name>all_content</field_name>  
1386 - <key_value>46</key_value>  
1387 - <target_name>fcno46</target_name>  
1388 - <target_type>String</target_type>  
1389 - <target_format/>  
1390 - <target_length>-1</target_length>  
1391 - <target_precision>-1</target_precision>  
1392 - <target_decimal_symbol/>  
1393 - <target_grouping_symbol/>  
1394 - <target_currency_symbol/>  
1395 - <target_null_string/>  
1396 - <target_aggregation_type>-</target_aggregation_type>  
1397 - </field>  
1398 - <field>  
1399 - <field_name>all_content</field_name>  
1400 - <key_value>47</key_value>  
1401 - <target_name>fcno47</target_name>  
1402 - <target_type>String</target_type>  
1403 - <target_format/>  
1404 - <target_length>-1</target_length>  
1405 - <target_precision>-1</target_precision>  
1406 - <target_decimal_symbol/>  
1407 - <target_grouping_symbol/>  
1408 - <target_currency_symbol/>  
1409 - <target_null_string/>  
1410 - <target_aggregation_type>-</target_aggregation_type>  
1411 - </field>  
1412 - <field>  
1413 - <field_name>all_content</field_name>  
1414 - <key_value>48</key_value>  
1415 - <target_name>fcno48</target_name>  
1416 - <target_type>String</target_type>  
1417 - <target_format/>  
1418 - <target_length>-1</target_length>  
1419 - <target_precision>-1</target_precision>  
1420 - <target_decimal_symbol/>  
1421 - <target_grouping_symbol/>  
1422 - <target_currency_symbol/>  
1423 - <target_null_string/>  
1424 - <target_aggregation_type>-</target_aggregation_type>  
1425 - </field>  
1426 - <field>  
1427 - <field_name>all_content</field_name>  
1428 - <key_value>49</key_value>  
1429 - <target_name>fcno49</target_name>  
1430 - <target_type>String</target_type>  
1431 - <target_format/>  
1432 - <target_length>-1</target_length>  
1433 - <target_precision>-1</target_precision>  
1434 - <target_decimal_symbol/>  
1435 - <target_grouping_symbol/>  
1436 - <target_currency_symbol/>  
1437 - <target_null_string/>  
1438 - <target_aggregation_type>-</target_aggregation_type>  
1439 - </field>  
1440 - <field>  
1441 - <field_name>all_content</field_name>  
1442 - <key_value>50</key_value>  
1443 - <target_name>fcno50</target_name>  
1444 - <target_type>String</target_type>  
1445 - <target_format/>  
1446 - <target_length>-1</target_length>  
1447 - <target_precision>-1</target_precision>  
1448 - <target_decimal_symbol/>  
1449 - <target_grouping_symbol/>  
1450 - <target_currency_symbol/>  
1451 - <target_null_string/>  
1452 - <target_aggregation_type>-</target_aggregation_type>  
1453 - </field>  
1454 - <field>  
1455 - <field_name>all_content</field_name>  
1456 - <key_value>51</key_value>  
1457 - <target_name>fcno51</target_name>  
1458 - <target_type>String</target_type>  
1459 - <target_format/>  
1460 - <target_length>-1</target_length>  
1461 - <target_precision>-1</target_precision>  
1462 - <target_decimal_symbol/>  
1463 - <target_grouping_symbol/>  
1464 - <target_currency_symbol/>  
1465 - <target_null_string/>  
1466 - <target_aggregation_type>-</target_aggregation_type>  
1467 - </field>  
1468 - <field>  
1469 - <field_name>all_content</field_name>  
1470 - <key_value>52</key_value>  
1471 - <target_name>fcno52</target_name>  
1472 - <target_type>String</target_type>  
1473 - <target_format/>  
1474 - <target_length>-1</target_length>  
1475 - <target_precision>-1</target_precision>  
1476 - <target_decimal_symbol/>  
1477 - <target_grouping_symbol/>  
1478 - <target_currency_symbol/>  
1479 - <target_null_string/>  
1480 - <target_aggregation_type>-</target_aggregation_type>  
1481 - </field>  
1482 - <field>  
1483 - <field_name>all_content</field_name>  
1484 - <key_value>53</key_value>  
1485 - <target_name>fcno53</target_name>  
1486 - <target_type>String</target_type>  
1487 - <target_format/>  
1488 - <target_length>-1</target_length>  
1489 - <target_precision>-1</target_precision>  
1490 - <target_decimal_symbol/>  
1491 - <target_grouping_symbol/>  
1492 - <target_currency_symbol/>  
1493 - <target_null_string/>  
1494 - <target_aggregation_type>-</target_aggregation_type>  
1495 - </field>  
1496 - <field>  
1497 - <field_name>all_content</field_name>  
1498 - <key_value>54</key_value>  
1499 - <target_name>fcno54</target_name>  
1500 - <target_type>String</target_type>  
1501 - <target_format/>  
1502 - <target_length>-1</target_length>  
1503 - <target_precision>-1</target_precision>  
1504 - <target_decimal_symbol/>  
1505 - <target_grouping_symbol/>  
1506 - <target_currency_symbol/>  
1507 - <target_null_string/>  
1508 - <target_aggregation_type>-</target_aggregation_type>  
1509 - </field>  
1510 - <field>  
1511 - <field_name>all_content</field_name>  
1512 - <key_value>55</key_value>  
1513 - <target_name>fcno55</target_name>  
1514 - <target_type>String</target_type>  
1515 - <target_format/>  
1516 - <target_length>-1</target_length>  
1517 - <target_precision>-1</target_precision>  
1518 - <target_decimal_symbol/>  
1519 - <target_grouping_symbol/>  
1520 - <target_currency_symbol/>  
1521 - <target_null_string/>  
1522 - <target_aggregation_type>-</target_aggregation_type>  
1523 - </field>  
1524 - <field>  
1525 - <field_name>all_content</field_name>  
1526 - <key_value>56</key_value>  
1527 - <target_name>fcno56</target_name>  
1528 - <target_type>String</target_type>  
1529 - <target_format/>  
1530 - <target_length>-1</target_length>  
1531 - <target_precision>-1</target_precision>  
1532 - <target_decimal_symbol/>  
1533 - <target_grouping_symbol/>  
1534 - <target_currency_symbol/>  
1535 - <target_null_string/>  
1536 - <target_aggregation_type>-</target_aggregation_type>  
1537 - </field>  
1538 - <field>  
1539 - <field_name>all_content</field_name>  
1540 - <key_value>57</key_value>  
1541 - <target_name>fcno57</target_name>  
1542 - <target_type>String</target_type>  
1543 - <target_format/>  
1544 - <target_length>-1</target_length>  
1545 - <target_precision>-1</target_precision>  
1546 - <target_decimal_symbol/>  
1547 - <target_grouping_symbol/>  
1548 - <target_currency_symbol/>  
1549 - <target_null_string/>  
1550 - <target_aggregation_type>-</target_aggregation_type>  
1551 - </field>  
1552 - <field>  
1553 - <field_name>all_content</field_name>  
1554 - <key_value>58</key_value>  
1555 - <target_name>fcno58</target_name>  
1556 - <target_type>String</target_type>  
1557 - <target_format/>  
1558 - <target_length>-1</target_length>  
1559 - <target_precision>-1</target_precision>  
1560 - <target_decimal_symbol/>  
1561 - <target_grouping_symbol/>  
1562 - <target_currency_symbol/>  
1563 - <target_null_string/>  
1564 - <target_aggregation_type>-</target_aggregation_type>  
1565 - </field>  
1566 - <field>  
1567 - <field_name>all_content</field_name>  
1568 - <key_value>59</key_value>  
1569 - <target_name>fcno59</target_name>  
1570 - <target_type>String</target_type>  
1571 - <target_format/>  
1572 - <target_length>-1</target_length>  
1573 - <target_precision>-1</target_precision>  
1574 - <target_decimal_symbol/>  
1575 - <target_grouping_symbol/>  
1576 - <target_currency_symbol/>  
1577 - <target_null_string/>  
1578 - <target_aggregation_type>-</target_aggregation_type>  
1579 - </field>  
1580 - <field>  
1581 - <field_name>all_content</field_name>  
1582 - <key_value>60</key_value>  
1583 - <target_name>fcno60</target_name>  
1584 - <target_type>String</target_type>  
1585 - <target_format/>  
1586 - <target_length>-1</target_length>  
1587 - <target_precision>-1</target_precision>  
1588 - <target_decimal_symbol/>  
1589 - <target_grouping_symbol/>  
1590 - <target_currency_symbol/>  
1591 - <target_null_string/>  
1592 - <target_aggregation_type>-</target_aggregation_type>  
1593 - </field>  
1594 - <field>  
1595 - <field_name>all_content</field_name>  
1596 - <key_value>61</key_value>  
1597 - <target_name>fcno61</target_name>  
1598 - <target_type>String</target_type>  
1599 - <target_format/>  
1600 - <target_length>-1</target_length>  
1601 - <target_precision>-1</target_precision>  
1602 - <target_decimal_symbol/>  
1603 - <target_grouping_symbol/>  
1604 - <target_currency_symbol/>  
1605 - <target_null_string/>  
1606 - <target_aggregation_type>-</target_aggregation_type>  
1607 - </field>  
1608 - <field>  
1609 - <field_name>all_content</field_name>  
1610 - <key_value>62</key_value>  
1611 - <target_name>fcno62</target_name>  
1612 - <target_type>String</target_type>  
1613 - <target_format/>  
1614 - <target_length>-1</target_length>  
1615 - <target_precision>-1</target_precision>  
1616 - <target_decimal_symbol/>  
1617 - <target_grouping_symbol/>  
1618 - <target_currency_symbol/>  
1619 - <target_null_string/>  
1620 - <target_aggregation_type>-</target_aggregation_type>  
1621 - </field>  
1622 - <field>  
1623 - <field_name>all_content</field_name>  
1624 - <key_value>63</key_value>  
1625 - <target_name>fcno63</target_name>  
1626 - <target_type>String</target_type>  
1627 - <target_format/>  
1628 - <target_length>-1</target_length>  
1629 - <target_precision>-1</target_precision>  
1630 - <target_decimal_symbol/>  
1631 - <target_grouping_symbol/>  
1632 - <target_currency_symbol/>  
1633 - <target_null_string/>  
1634 - <target_aggregation_type>-</target_aggregation_type>  
1635 - </field>  
1636 - <field>  
1637 - <field_name>all_content</field_name>  
1638 - <key_value>64</key_value>  
1639 - <target_name>fcno64</target_name>  
1640 - <target_type>String</target_type>  
1641 - <target_format/>  
1642 - <target_length>-1</target_length>  
1643 - <target_precision>-1</target_precision>  
1644 - <target_decimal_symbol/>  
1645 - <target_grouping_symbol/>  
1646 - <target_currency_symbol/>  
1647 - <target_null_string/>  
1648 - <target_aggregation_type>-</target_aggregation_type>  
1649 - </field>  
1650 - <field>  
1651 - <field_name>all_content</field_name>  
1652 - <key_value>65</key_value>  
1653 - <target_name>fcno65</target_name>  
1654 - <target_type>String</target_type>  
1655 - <target_format/>  
1656 - <target_length>-1</target_length>  
1657 - <target_precision>-1</target_precision>  
1658 - <target_decimal_symbol/>  
1659 - <target_grouping_symbol/>  
1660 - <target_currency_symbol/>  
1661 - <target_null_string/>  
1662 - <target_aggregation_type>-</target_aggregation_type>  
1663 - </field>  
1664 - <field>  
1665 - <field_name>all_content</field_name>  
1666 - <key_value>66</key_value>  
1667 - <target_name>fcno66</target_name>  
1668 - <target_type>String</target_type>  
1669 - <target_format/>  
1670 - <target_length>-1</target_length>  
1671 - <target_precision>-1</target_precision>  
1672 - <target_decimal_symbol/>  
1673 - <target_grouping_symbol/>  
1674 - <target_currency_symbol/>  
1675 - <target_null_string/>  
1676 - <target_aggregation_type>-</target_aggregation_type>  
1677 - </field>  
1678 - <field>  
1679 - <field_name>all_content</field_name>  
1680 - <key_value>67</key_value>  
1681 - <target_name>fcno67</target_name>  
1682 - <target_type>String</target_type>  
1683 - <target_format/>  
1684 - <target_length>-1</target_length>  
1685 - <target_precision>-1</target_precision>  
1686 - <target_decimal_symbol/>  
1687 - <target_grouping_symbol/>  
1688 - <target_currency_symbol/>  
1689 - <target_null_string/>  
1690 - <target_aggregation_type>-</target_aggregation_type>  
1691 - </field>  
1692 - <field>  
1693 - <field_name>all_content</field_name>  
1694 - <key_value>68</key_value>  
1695 - <target_name>fcno68</target_name>  
1696 - <target_type>String</target_type>  
1697 - <target_format/>  
1698 - <target_length>-1</target_length>  
1699 - <target_precision>-1</target_precision>  
1700 - <target_decimal_symbol/>  
1701 - <target_grouping_symbol/>  
1702 - <target_currency_symbol/>  
1703 - <target_null_string/>  
1704 - <target_aggregation_type>-</target_aggregation_type>  
1705 - </field>  
1706 - <field>  
1707 - <field_name>all_content</field_name>  
1708 - <key_value>69</key_value>  
1709 - <target_name>fcno69</target_name>  
1710 - <target_type>String</target_type>  
1711 - <target_format/>  
1712 - <target_length>-1</target_length>  
1713 - <target_precision>-1</target_precision>  
1714 - <target_decimal_symbol/>  
1715 - <target_grouping_symbol/>  
1716 - <target_currency_symbol/>  
1717 - <target_null_string/>  
1718 - <target_aggregation_type>-</target_aggregation_type>  
1719 - </field>  
1720 - <field>  
1721 - <field_name>all_content</field_name>  
1722 - <key_value>70</key_value>  
1723 - <target_name>fcno70</target_name>  
1724 - <target_type>String</target_type>  
1725 - <target_format/>  
1726 - <target_length>-1</target_length>  
1727 - <target_precision>-1</target_precision>  
1728 - <target_decimal_symbol/>  
1729 - <target_grouping_symbol/>  
1730 - <target_currency_symbol/>  
1731 - <target_null_string/>  
1732 - <target_aggregation_type>-</target_aggregation_type>  
1733 - </field>  
1734 - </fields>  
1735 - <cluster_schema/>  
1736 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
1737 - <xloc>690</xloc>  
1738 - <yloc>272</yloc>  
1739 - <draw>Y</draw>  
1740 - </GUI>  
1741 - </step>  
1742 -  
1743 - <step>  
1744 - <name>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</name>  
1745 - <type>SelectValues</type>  
1746 - <description/>  
1747 - <distribute>N</distribute>  
1748 - <custom_distribution/>  
1749 - <copies>1</copies>  
1750 - <partitioning>  
1751 - <method>none</method>  
1752 - <schema_name/>  
1753 - </partitioning>  
1754 - <fields> <field> <name>lp</name>  
1755 - <rename/>  
1756 - <length>-2</length>  
1757 - <precision>-2</precision>  
1758 - </field> <field> <name>fcno1</name>  
1759 - <rename/>  
1760 - <length>-2</length>  
1761 - <precision>-2</precision>  
1762 - </field> <field> <name>fcno2</name>  
1763 - <rename/>  
1764 - <length>-2</length>  
1765 - <precision>-2</precision>  
1766 - </field> <field> <name>fcno3</name>  
1767 - <rename/>  
1768 - <length>-2</length>  
1769 - <precision>-2</precision>  
1770 - </field> <field> <name>fcno4</name>  
1771 - <rename/>  
1772 - <length>-2</length>  
1773 - <precision>-2</precision>  
1774 - </field> <field> <name>fcno5</name>  
1775 - <rename/>  
1776 - <length>-2</length>  
1777 - <precision>-2</precision>  
1778 - </field> <field> <name>fcno6</name>  
1779 - <rename/>  
1780 - <length>-2</length>  
1781 - <precision>-2</precision>  
1782 - </field> <field> <name>fcno7</name>  
1783 - <rename/>  
1784 - <length>-2</length>  
1785 - <precision>-2</precision>  
1786 - </field> <field> <name>fcno8</name>  
1787 - <rename/>  
1788 - <length>-2</length>  
1789 - <precision>-2</precision>  
1790 - </field> <field> <name>fcno9</name>  
1791 - <rename/>  
1792 - <length>-2</length>  
1793 - <precision>-2</precision>  
1794 - </field> <field> <name>fcno10</name>  
1795 - <rename/>  
1796 - <length>-2</length>  
1797 - <precision>-2</precision>  
1798 - </field> <field> <name>fcno11</name>  
1799 - <rename/>  
1800 - <length>-2</length>  
1801 - <precision>-2</precision>  
1802 - </field> <field> <name>fcno12</name>  
1803 - <rename/>  
1804 - <length>-2</length>  
1805 - <precision>-2</precision>  
1806 - </field> <field> <name>fcno13</name>  
1807 - <rename/>  
1808 - <length>-2</length>  
1809 - <precision>-2</precision>  
1810 - </field> <field> <name>fcno14</name>  
1811 - <rename/>  
1812 - <length>-2</length>  
1813 - <precision>-2</precision>  
1814 - </field> <field> <name>fcno15</name>  
1815 - <rename/>  
1816 - <length>-2</length>  
1817 - <precision>-2</precision>  
1818 - </field> <field> <name>fcno16</name>  
1819 - <rename/>  
1820 - <length>-2</length>  
1821 - <precision>-2</precision>  
1822 - </field> <field> <name>fcno17</name>  
1823 - <rename/>  
1824 - <length>-2</length>  
1825 - <precision>-2</precision>  
1826 - </field> <field> <name>fcno18</name>  
1827 - <rename/>  
1828 - <length>-2</length>  
1829 - <precision>-2</precision>  
1830 - </field> <field> <name>fcno19</name>  
1831 - <rename/>  
1832 - <length>-2</length>  
1833 - <precision>-2</precision>  
1834 - </field> <field> <name>fcno20</name>  
1835 - <rename/>  
1836 - <length>-2</length>  
1837 - <precision>-2</precision>  
1838 - </field> <field> <name>fcno21</name>  
1839 - <rename/>  
1840 - <length>-2</length>  
1841 - <precision>-2</precision>  
1842 - </field> <field> <name>fcno22</name>  
1843 - <rename/>  
1844 - <length>-2</length>  
1845 - <precision>-2</precision>  
1846 - </field> <field> <name>fcno23</name>  
1847 - <rename/>  
1848 - <length>-2</length>  
1849 - <precision>-2</precision>  
1850 - </field> <field> <name>fcno24</name>  
1851 - <rename/>  
1852 - <length>-2</length>  
1853 - <precision>-2</precision>  
1854 - </field> <field> <name>fcno25</name>  
1855 - <rename/>  
1856 - <length>-2</length>  
1857 - <precision>-2</precision>  
1858 - </field> <field> <name>fcno26</name>  
1859 - <rename/>  
1860 - <length>-2</length>  
1861 - <precision>-2</precision>  
1862 - </field> <field> <name>fcno27</name>  
1863 - <rename/>  
1864 - <length>-2</length>  
1865 - <precision>-2</precision>  
1866 - </field> <field> <name>fcno28</name>  
1867 - <rename/>  
1868 - <length>-2</length>  
1869 - <precision>-2</precision>  
1870 - </field> <field> <name>fcno29</name>  
1871 - <rename/>  
1872 - <length>-2</length>  
1873 - <precision>-2</precision>  
1874 - </field> <field> <name>fcno30</name>  
1875 - <rename/>  
1876 - <length>-2</length>  
1877 - <precision>-2</precision>  
1878 - </field> <field> <name>fcno31</name>  
1879 - <rename/>  
1880 - <length>-2</length>  
1881 - <precision>-2</precision>  
1882 - </field> <field> <name>fcno32</name>  
1883 - <rename/>  
1884 - <length>-2</length>  
1885 - <precision>-2</precision>  
1886 - </field> <field> <name>fcno33</name>  
1887 - <rename/>  
1888 - <length>-2</length>  
1889 - <precision>-2</precision>  
1890 - </field> <field> <name>fcno34</name>  
1891 - <rename/>  
1892 - <length>-2</length>  
1893 - <precision>-2</precision>  
1894 - </field> <field> <name>fcno35</name>  
1895 - <rename/>  
1896 - <length>-2</length>  
1897 - <precision>-2</precision>  
1898 - </field> <field> <name>fcno36</name>  
1899 - <rename/>  
1900 - <length>-2</length>  
1901 - <precision>-2</precision>  
1902 - </field> <field> <name>fcno37</name>  
1903 - <rename/>  
1904 - <length>-2</length>  
1905 - <precision>-2</precision>  
1906 - </field> <field> <name>fcno38</name>  
1907 - <rename/>  
1908 - <length>-2</length>  
1909 - <precision>-2</precision>  
1910 - </field> <field> <name>fcno39</name>  
1911 - <rename/>  
1912 - <length>-2</length>  
1913 - <precision>-2</precision>  
1914 - </field> <field> <name>fcno40</name>  
1915 - <rename/>  
1916 - <length>-2</length>  
1917 - <precision>-2</precision>  
1918 - </field> <field> <name>fcno41</name>  
1919 - <rename/>  
1920 - <length>-2</length>  
1921 - <precision>-2</precision>  
1922 - </field> <field> <name>fcno42</name>  
1923 - <rename/>  
1924 - <length>-2</length>  
1925 - <precision>-2</precision>  
1926 - </field> <field> <name>fcno43</name>  
1927 - <rename/>  
1928 - <length>-2</length>  
1929 - <precision>-2</precision>  
1930 - </field> <field> <name>fcno44</name>  
1931 - <rename/>  
1932 - <length>-2</length>  
1933 - <precision>-2</precision>  
1934 - </field> <field> <name>fcno45</name>  
1935 - <rename/>  
1936 - <length>-2</length>  
1937 - <precision>-2</precision>  
1938 - </field> <field> <name>fcno46</name>  
1939 - <rename/>  
1940 - <length>-2</length>  
1941 - <precision>-2</precision>  
1942 - </field> <field> <name>fcno47</name>  
1943 - <rename/>  
1944 - <length>-2</length>  
1945 - <precision>-2</precision>  
1946 - </field> <field> <name>fcno48</name>  
1947 - <rename/>  
1948 - <length>-2</length>  
1949 - <precision>-2</precision>  
1950 - </field> <field> <name>fcno49</name>  
1951 - <rename/>  
1952 - <length>-2</length>  
1953 - <precision>-2</precision>  
1954 - </field> <field> <name>fcno50</name>  
1955 - <rename/>  
1956 - <length>-2</length>  
1957 - <precision>-2</precision>  
1958 - </field> <field> <name>fcno51</name>  
1959 - <rename/>  
1960 - <length>-2</length>  
1961 - <precision>-2</precision>  
1962 - </field> <field> <name>fcno52</name>  
1963 - <rename/>  
1964 - <length>-2</length>  
1965 - <precision>-2</precision>  
1966 - </field> <field> <name>fcno53</name>  
1967 - <rename/>  
1968 - <length>-2</length>  
1969 - <precision>-2</precision>  
1970 - </field> <field> <name>fcno54</name>  
1971 - <rename/>  
1972 - <length>-2</length>  
1973 - <precision>-2</precision>  
1974 - </field> <field> <name>fcno55</name>  
1975 - <rename/>  
1976 - <length>-2</length>  
1977 - <precision>-2</precision>  
1978 - </field> <field> <name>fcno56</name>  
1979 - <rename/>  
1980 - <length>-2</length>  
1981 - <precision>-2</precision>  
1982 - </field> <field> <name>fcno57</name>  
1983 - <rename/>  
1984 - <length>-2</length>  
1985 - <precision>-2</precision>  
1986 - </field> <field> <name>fcno58</name>  
1987 - <rename/>  
1988 - <length>-2</length>  
1989 - <precision>-2</precision>  
1990 - </field> <field> <name>fcno59</name>  
1991 - <rename/>  
1992 - <length>-2</length>  
1993 - <precision>-2</precision>  
1994 - </field> <field> <name>fcno60</name>  
1995 - <rename/>  
1996 - <length>-2</length>  
1997 - <precision>-2</precision>  
1998 - </field> <field> <name>fcno61</name>  
1999 - <rename/>  
2000 - <length>-2</length>  
2001 - <precision>-2</precision>  
2002 - </field> <field> <name>fcno62</name>  
2003 - <rename/>  
2004 - <length>-2</length>  
2005 - <precision>-2</precision>  
2006 - </field> <field> <name>fcno63</name>  
2007 - <rename/>  
2008 - <length>-2</length>  
2009 - <precision>-2</precision>  
2010 - </field> <field> <name>fcno64</name>  
2011 - <rename/>  
2012 - <length>-2</length>  
2013 - <precision>-2</precision>  
2014 - </field> <field> <name>fcno65</name>  
2015 - <rename/>  
2016 - <length>-2</length>  
2017 - <precision>-2</precision>  
2018 - </field> <field> <name>fcno66</name>  
2019 - <rename/>  
2020 - <length>-2</length>  
2021 - <precision>-2</precision>  
2022 - </field> <field> <name>fcno67</name>  
2023 - <rename/>  
2024 - <length>-2</length>  
2025 - <precision>-2</precision>  
2026 - </field> <field> <name>fcno68</name>  
2027 - <rename/>  
2028 - <length>-2</length>  
2029 - <precision>-2</precision>  
2030 - </field> <field> <name>fcno69</name>  
2031 - <rename/>  
2032 - <length>-2</length>  
2033 - <precision>-2</precision>  
2034 - </field> <field> <name>fcno70</name>  
2035 - <rename/>  
2036 - <length>-2</length>  
2037 - <precision>-2</precision>  
2038 - </field> <select_unspecified>N</select_unspecified>  
2039 - </fields> <cluster_schema/>  
2040 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
2041 - <xloc>691</xloc>  
2042 - <yloc>361</yloc>  
2043 - <draw>Y</draw>  
2044 - </GUI>  
2045 - </step>  
2046 -  
2047 - <step>  
2048 - <name>&#x5408;&#x5e76;&#x5185;&#x5bb9;</name>  
2049 - <type>ScriptValueMod</type>  
2050 - <description/>  
2051 - <distribute>Y</distribute>  
2052 - <custom_distribution/>  
2053 - <copies>1</copies>  
2054 - <partitioning>  
2055 - <method>none</method>  
2056 - <schema_name/>  
2057 - </partitioning>  
2058 - <compatible>N</compatible>  
2059 - <optimizationLevel>9</optimizationLevel>  
2060 - <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>  
2061 - <jsScript_name>Script 1</jsScript_name>  
2062 - <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;&#x2f;&#x2f; &#x987a;&#x5e8f;&#xff0c;id,fcsj,jhlc,zdname,bctype,xldir,isfb&#xa;var all_content_array &#x3d; &#x5b;&#x5d;&#x3b;&#xa;var all_content &#x3d; &#x22;&#x22;&#x3b; &#xa;all_content_array.push&#x28;id&#x29;&#x3b;&#xa;all_content_array.push&#x28;fcsj&#x29;&#x3b;&#xa;all_content_array.push&#x28;jhlc&#x29;&#x3b;&#xa;all_content_array.push&#x28;fczdName&#x29;&#x3b;&#xa;all_content_array.push&#x28;bc_type&#x29;&#x3b;&#xa;all_content_array.push&#x28;xl_dir&#x29;&#x3b;&#xa;all_content_array.push&#x28;isfb&#x29;&#x3b;&#xa;all_content_array.push&#x28;qdz &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;all_content_array.push&#x28;zdz &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;all_content_array.push&#x28;tcc &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;&#xa;all_content &#x3d; all_content_array.join&#x28;&#x22;,&#x22;&#x29;&#x3b; &#x2f;&#x2f; &#x9017;&#x53f7;&#x5206;&#x9694;</jsScript_script>  
2063 - </jsScript> </jsScripts> <fields> <field> <name>all_content</name>  
2064 - <rename>all_content</rename>  
2065 - <type>String</type>  
2066 - <length>-1</length>  
2067 - <precision>-1</precision>  
2068 - <replace>N</replace>  
2069 - </field> </fields> <cluster_schema/>  
2070 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
2071 - <xloc>551</xloc>  
2072 - <yloc>366</yloc>  
2073 - <draw>Y</draw>  
2074 - </GUI>  
2075 - </step>  
2076 -  
2077 - <step>  
2078 - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>  
2079 - <type>SelectValues</type>  
2080 - <description/>  
2081 - <distribute>Y</distribute>  
2082 - <custom_distribution/>  
2083 - <copies>1</copies>  
2084 - <partitioning>  
2085 - <method>none</method>  
2086 - <schema_name/>  
2087 - </partitioning>  
2088 - <fields> <field> <name>id</name>  
2089 - <rename/>  
2090 - <length>-2</length>  
2091 - <precision>-2</precision>  
2092 - </field> <field> <name>lp</name>  
2093 - <rename/>  
2094 - <length>-2</length>  
2095 - <precision>-2</precision>  
2096 - </field> <field> <name>fcsj</name>  
2097 - <rename/>  
2098 - <length>-2</length>  
2099 - <precision>-2</precision>  
2100 - </field> <field> <name>fcno</name>  
2101 - <rename/>  
2102 - <length>-2</length>  
2103 - <precision>-2</precision>  
2104 - </field> <field> <name>bcs</name>  
2105 - <rename/>  
2106 - <length>-2</length>  
2107 - <precision>-2</precision>  
2108 - </field> <field> <name>bc_type</name>  
2109 - <rename/>  
2110 - <length>-2</length>  
2111 - <precision>-2</precision>  
2112 - </field> <field> <name>qdzName</name>  
2113 - <rename/>  
2114 - <length>-2</length>  
2115 - <precision>-2</precision>  
2116 - </field> <field> <name>zdzName</name>  
2117 - <rename/>  
2118 - <length>-2</length>  
2119 - <precision>-2</precision>  
2120 - </field> <field> <name>xl_dir</name>  
2121 - <rename/>  
2122 - <length>-2</length>  
2123 - <precision>-2</precision>  
2124 - </field> <field> <name>isfb</name>  
2125 - <rename/>  
2126 - <length>-2</length>  
2127 - <precision>-2</precision>  
2128 - </field> <field> <name>jhlc</name>  
2129 - <rename/>  
2130 - <length>-2</length>  
2131 - <precision>-2</precision>  
2132 - </field> <field> <name>qdz</name>  
2133 - <rename/>  
2134 - <length>-2</length>  
2135 - <precision>-2</precision>  
2136 - </field> <field> <name>zdz</name>  
2137 - <rename/>  
2138 - <length>-2</length>  
2139 - <precision>-2</precision>  
2140 - </field> <field> <name>tcc</name>  
2141 - <rename/>  
2142 - <length>-2</length>  
2143 - <precision>-2</precision>  
2144 - </field> <select_unspecified>N</select_unspecified>  
2145 - </fields> <cluster_schema/>  
2146 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
2147 - <xloc>690</xloc>  
2148 - <yloc>188</yloc>  
2149 - <draw>Y</draw>  
2150 - </GUI>  
2151 - </step>  
2152 -  
2153 - <step>  
2154 - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</name>  
2155 - <type>SelectValues</type>  
2156 - <description/>  
2157 - <distribute>Y</distribute>  
2158 - <custom_distribution/>  
2159 - <copies>1</copies>  
2160 - <partitioning>  
2161 - <method>none</method>  
2162 - <schema_name/>  
2163 - </partitioning>  
2164 - <fields> <field> <name>id</name>  
2165 - <rename/>  
2166 - <length>-2</length>  
2167 - <precision>-2</precision>  
2168 - </field> <field> <name>lp</name>  
2169 - <rename/>  
2170 - <length>-2</length>  
2171 - <precision>-2</precision>  
2172 - </field> <field> <name>fcsj</name>  
2173 - <rename/>  
2174 - <length>-2</length>  
2175 - <precision>-2</precision>  
2176 - </field> <field> <name>fcno</name>  
2177 - <rename/>  
2178 - <length>-2</length>  
2179 - <precision>-2</precision>  
2180 - </field> <field> <name>bcs</name>  
2181 - <rename/>  
2182 - <length>-2</length>  
2183 - <precision>-2</precision>  
2184 - </field> <field> <name>bc_type</name>  
2185 - <rename/>  
2186 - <length>-2</length>  
2187 - <precision>-2</precision>  
2188 - </field> <field> <name>qdzName</name>  
2189 - <rename/>  
2190 - <length>-2</length>  
2191 - <precision>-2</precision>  
2192 - </field> <field> <name>zdzName</name>  
2193 - <rename/>  
2194 - <length>-2</length>  
2195 - <precision>-2</precision>  
2196 - </field> <field> <name>xl_dir</name>  
2197 - <rename/>  
2198 - <length>-2</length>  
2199 - <precision>-2</precision>  
2200 - </field> <field> <name>isfb</name>  
2201 - <rename/>  
2202 - <length>-2</length>  
2203 - <precision>-2</precision>  
2204 - </field> <field> <name>jhlc</name>  
2205 - <rename/>  
2206 - <length>-2</length>  
2207 - <precision>-2</precision>  
2208 - </field> <field> <name>qdz</name>  
2209 - <rename/>  
2210 - <length>-2</length>  
2211 - <precision>-2</precision>  
2212 - </field> <field> <name>zdz</name>  
2213 - <rename/>  
2214 - <length>-2</length>  
2215 - <precision>-2</precision>  
2216 - </field> <field> <name>tcc</name>  
2217 - <rename/>  
2218 - <length>-2</length>  
2219 - <precision>-2</precision>  
2220 - </field> <select_unspecified>N</select_unspecified>  
2221 - </fields> <cluster_schema/>  
2222 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
2223 - <xloc>402</xloc>  
2224 - <yloc>189</yloc>  
2225 - <draw>Y</draw>  
2226 - </GUI>  
2227 - </step>  
2228 -  
2229 - <step>  
2230 - <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>  
2231 - <type>SortRows</type>  
2232 - <description/>  
2233 - <distribute>Y</distribute>  
2234 - <custom_distribution/>  
2235 - <copies>1</copies>  
2236 - <partitioning>  
2237 - <method>none</method>  
2238 - <schema_name/>  
2239 - </partitioning>  
2240 - <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>  
2241 - <prefix>out</prefix>  
2242 - <sort_size>1000000</sort_size>  
2243 - <free_memory/>  
2244 - <compress>N</compress>  
2245 - <compress_variable/>  
2246 - <unique_rows>N</unique_rows>  
2247 - <fields>  
2248 - <field>  
2249 - <name>bcs</name>  
2250 - <ascending>Y</ascending>  
2251 - <case_sensitive>N</case_sensitive>  
2252 - <presorted>N</presorted>  
2253 - </field>  
2254 - </fields>  
2255 - <cluster_schema/>  
2256 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
2257 - <xloc>549</xloc>  
2258 - <yloc>191</yloc>  
2259 - <draw>Y</draw>  
2260 - </GUI>  
2261 - </step>  
2262 -  
2263 - <step>  
2264 - <name>&#x6587;&#x672c;&#x6587;&#x4ef6;&#x8f93;&#x51fa;</name>  
2265 - <type>TextFileOutput</type>  
2266 - <description/>  
2267 - <distribute>Y</distribute>  
2268 - <custom_distribution/>  
2269 - <copies>1</copies>  
2270 - <partitioning>  
2271 - <method>none</method>  
2272 - <schema_name/>  
2273 - </partitioning>  
2274 - <separator>&#x3b;</separator>  
2275 - <enclosure>&#x22;</enclosure>  
2276 - <enclosure_forced>N</enclosure_forced>  
2277 - <enclosure_fix_disabled>N</enclosure_fix_disabled>  
2278 - <header>Y</header>  
2279 - <footer>N</footer>  
2280 - <format>DOS</format>  
2281 - <compression>None</compression>  
2282 - <encoding>UTF-8</encoding>  
2283 - <endedLine/>  
2284 - <fileNameInField>N</fileNameInField>  
2285 - <fileNameField/>  
2286 - <create_parent_folder>Y</create_parent_folder>  
2287 - <file>  
2288 - <name>&#x24;&#x7b;tempfilepath&#x7d;</name>  
2289 - <is_command>N</is_command>  
2290 - <servlet_output>N</servlet_output>  
2291 - <do_not_open_new_file_init>N</do_not_open_new_file_init>  
2292 - <extention>txt</extention>  
2293 - <append>N</append>  
2294 - <split>N</split>  
2295 - <haspartno>N</haspartno>  
2296 - <add_date>N</add_date>  
2297 - <add_time>N</add_time>  
2298 - <SpecifyFormat>N</SpecifyFormat>  
2299 - <date_time_format/>  
2300 - <add_to_result_filenames>Y</add_to_result_filenames>  
2301 - <pad>N</pad>  
2302 - <fast_dump>N</fast_dump>  
2303 - <splitevery>0</splitevery>  
2304 - </file>  
2305 - <fields>  
2306 - <field>  
2307 - <name>lp</name>  
2308 - <type>String</type>  
2309 - <format/>  
2310 - <currency/>  
2311 - <decimal/>  
2312 - <group/>  
2313 - <nullif/>  
2314 - <trim_type>none</trim_type>  
2315 - <length>255</length>  
2316 - <precision>-1</precision>  
2317 - </field>  
2318 - <field>  
2319 - <name>fcno1</name>  
2320 - <type>String</type>  
2321 - <format/>  
2322 - <currency/>  
2323 - <decimal/>  
2324 - <group/>  
2325 - <nullif/>  
2326 - <trim_type>none</trim_type>  
2327 - <length>-1</length>  
2328 - <precision>-1</precision>  
2329 - </field>  
2330 - <field>  
2331 - <name>fcno2</name>  
2332 - <type>String</type>  
2333 - <format/>  
2334 - <currency/>  
2335 - <decimal/>  
2336 - <group/>  
2337 - <nullif/>  
2338 - <trim_type>none</trim_type>  
2339 - <length>-1</length>  
2340 - <precision>-1</precision>  
2341 - </field>  
2342 - <field>  
2343 - <name>fcno3</name>  
2344 - <type>String</type>  
2345 - <format/>  
2346 - <currency/>  
2347 - <decimal/>  
2348 - <group/>  
2349 - <nullif/>  
2350 - <trim_type>none</trim_type>  
2351 - <length>-1</length>  
2352 - <precision>-1</precision>  
2353 - </field>  
2354 - <field>  
2355 - <name>fcno4</name>  
2356 - <type>String</type>  
2357 - <format/>  
2358 - <currency/>  
2359 - <decimal/>  
2360 - <group/>  
2361 - <nullif/>  
2362 - <trim_type>none</trim_type>  
2363 - <length>-1</length>  
2364 - <precision>-1</precision>  
2365 - </field>  
2366 - <field>  
2367 - <name>fcno5</name>  
2368 - <type>String</type>  
2369 - <format/>  
2370 - <currency/>  
2371 - <decimal/>  
2372 - <group/>  
2373 - <nullif/>  
2374 - <trim_type>none</trim_type>  
2375 - <length>-1</length>  
2376 - <precision>-1</precision>  
2377 - </field>  
2378 - <field>  
2379 - <name>fcno6</name>  
2380 - <type>String</type>  
2381 - <format/>  
2382 - <currency/>  
2383 - <decimal/>  
2384 - <group/>  
2385 - <nullif/>  
2386 - <trim_type>none</trim_type>  
2387 - <length>-1</length>  
2388 - <precision>-1</precision>  
2389 - </field>  
2390 - <field>  
2391 - <name>fcno7</name>  
2392 - <type>String</type>  
2393 - <format/>  
2394 - <currency/>  
2395 - <decimal/>  
2396 - <group/>  
2397 - <nullif/>  
2398 - <trim_type>none</trim_type>  
2399 - <length>-1</length>  
2400 - <precision>-1</precision>  
2401 - </field>  
2402 - <field>  
2403 - <name>fcno8</name>  
2404 - <type>String</type>  
2405 - <format/>  
2406 - <currency/>  
2407 - <decimal/>  
2408 - <group/>  
2409 - <nullif/>  
2410 - <trim_type>none</trim_type>  
2411 - <length>-1</length>  
2412 - <precision>-1</precision>  
2413 - </field>  
2414 - <field>  
2415 - <name>fcno9</name>  
2416 - <type>String</type>  
2417 - <format/>  
2418 - <currency/>  
2419 - <decimal/>  
2420 - <group/>  
2421 - <nullif/>  
2422 - <trim_type>none</trim_type>  
2423 - <length>-1</length>  
2424 - <precision>-1</precision>  
2425 - </field>  
2426 - <field>  
2427 - <name>fcno10</name>  
2428 - <type>String</type>  
2429 - <format/>  
2430 - <currency/>  
2431 - <decimal/>  
2432 - <group/>  
2433 - <nullif/>  
2434 - <trim_type>none</trim_type>  
2435 - <length>-1</length>  
2436 - <precision>-1</precision>  
2437 - </field>  
2438 - <field>  
2439 - <name>fcno11</name>  
2440 - <type>String</type>  
2441 - <format/>  
2442 - <currency/>  
2443 - <decimal/>  
2444 - <group/>  
2445 - <nullif/>  
2446 - <trim_type>none</trim_type>  
2447 - <length>-1</length>  
2448 - <precision>-1</precision>  
2449 - </field>  
2450 - <field>  
2451 - <name>fcno12</name>  
2452 - <type>String</type>  
2453 - <format/>  
2454 - <currency/>  
2455 - <decimal/>  
2456 - <group/>  
2457 - <nullif/>  
2458 - <trim_type>none</trim_type>  
2459 - <length>-1</length>  
2460 - <precision>-1</precision>  
2461 - </field>  
2462 - <field>  
2463 - <name>fcno13</name>  
2464 - <type>String</type>  
2465 - <format/>  
2466 - <currency/>  
2467 - <decimal/>  
2468 - <group/>  
2469 - <nullif/>  
2470 - <trim_type>none</trim_type>  
2471 - <length>-1</length>  
2472 - <precision>-1</precision>  
2473 - </field>  
2474 - <field>  
2475 - <name>fcno14</name>  
2476 - <type>String</type>  
2477 - <format/>  
2478 - <currency/>  
2479 - <decimal/>  
2480 - <group/>  
2481 - <nullif/>  
2482 - <trim_type>none</trim_type>  
2483 - <length>-1</length>  
2484 - <precision>-1</precision>  
2485 - </field>  
2486 - <field>  
2487 - <name>fcno15</name>  
2488 - <type>String</type>  
2489 - <format/>  
2490 - <currency/>  
2491 - <decimal/>  
2492 - <group/>  
2493 - <nullif/>  
2494 - <trim_type>none</trim_type>  
2495 - <length>-1</length>  
2496 - <precision>-1</precision>  
2497 - </field>  
2498 - <field>  
2499 - <name>fcno16</name>  
2500 - <type>String</type>  
2501 - <format/>  
2502 - <currency/>  
2503 - <decimal/>  
2504 - <group/>  
2505 - <nullif/>  
2506 - <trim_type>none</trim_type>  
2507 - <length>-1</length>  
2508 - <precision>-1</precision>  
2509 - </field>  
2510 - <field>  
2511 - <name>fcno17</name>  
2512 - <type>String</type>  
2513 - <format/>  
2514 - <currency/>  
2515 - <decimal/>  
2516 - <group/>  
2517 - <nullif/>  
2518 - <trim_type>none</trim_type>  
2519 - <length>-1</length>  
2520 - <precision>-1</precision>  
2521 - </field>  
2522 - <field>  
2523 - <name>fcno18</name>  
2524 - <type>String</type>  
2525 - <format/>  
2526 - <currency/>  
2527 - <decimal/>  
2528 - <group/>  
2529 - <nullif/>  
2530 - <trim_type>none</trim_type>  
2531 - <length>-1</length>  
2532 - <precision>-1</precision>  
2533 - </field>  
2534 - <field>  
2535 - <name>fcno19</name>  
2536 - <type>String</type>  
2537 - <format/>  
2538 - <currency/>  
2539 - <decimal/>  
2540 - <group/>  
2541 - <nullif/>  
2542 - <trim_type>none</trim_type>  
2543 - <length>-1</length>  
2544 - <precision>-1</precision>  
2545 - </field>  
2546 - <field>  
2547 - <name>fcno20</name>  
2548 - <type>String</type>  
2549 - <format/>  
2550 - <currency/>  
2551 - <decimal/>  
2552 - <group/>  
2553 - <nullif/>  
2554 - <trim_type>none</trim_type>  
2555 - <length>-1</length>  
2556 - <precision>-1</precision>  
2557 - </field>  
2558 - <field>  
2559 - <name>fcno21</name>  
2560 - <type>String</type>  
2561 - <format/>  
2562 - <currency/>  
2563 - <decimal/>  
2564 - <group/>  
2565 - <nullif/>  
2566 - <trim_type>none</trim_type>  
2567 - <length>-1</length>  
2568 - <precision>-1</precision>  
2569 - </field>  
2570 - <field>  
2571 - <name>fcno22</name>  
2572 - <type>String</type>  
2573 - <format/>  
2574 - <currency/>  
2575 - <decimal/>  
2576 - <group/>  
2577 - <nullif/>  
2578 - <trim_type>none</trim_type>  
2579 - <length>-1</length>  
2580 - <precision>-1</precision>  
2581 - </field>  
2582 - <field>  
2583 - <name>fcno23</name>  
2584 - <type>String</type>  
2585 - <format/>  
2586 - <currency/>  
2587 - <decimal/>  
2588 - <group/>  
2589 - <nullif/>  
2590 - <trim_type>none</trim_type>  
2591 - <length>-1</length>  
2592 - <precision>-1</precision>  
2593 - </field>  
2594 - <field>  
2595 - <name>fcno24</name>  
2596 - <type>String</type>  
2597 - <format/>  
2598 - <currency/>  
2599 - <decimal/>  
2600 - <group/>  
2601 - <nullif/>  
2602 - <trim_type>none</trim_type>  
2603 - <length>-1</length>  
2604 - <precision>-1</precision>  
2605 - </field>  
2606 - <field>  
2607 - <name>fcno25</name>  
2608 - <type>String</type>  
2609 - <format/>  
2610 - <currency/>  
2611 - <decimal/>  
2612 - <group/>  
2613 - <nullif/>  
2614 - <trim_type>none</trim_type>  
2615 - <length>-1</length>  
2616 - <precision>-1</precision>  
2617 - </field>  
2618 - <field>  
2619 - <name>fcno26</name>  
2620 - <type>String</type>  
2621 - <format/>  
2622 - <currency/>  
2623 - <decimal/>  
2624 - <group/>  
2625 - <nullif/>  
2626 - <trim_type>none</trim_type>  
2627 - <length>-1</length>  
2628 - <precision>-1</precision>  
2629 - </field>  
2630 - <field>  
2631 - <name>fcno27</name>  
2632 - <type>String</type>  
2633 - <format/>  
2634 - <currency/>  
2635 - <decimal/>  
2636 - <group/>  
2637 - <nullif/>  
2638 - <trim_type>none</trim_type>  
2639 - <length>-1</length>  
2640 - <precision>-1</precision>  
2641 - </field>  
2642 - <field>  
2643 - <name>fcno28</name>  
2644 - <type>String</type>  
2645 - <format/>  
2646 - <currency/>  
2647 - <decimal/>  
2648 - <group/>  
2649 - <nullif/>  
2650 - <trim_type>none</trim_type>  
2651 - <length>-1</length>  
2652 - <precision>-1</precision>  
2653 - </field>  
2654 - <field>  
2655 - <name>fcno29</name>  
2656 - <type>String</type>  
2657 - <format/>  
2658 - <currency/>  
2659 - <decimal/>  
2660 - <group/>  
2661 - <nullif/>  
2662 - <trim_type>none</trim_type>  
2663 - <length>-1</length>  
2664 - <precision>-1</precision>  
2665 - </field>  
2666 - <field>  
2667 - <name>fcno30</name>  
2668 - <type>String</type>  
2669 - <format/>  
2670 - <currency/>  
2671 - <decimal/>  
2672 - <group/>  
2673 - <nullif/>  
2674 - <trim_type>none</trim_type>  
2675 - <length>-1</length>  
2676 - <precision>-1</precision>  
2677 - </field>  
2678 - <field>  
2679 - <name>fcno31</name>  
2680 - <type>String</type>  
2681 - <format/>  
2682 - <currency/>  
2683 - <decimal/>  
2684 - <group/>  
2685 - <nullif/>  
2686 - <trim_type>none</trim_type>  
2687 - <length>-1</length>  
2688 - <precision>-1</precision>  
2689 - </field>  
2690 - <field>  
2691 - <name>fcno32</name>  
2692 - <type>String</type>  
2693 - <format/>  
2694 - <currency/>  
2695 - <decimal/>  
2696 - <group/>  
2697 - <nullif/>  
2698 - <trim_type>none</trim_type>  
2699 - <length>-1</length>  
2700 - <precision>-1</precision>  
2701 - </field>  
2702 - <field>  
2703 - <name>fcno33</name>  
2704 - <type>String</type>  
2705 - <format/>  
2706 - <currency/>  
2707 - <decimal/>  
2708 - <group/>  
2709 - <nullif/>  
2710 - <trim_type>none</trim_type>  
2711 - <length>-1</length>  
2712 - <precision>-1</precision>  
2713 - </field>  
2714 - <field>  
2715 - <name>fcno34</name>  
2716 - <type>String</type>  
2717 - <format/>  
2718 - <currency/>  
2719 - <decimal/>  
2720 - <group/>  
2721 - <nullif/>  
2722 - <trim_type>none</trim_type>  
2723 - <length>-1</length>  
2724 - <precision>-1</precision>  
2725 - </field>  
2726 - <field>  
2727 - <name>fcno35</name>  
2728 - <type>String</type>  
2729 - <format/>  
2730 - <currency/>  
2731 - <decimal/>  
2732 - <group/>  
2733 - <nullif/>  
2734 - <trim_type>none</trim_type>  
2735 - <length>-1</length>  
2736 - <precision>-1</precision>  
2737 - </field>  
2738 - <field>  
2739 - <name>fcno36</name>  
2740 - <type>String</type>  
2741 - <format/>  
2742 - <currency/>  
2743 - <decimal/>  
2744 - <group/>  
2745 - <nullif/>  
2746 - <trim_type>none</trim_type>  
2747 - <length>-1</length>  
2748 - <precision>-1</precision>  
2749 - </field>  
2750 - <field>  
2751 - <name>fcno37</name>  
2752 - <type>String</type>  
2753 - <format/>  
2754 - <currency/>  
2755 - <decimal/>  
2756 - <group/>  
2757 - <nullif/>  
2758 - <trim_type>none</trim_type>  
2759 - <length>-1</length>  
2760 - <precision>-1</precision>  
2761 - </field>  
2762 - <field>  
2763 - <name>fcno38</name>  
2764 - <type>String</type>  
2765 - <format/>  
2766 - <currency/>  
2767 - <decimal/>  
2768 - <group/>  
2769 - <nullif/>  
2770 - <trim_type>none</trim_type>  
2771 - <length>-1</length>  
2772 - <precision>-1</precision>  
2773 - </field>  
2774 - <field>  
2775 - <name>fcno39</name>  
2776 - <type>String</type>  
2777 - <format/>  
2778 - <currency/>  
2779 - <decimal/>  
2780 - <group/>  
2781 - <nullif/>  
2782 - <trim_type>none</trim_type>  
2783 - <length>-1</length>  
2784 - <precision>-1</precision>  
2785 - </field>  
2786 - <field>  
2787 - <name>fcno40</name>  
2788 - <type>String</type>  
2789 - <format/>  
2790 - <currency/>  
2791 - <decimal/>  
2792 - <group/>  
2793 - <nullif/>  
2794 - <trim_type>none</trim_type>  
2795 - <length>-1</length>  
2796 - <precision>-1</precision>  
2797 - </field>  
2798 - <field>  
2799 - <name>fcno41</name>  
2800 - <type>String</type>  
2801 - <format/>  
2802 - <currency/>  
2803 - <decimal/>  
2804 - <group/>  
2805 - <nullif/>  
2806 - <trim_type>none</trim_type>  
2807 - <length>-1</length>  
2808 - <precision>-1</precision>  
2809 - </field>  
2810 - <field>  
2811 - <name>fcno42</name>  
2812 - <type>String</type>  
2813 - <format/>  
2814 - <currency/>  
2815 - <decimal/>  
2816 - <group/>  
2817 - <nullif/>  
2818 - <trim_type>none</trim_type>  
2819 - <length>-1</length>  
2820 - <precision>-1</precision>  
2821 - </field>  
2822 - <field>  
2823 - <name>fcno43</name>  
2824 - <type>String</type>  
2825 - <format/>  
2826 - <currency/>  
2827 - <decimal/>  
2828 - <group/>  
2829 - <nullif/>  
2830 - <trim_type>none</trim_type>  
2831 - <length>-1</length>  
2832 - <precision>-1</precision>  
2833 - </field>  
2834 - <field>  
2835 - <name>fcno44</name>  
2836 - <type>String</type>  
2837 - <format/>  
2838 - <currency/>  
2839 - <decimal/>  
2840 - <group/>  
2841 - <nullif/>  
2842 - <trim_type>none</trim_type>  
2843 - <length>-1</length>  
2844 - <precision>-1</precision>  
2845 - </field>  
2846 - <field>  
2847 - <name>fcno45</name>  
2848 - <type>String</type>  
2849 - <format/>  
2850 - <currency/>  
2851 - <decimal/>  
2852 - <group/>  
2853 - <nullif/>  
2854 - <trim_type>none</trim_type>  
2855 - <length>-1</length>  
2856 - <precision>-1</precision>  
2857 - </field>  
2858 - <field>  
2859 - <name>fcno46</name>  
2860 - <type>String</type>  
2861 - <format/>  
2862 - <currency/>  
2863 - <decimal/>  
2864 - <group/>  
2865 - <nullif/>  
2866 - <trim_type>none</trim_type>  
2867 - <length>-1</length>  
2868 - <precision>-1</precision>  
2869 - </field>  
2870 - <field>  
2871 - <name>fcno47</name>  
2872 - <type>String</type>  
2873 - <format/>  
2874 - <currency/>  
2875 - <decimal/>  
2876 - <group/>  
2877 - <nullif/>  
2878 - <trim_type>none</trim_type>  
2879 - <length>-1</length>  
2880 - <precision>-1</precision>  
2881 - </field>  
2882 - <field>  
2883 - <name>fcno48</name>  
2884 - <type>String</type>  
2885 - <format/>  
2886 - <currency/>  
2887 - <decimal/>  
2888 - <group/>  
2889 - <nullif/>  
2890 - <trim_type>none</trim_type>  
2891 - <length>-1</length>  
2892 - <precision>-1</precision>  
2893 - </field>  
2894 - <field>  
2895 - <name>fcno49</name>  
2896 - <type>String</type>  
2897 - <format/>  
2898 - <currency/>  
2899 - <decimal/>  
2900 - <group/>  
2901 - <nullif/>  
2902 - <trim_type>none</trim_type>  
2903 - <length>-1</length>  
2904 - <precision>-1</precision>  
2905 - </field>  
2906 - <field>  
2907 - <name>fcno50</name>  
2908 - <type>String</type>  
2909 - <format/>  
2910 - <currency/>  
2911 - <decimal/>  
2912 - <group/>  
2913 - <nullif/>  
2914 - <trim_type>none</trim_type>  
2915 - <length>-1</length>  
2916 - <precision>-1</precision>  
2917 - </field>  
2918 - <field>  
2919 - <name>fcno51</name>  
2920 - <type>String</type>  
2921 - <format/>  
2922 - <currency/>  
2923 - <decimal/>  
2924 - <group/>  
2925 - <nullif/>  
2926 - <trim_type>none</trim_type>  
2927 - <length>-1</length>  
2928 - <precision>-1</precision>  
2929 - </field>  
2930 - <field>  
2931 - <name>fcno52</name>  
2932 - <type>String</type>  
2933 - <format/>  
2934 - <currency/>  
2935 - <decimal/>  
2936 - <group/>  
2937 - <nullif/>  
2938 - <trim_type>none</trim_type>  
2939 - <length>-1</length>  
2940 - <precision>-1</precision>  
2941 - </field>  
2942 - <field>  
2943 - <name>fcno53</name>  
2944 - <type>String</type>  
2945 - <format/>  
2946 - <currency/>  
2947 - <decimal/>  
2948 - <group/>  
2949 - <nullif/>  
2950 - <trim_type>none</trim_type>  
2951 - <length>-1</length>  
2952 - <precision>-1</precision>  
2953 - </field>  
2954 - <field>  
2955 - <name>fcno54</name>  
2956 - <type>String</type>  
2957 - <format/>  
2958 - <currency/>  
2959 - <decimal/>  
2960 - <group/>  
2961 - <nullif/>  
2962 - <trim_type>none</trim_type>  
2963 - <length>-1</length>  
2964 - <precision>-1</precision>  
2965 - </field>  
2966 - <field>  
2967 - <name>fcno55</name>  
2968 - <type>String</type>  
2969 - <format/>  
2970 - <currency/>  
2971 - <decimal/>  
2972 - <group/>  
2973 - <nullif/>  
2974 - <trim_type>none</trim_type>  
2975 - <length>-1</length>  
2976 - <precision>-1</precision>  
2977 - </field>  
2978 - <field>  
2979 - <name>fcno56</name>  
2980 - <type>String</type>  
2981 - <format/>  
2982 - <currency/>  
2983 - <decimal/>  
2984 - <group/>  
2985 - <nullif/>  
2986 - <trim_type>none</trim_type>  
2987 - <length>-1</length>  
2988 - <precision>-1</precision>  
2989 - </field>  
2990 - <field>  
2991 - <name>fcno57</name>  
2992 - <type>String</type>  
2993 - <format/>  
2994 - <currency/>  
2995 - <decimal/>  
2996 - <group/>  
2997 - <nullif/>  
2998 - <trim_type>none</trim_type>  
2999 - <length>-1</length>  
3000 - <precision>-1</precision>  
3001 - </field>  
3002 - <field>  
3003 - <name>fcno58</name>  
3004 - <type>String</type>  
3005 - <format/>  
3006 - <currency/>  
3007 - <decimal/>  
3008 - <group/>  
3009 - <nullif/>  
3010 - <trim_type>none</trim_type>  
3011 - <length>-1</length>  
3012 - <precision>-1</precision>  
3013 - </field>  
3014 - <field>  
3015 - <name>fcno59</name>  
3016 - <type>String</type>  
3017 - <format/>  
3018 - <currency/>  
3019 - <decimal/>  
3020 - <group/>  
3021 - <nullif/>  
3022 - <trim_type>none</trim_type>  
3023 - <length>-1</length>  
3024 - <precision>-1</precision>  
3025 - </field>  
3026 - <field>  
3027 - <name>fcno60</name>  
3028 - <type>String</type>  
3029 - <format/>  
3030 - <currency/>  
3031 - <decimal/>  
3032 - <group/>  
3033 - <nullif/>  
3034 - <trim_type>none</trim_type>  
3035 - <length>-1</length>  
3036 - <precision>-1</precision>  
3037 - </field>  
3038 - <field>  
3039 - <name>fcno61</name>  
3040 - <type>String</type>  
3041 - <format/>  
3042 - <currency/>  
3043 - <decimal/>  
3044 - <group/>  
3045 - <nullif/>  
3046 - <trim_type>none</trim_type>  
3047 - <length>-1</length>  
3048 - <precision>-1</precision>  
3049 - </field>  
3050 - <field>  
3051 - <name>fcno62</name>  
3052 - <type>String</type>  
3053 - <format/>  
3054 - <currency/>  
3055 - <decimal/>  
3056 - <group/>  
3057 - <nullif/>  
3058 - <trim_type>none</trim_type>  
3059 - <length>-1</length>  
3060 - <precision>-1</precision>  
3061 - </field>  
3062 - <field>  
3063 - <name>fcno63</name>  
3064 - <type>String</type>  
3065 - <format/>  
3066 - <currency/>  
3067 - <decimal/>  
3068 - <group/>  
3069 - <nullif/>  
3070 - <trim_type>none</trim_type>  
3071 - <length>-1</length>  
3072 - <precision>-1</precision>  
3073 - </field>  
3074 - <field>  
3075 - <name>fcno64</name>  
3076 - <type>String</type>  
3077 - <format/>  
3078 - <currency/>  
3079 - <decimal/>  
3080 - <group/>  
3081 - <nullif/>  
3082 - <trim_type>none</trim_type>  
3083 - <length>-1</length>  
3084 - <precision>-1</precision>  
3085 - </field>  
3086 - <field>  
3087 - <name>fcno65</name>  
3088 - <type>String</type>  
3089 - <format/>  
3090 - <currency/>  
3091 - <decimal/>  
3092 - <group/>  
3093 - <nullif/>  
3094 - <trim_type>none</trim_type>  
3095 - <length>-1</length>  
3096 - <precision>-1</precision>  
3097 - </field>  
3098 - <field>  
3099 - <name>fcno66</name>  
3100 - <type>String</type>  
3101 - <format/>  
3102 - <currency/>  
3103 - <decimal/>  
3104 - <group/>  
3105 - <nullif/>  
3106 - <trim_type>none</trim_type>  
3107 - <length>-1</length>  
3108 - <precision>-1</precision>  
3109 - </field>  
3110 - <field>  
3111 - <name>fcno67</name>  
3112 - <type>String</type>  
3113 - <format/>  
3114 - <currency/>  
3115 - <decimal/>  
3116 - <group/>  
3117 - <nullif/>  
3118 - <trim_type>none</trim_type>  
3119 - <length>-1</length>  
3120 - <precision>-1</precision>  
3121 - </field>  
3122 - <field>  
3123 - <name>fcno68</name>  
3124 - <type>String</type>  
3125 - <format/>  
3126 - <currency/>  
3127 - <decimal/>  
3128 - <group/>  
3129 - <nullif/>  
3130 - <trim_type>none</trim_type>  
3131 - <length>-1</length>  
3132 - <precision>-1</precision>  
3133 - </field>  
3134 - <field>  
3135 - <name>fcno69</name>  
3136 - <type>String</type>  
3137 - <format/>  
3138 - <currency/>  
3139 - <decimal/>  
3140 - <group/>  
3141 - <nullif/>  
3142 - <trim_type>none</trim_type>  
3143 - <length>-1</length>  
3144 - <precision>-1</precision>  
3145 - </field>  
3146 - <field>  
3147 - <name>fcno70</name>  
3148 - <type>String</type>  
3149 - <format/>  
3150 - <currency/>  
3151 - <decimal/>  
3152 - <group/>  
3153 - <nullif/>  
3154 - <trim_type>none</trim_type>  
3155 - <length>-1</length>  
3156 - <precision>-1</precision>  
3157 - </field>  
3158 - </fields>  
3159 - <cluster_schema/>  
3160 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3161 - <xloc>880</xloc>  
3162 - <yloc>365</yloc>  
3163 - <draw>Y</draw>  
3164 - </GUI>  
3165 - </step>  
3166 -  
3167 - <step>  
3168 - <name>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</name>  
3169 - <type>DBLookup</type>  
3170 - <description/>  
3171 - <distribute>Y</distribute>  
3172 - <custom_distribution/>  
3173 - <copies>1</copies>  
3174 - <partitioning>  
3175 - <method>none</method>  
3176 - <schema_name/>  
3177 - </partitioning>  
3178 - <connection>bus_control_variable</connection>  
3179 - <cache>Y</cache>  
3180 - <cache_load_all>Y</cache_load_all>  
3181 - <cache_size>0</cache_size>  
3182 - <lookup>  
3183 - <schema/>  
3184 - <table>bsth_c_stationroute</table>  
3185 - <orderby/>  
3186 - <fail_on_multiple>N</fail_on_multiple>  
3187 - <eat_row_on_failure>N</eat_row_on_failure>  
3188 - <key>  
3189 - <name>xl</name>  
3190 - <field>line</field>  
3191 - <condition>&#x3d;</condition>  
3192 - <name2/>  
3193 - </key>  
3194 - <key>  
3195 - <name>xl_dir</name>  
3196 - <field>directions</field>  
3197 - <condition>&#x3d;</condition>  
3198 - <name2/>  
3199 - </key>  
3200 - <key>  
3201 - <name>endZdType</name>  
3202 - <field>station_mark</field>  
3203 - <condition>&#x3d;</condition>  
3204 - <name2/>  
3205 - </key>  
3206 - <value>  
3207 - <name>station_name</name>  
3208 - <rename>zdzName</rename>  
3209 - <default/>  
3210 - <type>String</type>  
3211 - </value>  
3212 - </lookup>  
3213 - <cluster_schema/>  
3214 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3215 - <xloc>688</xloc>  
3216 - <yloc>86</yloc>  
3217 - <draw>Y</draw>  
3218 - </GUI>  
3219 - </step>  
3220 -  
3221 - <step>  
3222 - <name>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</name>  
3223 - <type>DBLookup</type>  
3224 - <description/>  
3225 - <distribute>Y</distribute>  
3226 - <custom_distribution/>  
3227 - <copies>1</copies>  
3228 - <partitioning>  
3229 - <method>none</method>  
3230 - <schema_name/>  
3231 - </partitioning>  
3232 - <connection>bus_control_variable</connection>  
3233 - <cache>Y</cache>  
3234 - <cache_load_all>Y</cache_load_all>  
3235 - <cache_size>0</cache_size>  
3236 - <lookup>  
3237 - <schema/>  
3238 - <table>bsth_c_stationroute</table>  
3239 - <orderby/>  
3240 - <fail_on_multiple>N</fail_on_multiple>  
3241 - <eat_row_on_failure>N</eat_row_on_failure>  
3242 - <key>  
3243 - <name>xl</name>  
3244 - <field>line</field>  
3245 - <condition>&#x3d;</condition>  
3246 - <name2/>  
3247 - </key>  
3248 - <key>  
3249 - <name>xl_dir</name>  
3250 - <field>directions</field>  
3251 - <condition>&#x3d;</condition>  
3252 - <name2/>  
3253 - </key>  
3254 - <key>  
3255 - <name>startZdType</name>  
3256 - <field>station_mark</field>  
3257 - <condition>&#x3d;</condition>  
3258 - <name2/>  
3259 - </key>  
3260 - <value>  
3261 - <name>station_name</name>  
3262 - <rename>qdzName</rename>  
3263 - <default/>  
3264 - <type>String</type>  
3265 - </value>  
3266 - </lookup>  
3267 - <cluster_schema/>  
3268 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3269 - <xloc>553</xloc>  
3270 - <yloc>86</yloc>  
3271 - <draw>Y</draw>  
3272 - </GUI>  
3273 - </step>  
3274 -  
3275 - <step>  
3276 - <name>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</name>  
3277 - <type>ScriptValueMod</type>  
3278 - <description/>  
3279 - <distribute>Y</distribute>  
3280 - <custom_distribution/>  
3281 - <copies>1</copies>  
3282 - <partitioning>  
3283 - <method>none</method>  
3284 - <schema_name/>  
3285 - </partitioning>  
3286 - <compatible>N</compatible>  
3287 - <optimizationLevel>9</optimizationLevel>  
3288 - <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>  
3289 - <jsScript_name>Script 1</jsScript_name>  
3290 - <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var startZdType &#x3d; &#x27;B&#x27;&#x3b; &#x2f;&#x2f; &#x8d77;&#x70b9;&#x7ad9;&#x7ad9;&#x70b9;&#x7c7b;&#x578b;&#x6807;&#x8bc6;&#x522b;&#xa;var endZdType &#x3d; &#x27;E&#x27;&#x3b; &#x2f;&#x2f; &#x7ec8;&#x70b9;&#x7ad9;&#x7ad9;&#x70b9;&#x7c7b;&#x578b;&#x6807;&#x8bc6;</jsScript_script>  
3291 - </jsScript> </jsScripts> <fields> <field> <name>startZdType</name>  
3292 - <rename>startZdType</rename>  
3293 - <type>String</type>  
3294 - <length>-1</length>  
3295 - <precision>-1</precision>  
3296 - <replace>N</replace>  
3297 - </field> <field> <name>endZdType</name>  
3298 - <rename>endZdType</rename>  
3299 - <type>String</type>  
3300 - <length>-1</length>  
3301 - <precision>-1</precision>  
3302 - <replace>N</replace>  
3303 - </field> </fields> <cluster_schema/>  
3304 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3305 - <xloc>391</xloc>  
3306 - <yloc>87</yloc>  
3307 - <draw>Y</draw>  
3308 - </GUI>  
3309 - </step>  
3310 -  
3311 - <step>  
3312 - <name>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</name>  
3313 - <type>GetVariable</type>  
3314 - <description/>  
3315 - <distribute>Y</distribute>  
3316 - <custom_distribution/>  
3317 - <copies>1</copies>  
3318 - <partitioning>  
3319 - <method>none</method>  
3320 - <schema_name/>  
3321 - </partitioning>  
3322 - <fields>  
3323 - <field>  
3324 - <name>xlid_</name>  
3325 - <variable>&#x24;&#x7b;xlid&#x7d;</variable>  
3326 - <type>Integer</type>  
3327 - <format/>  
3328 - <currency/>  
3329 - <decimal/>  
3330 - <group/>  
3331 - <length>-1</length>  
3332 - <precision>-1</precision>  
3333 - <trim_type>none</trim_type>  
3334 - </field>  
3335 - <field>  
3336 - <name>ttid_</name>  
3337 - <variable>&#x24;&#x7b;ttid&#x7d;</variable>  
3338 - <type>Number</type>  
3339 - <format/>  
3340 - <currency/>  
3341 - <decimal/>  
3342 - <group/>  
3343 - <length>-1</length>  
3344 - <precision>-1</precision>  
3345 - <trim_type>none</trim_type>  
3346 - </field>  
3347 - </fields>  
3348 - <cluster_schema/>  
3349 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3350 - <xloc>45</xloc>  
3351 - <yloc>189</yloc>  
3352 - <draw>Y</draw>  
3353 - </GUI>  
3354 - </step>  
3355 -  
3356 - <step>  
3357 - <name>&#x8868;&#x8f93;&#x5165;</name>  
3358 - <type>TableInput</type>  
3359 - <description/>  
3360 - <distribute>Y</distribute>  
3361 - <custom_distribution/>  
3362 - <copies>1</copies>  
3363 - <partitioning>  
3364 - <method>none</method>  
3365 - <schema_name/>  
3366 - </partitioning>  
3367 - <connection>bus_control_variable</connection>  
3368 - <sql>select &#xa;t.id as id&#xa;, concat&#x28;g.id, &#x27;_&#x27;, g.lp_name&#x29; as lp&#xa;, g.xl as xl&#xa;, qdz&#xa;, zdz&#xa;, tcc&#xa;, fcsj&#xa;, jhlc&#xa;, bc_type &#xa;, bcs&#xa;, fcno&#xa;, xl_dir&#xa;, isfb&#xa;from bsth_c_s_ttinfo_detail t left join &#xa;bsth_c_s_gbi g on t.lp &#x3d; g.id &#xa;where &#xa;g.xl &#x3d; &#x3f; and&#xa;t.ttinfo &#x3d; &#x3f; &#xa;order by t.bcs asc</sql>  
3369 - <limit>0</limit>  
3370 - <lookup>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</lookup>  
3371 - <execute_each_row>N</execute_each_row>  
3372 - <variables_active>Y</variables_active>  
3373 - <lazy_conversion_active>N</lazy_conversion_active>  
3374 - <cluster_schema/>  
3375 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3376 - <xloc>130</xloc>  
3377 - <yloc>85</yloc>  
3378 - <draw>Y</draw>  
3379 - </GUI>  
3380 - </step>  
3381 -  
3382 - <step>  
3383 - <name>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</name>  
3384 - <type>ScriptValueMod</type>  
3385 - <description/>  
3386 - <distribute>Y</distribute>  
3387 - <custom_distribution/>  
3388 - <copies>1</copies>  
3389 - <partitioning>  
3390 - <method>none</method>  
3391 - <schema_name/>  
3392 - </partitioning>  
3393 - <compatible>N</compatible>  
3394 - <optimizationLevel>9</optimizationLevel>  
3395 - <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>  
3396 - <jsScript_name>Script 1</jsScript_name>  
3397 - <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var fczdName &#x3d; null&#x3b; &#x2f;&#x2f; &#x53d1;&#x8f66;&#x7ad9;&#x70b9;&#x540d;&#x5b57;&#xa;if &#x28;bc_type &#x3d;&#x3d; &#x22;in&#x22;&#x29; &#x7b;&#xa; fczdName &#x3d; &#x22;&#x8fdb;&#x573a;&#x22;&#x3b;&#xa;&#x7d; else if &#x28;bc_type &#x3d;&#x3d; &#x22;out&#x22;&#x29; &#x7b;&#xa; fczdName &#x3d; &#x22;&#x51fa;&#x573a;&#x22;&#x3b;&#xa;&#x7d; else &#x7b;&#xa; fczdName &#x3d; qdzName&#x3b;&#xa;&#x7d;</jsScript_script>  
3398 - </jsScript> </jsScripts> <fields> <field> <name>fczdName</name>  
3399 - <rename>fczdName</rename>  
3400 - <type>String</type>  
3401 - <length>-1</length>  
3402 - <precision>-1</precision>  
3403 - <replace>N</replace>  
3404 - </field> </fields> <cluster_schema/>  
3405 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3406 - <xloc>550</xloc>  
3407 - <yloc>276</yloc>  
3408 - <draw>Y</draw>  
3409 - </GUI>  
3410 - </step>  
3411 -  
3412 - <step>  
3413 - <name>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</name>  
3414 - <type>FilterRows</type>  
3415 - <description/>  
3416 - <distribute>Y</distribute>  
3417 - <custom_distribution/>  
3418 - <copies>1</copies>  
3419 - <partitioning>  
3420 - <method>none</method>  
3421 - <schema_name/>  
3422 - </partitioning>  
3423 -<send_true_to>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</send_true_to>  
3424 -<send_false_to>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</send_false_to>  
3425 - <compare>  
3426 -<condition>  
3427 - <negated>N</negated>  
3428 - <leftvalue>bc_type</leftvalue>  
3429 - <function>&#x3d;</function>  
3430 - <rightvalue/>  
3431 - <value><name>constant</name><type>String</type><text>normal</text><length>-1</length><precision>-1</precision><isnull>N</isnull><mask/></value> </condition>  
3432 - </compare>  
3433 - <cluster_schema/>  
3434 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3435 - <xloc>248</xloc>  
3436 - <yloc>87</yloc>  
3437 - <draw>Y</draw>  
3438 - </GUI>  
3439 - </step>  
3440 -  
3441 - <step>  
3442 - <name>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</name>  
3443 - <type>ScriptValueMod</type>  
3444 - <description/>  
3445 - <distribute>Y</distribute>  
3446 - <custom_distribution/>  
3447 - <copies>1</copies>  
3448 - <partitioning>  
3449 - <method>none</method>  
3450 - <schema_name/>  
3451 - </partitioning>  
3452 - <compatible>N</compatible>  
3453 - <optimizationLevel>9</optimizationLevel>  
3454 - <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>  
3455 - <jsScript_name>Script 1</jsScript_name>  
3456 - <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var qdzName &#x3d; null&#x3b; &#x2f;&#x2f; &#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x5b57;&#xa;var zdzName &#x3d; null&#x3b; &#x2f;&#x2f; &#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x5b57;</jsScript_script>  
3457 - </jsScript> </jsScripts> <fields> <field> <name>qdzName</name>  
3458 - <rename>qdzName</rename>  
3459 - <type>String</type>  
3460 - <length>-1</length>  
3461 - <precision>-1</precision>  
3462 - <replace>N</replace>  
3463 - </field> <field> <name>zdzName</name>  
3464 - <rename>zdzName</rename>  
3465 - <type>String</type>  
3466 - <length>-1</length>  
3467 - <precision>-1</precision>  
3468 - <replace>N</replace>  
3469 - </field> </fields> <cluster_schema/>  
3470 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
3471 - <xloc>250</xloc>  
3472 - <yloc>188</yloc>  
3473 - <draw>Y</draw>  
3474 - </GUI>  
3475 - </step>  
3476 -  
3477 - <step_error_handling>  
3478 - </step_error_handling>  
3479 - <slave-step-copy-partition-distribution>  
3480 -</slave-step-copy-partition-distribution>  
3481 - <slave_transformation>N</slave_transformation>  
3482 -  
3483 -</transformation> 1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>ttinfodetailoutputforedit</name>
  5 + <description/>
  6 + <extended_description/>
  7 + <trans_version/>
  8 + <trans_type>Normal</trans_type>
  9 + <trans_status>0</trans_status>
  10 + <directory>&#x2f;</directory>
  11 + <parameters>
  12 + <parameter>
  13 + <name>tempfilepath</name>
  14 + <default_value>&#x2f;Users&#x2f;xu&#x2f;resource&#x2f;project_code&#x2f;runtime_temp&#x2f;bsth_control_u_d_files&#x2f;temp&#x2f;test</default_value>
  15 + <description>&#x9ed8;&#x8ba4;&#x8f93;&#x51fa;&#x7684;&#x6587;&#x4ef6;&#x8def;&#x5f84;&#x540d;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>ttid</name>
  19 + <default_value>79</default_value>
  20 + <description>&#x65f6;&#x523b;&#x8868;id</description>
  21 + </parameter>
  22 + <parameter>
  23 + <name>xlid</name>
  24 + <default_value>63020</default_value>
  25 + <description>&#x7ebf;&#x8def;id</description>
  26 + </parameter>
  27 + </parameters>
  28 + <log>
  29 +<trans-log-table><connection/>
  30 +<schema/>
  31 +<table/>
  32 +<size_limit_lines/>
  33 +<interval/>
  34 +<timeout_days/>
  35 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
  36 +<perf-log-table><connection/>
  37 +<schema/>
  38 +<table/>
  39 +<interval/>
  40 +<timeout_days/>
  41 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
  42 +<channel-log-table><connection/>
  43 +<schema/>
  44 +<table/>
  45 +<timeout_days/>
  46 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
  47 +<step-log-table><connection/>
  48 +<schema/>
  49 +<table/>
  50 +<timeout_days/>
  51 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
  52 +<metrics-log-table><connection/>
  53 +<schema/>
  54 +<table/>
  55 +<timeout_days/>
  56 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
  57 + </log>
  58 + <maxdate>
  59 + <connection/>
  60 + <table/>
  61 + <field/>
  62 + <offset>0.0</offset>
  63 + <maxdiff>0.0</maxdiff>
  64 + </maxdate>
  65 + <size_rowset>10000</size_rowset>
  66 + <sleep_time_empty>50</sleep_time_empty>
  67 + <sleep_time_full>50</sleep_time_full>
  68 + <unique_connections>N</unique_connections>
  69 + <feedback_shown>Y</feedback_shown>
  70 + <feedback_size>50000</feedback_size>
  71 + <using_thread_priorities>Y</using_thread_priorities>
  72 + <shared_objects_file/>
  73 + <capture_step_performance>N</capture_step_performance>
  74 + <step_performance_capturing_delay>1000</step_performance_capturing_delay>
  75 + <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
  76 + <dependencies>
  77 + </dependencies>
  78 + <partitionschemas>
  79 + </partitionschemas>
  80 + <slaveservers>
  81 + </slaveservers>
  82 + <clusterschemas>
  83 + </clusterschemas>
  84 + <created_user>-</created_user>
  85 + <created_date>2016&#x2f;07&#x2f;11 21&#x3a;45&#x3a;05.041</created_date>
  86 + <modified_user>-</modified_user>
  87 + <modified_date>2016&#x2f;07&#x2f;11 21&#x3a;45&#x3a;05.041</modified_date>
  88 + <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
  89 + <is_key_private>N</is_key_private>
  90 + </info>
  91 + <notepads>
  92 + <notepad>
  93 + <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
  94 + <xloc>45</xloc>
  95 + <yloc>261</yloc>
  96 + <width>333</width>
  97 + <heigth>90</heigth>
  98 + <fontname>YaHei Consolas Hybrid</fontname>
  99 + <fontsize>12</fontsize>
  100 + <fontbold>N</fontbold>
  101 + <fontitalic>N</fontitalic>
  102 + <fontcolorred>0</fontcolorred>
  103 + <fontcolorgreen>0</fontcolorgreen>
  104 + <fontcolorblue>0</fontcolorblue>
  105 + <backgroundcolorred>255</backgroundcolorred>
  106 + <backgroundcolorgreen>205</backgroundcolorgreen>
  107 + <backgroundcolorblue>112</backgroundcolorblue>
  108 + <bordercolorred>100</bordercolorred>
  109 + <bordercolorgreen>100</bordercolorgreen>
  110 + <bordercolorblue>100</bordercolorblue>
  111 + <drawshadow>Y</drawshadow>
  112 + </notepad>
  113 + <notepad>
  114 + <note>&#x6b64;&#x5904;&#x8f6c;&#x6362;excel&#x6709;&#x95ee;&#x9898;&#xff0c;&#xa;2003&#x683c;&#x5f0f;&#x7684;xls&#x6700;&#x591a;256&#x5217;&#xff0c;&#xa;&#x8fd9;&#x91cc;&#x660e;&#x663e;&#x8d85;&#x8fc7;&#xff0c;&#x6240;&#x4ee5;&#x628a;&#x6240;&#x6709;&#x5185;&#x5bb9;&#x5408;&#x5e76;&#x6210;1&#x5217;&#xff0c;&#xa;&#x7528;,&#x5206;&#x9694;</note>
  115 + <xloc>256</xloc>
  116 + <yloc>397</yloc>
  117 + <width>245</width>
  118 + <heigth>74</heigth>
  119 + <fontname>YaHei Consolas Hybrid</fontname>
  120 + <fontsize>12</fontsize>
  121 + <fontbold>N</fontbold>
  122 + <fontitalic>N</fontitalic>
  123 + <fontcolorred>0</fontcolorred>
  124 + <fontcolorgreen>0</fontcolorgreen>
  125 + <fontcolorblue>0</fontcolorblue>
  126 + <backgroundcolorred>255</backgroundcolorred>
  127 + <backgroundcolorgreen>205</backgroundcolorgreen>
  128 + <backgroundcolorblue>112</backgroundcolorblue>
  129 + <bordercolorred>100</bordercolorred>
  130 + <bordercolorgreen>100</bordercolorgreen>
  131 + <bordercolorblue>100</bordercolorblue>
  132 + <drawshadow>Y</drawshadow>
  133 + </notepad>
  134 + </notepads>
  135 + <connection>
  136 + <name>bus_control_variable</name>
  137 + <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
  138 + <type>MYSQL</type>
  139 + <access>Native</access>
  140 + <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
  141 + <port>3306</port>
  142 + <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
  143 + <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
  144 + <servername/>
  145 + <data_tablespace/>
  146 + <index_tablespace/>
  147 + <attributes>
  148 + <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
  149 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  150 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  151 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  152 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  153 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  154 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  155 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  156 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  157 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  158 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  159 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  160 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  161 + </attributes>
  162 + </connection>
  163 + <connection>
  164 + <name>bus_control_&#x516c;&#x53f8;_201</name>
  165 + <server>localhost</server>
  166 + <type>MYSQL</type>
  167 + <access>Native</access>
  168 + <database>control</database>
  169 + <port>3306</port>
  170 + <username>root</username>
  171 + <password>Encrypted </password>
  172 + <servername/>
  173 + <data_tablespace/>
  174 + <index_tablespace/>
  175 + <attributes>
  176 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  177 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  178 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  179 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  180 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  181 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  182 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  183 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  184 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  185 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  186 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  187 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  188 + </attributes>
  189 + </connection>
  190 + <connection>
  191 + <name>bus_control_&#x672c;&#x673a;</name>
  192 + <server>localhost</server>
  193 + <type>MYSQL</type>
  194 + <access>Native</access>
  195 + <database>control</database>
  196 + <port>3306</port>
  197 + <username>root</username>
  198 + <password>Encrypted </password>
  199 + <servername/>
  200 + <data_tablespace/>
  201 + <index_tablespace/>
  202 + <attributes>
  203 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  204 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  205 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  206 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  207 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  208 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  209 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  210 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  211 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  212 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  213 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  214 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  215 + </attributes>
  216 + </connection>
  217 + <connection>
  218 + <name>xlab_mysql_youle</name>
  219 + <server>101.231.124.8</server>
  220 + <type>MYSQL</type>
  221 + <access>Native</access>
  222 + <database>xlab_youle</database>
  223 + <port>45687</port>
  224 + <username>xlab-youle</username>
  225 + <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
  226 + <servername/>
  227 + <data_tablespace/>
  228 + <index_tablespace/>
  229 + <attributes>
  230 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  231 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  232 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  233 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  234 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  235 + <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
  236 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  237 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  238 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  239 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  240 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  241 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  242 + </attributes>
  243 + </connection>
  244 + <connection>
  245 + <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
  246 + <server>localhost</server>
  247 + <type>MYSQL</type>
  248 + <access>Native</access>
  249 + <database>xlab_youle</database>
  250 + <port>3306</port>
  251 + <username>root</username>
  252 + <password>Encrypted </password>
  253 + <servername/>
  254 + <data_tablespace/>
  255 + <index_tablespace/>
  256 + <attributes>
  257 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  258 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  259 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  260 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  261 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  262 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  263 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  264 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  265 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  266 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  267 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  268 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  269 + </attributes>
  270 + </connection>
  271 + <connection>
  272 + <name>xlab_youle</name>
  273 + <server/>
  274 + <type>MYSQL</type>
  275 + <access>JNDI</access>
  276 + <database>xlab_youle</database>
  277 + <port>1521</port>
  278 + <username/>
  279 + <password>Encrypted </password>
  280 + <servername/>
  281 + <data_tablespace/>
  282 + <index_tablespace/>
  283 + <attributes>
  284 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  285 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  286 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  287 + <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
  288 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  289 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  290 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  291 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  292 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  293 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  294 + </attributes>
  295 + </connection>
  296 + <order>
  297 + <hop> <from>&#x8868;&#x8f93;&#x5165;</from><to>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  298 + <hop> <from>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</from><to>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</to><enabled>Y</enabled> </hop>
  299 + <hop> <from>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</from><to>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</to><enabled>Y</enabled> </hop>
  300 + <hop> <from>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</from><to>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</to><enabled>Y</enabled> </hop>
  301 + <hop> <from>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</from><to>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</to><enabled>Y</enabled> </hop>
  302 + <hop> <from>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
  303 + <hop> <from>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</to><enabled>Y</enabled> </hop>
  304 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  305 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  306 + <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</to><enabled>Y</enabled> </hop>
  307 + <hop> <from>&#x5217;&#x8f6c;&#x884c;</from><to>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</to><enabled>Y</enabled> </hop>
  308 + <hop> <from>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  309 + <hop> <from>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</from><to>&#x8868;&#x8f93;&#x5165;</to><enabled>Y</enabled> </hop>
  310 + <hop> <from>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</from><to>&#x5408;&#x5e76;&#x5185;&#x5bb9;</to><enabled>Y</enabled> </hop>
  311 + <hop> <from>&#x5408;&#x5e76;&#x5185;&#x5bb9;</from><to>&#x5217;&#x8f6c;&#x884c;</to><enabled>Y</enabled> </hop>
  312 + <hop> <from>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</from><to>&#x6587;&#x672c;&#x6587;&#x4ef6;&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  313 + </order>
  314 + <step>
  315 + <name>Excel&#x8f93;&#x51fa;</name>
  316 + <type>ExcelOutput</type>
  317 + <description/>
  318 + <distribute>Y</distribute>
  319 + <custom_distribution/>
  320 + <copies>1</copies>
  321 + <partitioning>
  322 + <method>none</method>
  323 + <schema_name/>
  324 + </partitioning>
  325 + <header>Y</header>
  326 + <footer>N</footer>
  327 + <encoding/>
  328 + <append>N</append>
  329 + <add_to_result_filenames>Y</add_to_result_filenames>
  330 + <file>
  331 + <name>&#x24;&#x7b;tempfilepath&#x7d;</name>
  332 + <extention>xls</extention>
  333 + <do_not_open_newfile_init>N</do_not_open_newfile_init>
  334 + <create_parent_folder>N</create_parent_folder>
  335 + <split>N</split>
  336 + <add_date>N</add_date>
  337 + <add_time>N</add_time>
  338 + <SpecifyFormat>N</SpecifyFormat>
  339 + <date_time_format/>
  340 + <sheetname>Sheet1</sheetname>
  341 + <autosizecolums>N</autosizecolums>
  342 + <nullisblank>N</nullisblank>
  343 + <protect_sheet>N</protect_sheet>
  344 + <password>Encrypted </password>
  345 + <splitevery>0</splitevery>
  346 + <usetempfiles>N</usetempfiles>
  347 + <tempdirectory/>
  348 + </file>
  349 + <template>
  350 + <enabled>N</enabled>
  351 + <append>N</append>
  352 + <filename>template.xls</filename>
  353 + </template>
  354 + <fields>
  355 + <field>
  356 + <name>lp</name>
  357 + <type>String</type>
  358 + <format/>
  359 + </field>
  360 + <field>
  361 + <name>fcno1</name>
  362 + <type>String</type>
  363 + <format/>
  364 + </field>
  365 + <field>
  366 + <name>fcno2</name>
  367 + <type>String</type>
  368 + <format/>
  369 + </field>
  370 + <field>
  371 + <name>fcno3</name>
  372 + <type>String</type>
  373 + <format/>
  374 + </field>
  375 + <field>
  376 + <name>fcno4</name>
  377 + <type>String</type>
  378 + <format/>
  379 + </field>
  380 + <field>
  381 + <name>fcno5</name>
  382 + <type>String</type>
  383 + <format/>
  384 + </field>
  385 + <field>
  386 + <name>fcno6</name>
  387 + <type>String</type>
  388 + <format/>
  389 + </field>
  390 + <field>
  391 + <name>fcno7</name>
  392 + <type>String</type>
  393 + <format/>
  394 + </field>
  395 + <field>
  396 + <name>fcno8</name>
  397 + <type>String</type>
  398 + <format/>
  399 + </field>
  400 + <field>
  401 + <name>fcno9</name>
  402 + <type>String</type>
  403 + <format/>
  404 + </field>
  405 + <field>
  406 + <name>fcno10</name>
  407 + <type>String</type>
  408 + <format/>
  409 + </field>
  410 + <field>
  411 + <name>fcno11</name>
  412 + <type>String</type>
  413 + <format/>
  414 + </field>
  415 + <field>
  416 + <name>fcno12</name>
  417 + <type>String</type>
  418 + <format/>
  419 + </field>
  420 + <field>
  421 + <name>fcno13</name>
  422 + <type>String</type>
  423 + <format/>
  424 + </field>
  425 + <field>
  426 + <name>fcno14</name>
  427 + <type>String</type>
  428 + <format/>
  429 + </field>
  430 + <field>
  431 + <name>fcno15</name>
  432 + <type>String</type>
  433 + <format/>
  434 + </field>
  435 + <field>
  436 + <name>fcno16</name>
  437 + <type>String</type>
  438 + <format/>
  439 + </field>
  440 + <field>
  441 + <name>fcno17</name>
  442 + <type>String</type>
  443 + <format/>
  444 + </field>
  445 + <field>
  446 + <name>fcno18</name>
  447 + <type>String</type>
  448 + <format/>
  449 + </field>
  450 + <field>
  451 + <name>fcno19</name>
  452 + <type>String</type>
  453 + <format/>
  454 + </field>
  455 + <field>
  456 + <name>fcno20</name>
  457 + <type>String</type>
  458 + <format/>
  459 + </field>
  460 + <field>
  461 + <name>fcno21</name>
  462 + <type>String</type>
  463 + <format/>
  464 + </field>
  465 + <field>
  466 + <name>fcno22</name>
  467 + <type>String</type>
  468 + <format/>
  469 + </field>
  470 + <field>
  471 + <name>fcno23</name>
  472 + <type>String</type>
  473 + <format/>
  474 + </field>
  475 + <field>
  476 + <name>fcno24</name>
  477 + <type>String</type>
  478 + <format/>
  479 + </field>
  480 + <field>
  481 + <name>fcno25</name>
  482 + <type>String</type>
  483 + <format/>
  484 + </field>
  485 + <field>
  486 + <name>fcno26</name>
  487 + <type>String</type>
  488 + <format/>
  489 + </field>
  490 + <field>
  491 + <name>fcno27</name>
  492 + <type>String</type>
  493 + <format/>
  494 + </field>
  495 + <field>
  496 + <name>fcno28</name>
  497 + <type>String</type>
  498 + <format/>
  499 + </field>
  500 + <field>
  501 + <name>fcno29</name>
  502 + <type>String</type>
  503 + <format/>
  504 + </field>
  505 + <field>
  506 + <name>fcno30</name>
  507 + <type>String</type>
  508 + <format/>
  509 + </field>
  510 + <field>
  511 + <name>fcno31</name>
  512 + <type>String</type>
  513 + <format/>
  514 + </field>
  515 + <field>
  516 + <name>fcno32</name>
  517 + <type>String</type>
  518 + <format/>
  519 + </field>
  520 + <field>
  521 + <name>fcno33</name>
  522 + <type>String</type>
  523 + <format/>
  524 + </field>
  525 + <field>
  526 + <name>fcno34</name>
  527 + <type>String</type>
  528 + <format/>
  529 + </field>
  530 + <field>
  531 + <name>fcno35</name>
  532 + <type>String</type>
  533 + <format/>
  534 + </field>
  535 + <field>
  536 + <name>fcno36</name>
  537 + <type>String</type>
  538 + <format/>
  539 + </field>
  540 + <field>
  541 + <name>fcno37</name>
  542 + <type>String</type>
  543 + <format/>
  544 + </field>
  545 + <field>
  546 + <name>fcno38</name>
  547 + <type>String</type>
  548 + <format/>
  549 + </field>
  550 + <field>
  551 + <name>fcno39</name>
  552 + <type>String</type>
  553 + <format/>
  554 + </field>
  555 + <field>
  556 + <name>fcno40</name>
  557 + <type>String</type>
  558 + <format/>
  559 + </field>
  560 + <field>
  561 + <name>fcno41</name>
  562 + <type>String</type>
  563 + <format/>
  564 + </field>
  565 + <field>
  566 + <name>fcno42</name>
  567 + <type>String</type>
  568 + <format/>
  569 + </field>
  570 + <field>
  571 + <name>fcno43</name>
  572 + <type>String</type>
  573 + <format/>
  574 + </field>
  575 + <field>
  576 + <name>fcno44</name>
  577 + <type>String</type>
  578 + <format/>
  579 + </field>
  580 + <field>
  581 + <name>fcno45</name>
  582 + <type>String</type>
  583 + <format/>
  584 + </field>
  585 + <field>
  586 + <name>fcno46</name>
  587 + <type>String</type>
  588 + <format/>
  589 + </field>
  590 + <field>
  591 + <name>fcno47</name>
  592 + <type>String</type>
  593 + <format/>
  594 + </field>
  595 + <field>
  596 + <name>fcno48</name>
  597 + <type>String</type>
  598 + <format/>
  599 + </field>
  600 + <field>
  601 + <name>fcno49</name>
  602 + <type>String</type>
  603 + <format/>
  604 + </field>
  605 + <field>
  606 + <name>fcno50</name>
  607 + <type>String</type>
  608 + <format/>
  609 + </field>
  610 + <field>
  611 + <name>fcno51</name>
  612 + <type>String</type>
  613 + <format/>
  614 + </field>
  615 + <field>
  616 + <name>fcno52</name>
  617 + <type>String</type>
  618 + <format/>
  619 + </field>
  620 + <field>
  621 + <name>fcno53</name>
  622 + <type>String</type>
  623 + <format/>
  624 + </field>
  625 + <field>
  626 + <name>fcno54</name>
  627 + <type>String</type>
  628 + <format/>
  629 + </field>
  630 + <field>
  631 + <name>fcno55</name>
  632 + <type>String</type>
  633 + <format/>
  634 + </field>
  635 + <field>
  636 + <name>fcno56</name>
  637 + <type>String</type>
  638 + <format/>
  639 + </field>
  640 + <field>
  641 + <name>fcno57</name>
  642 + <type>String</type>
  643 + <format/>
  644 + </field>
  645 + <field>
  646 + <name>fcno58</name>
  647 + <type>String</type>
  648 + <format/>
  649 + </field>
  650 + <field>
  651 + <name>fcno59</name>
  652 + <type>String</type>
  653 + <format/>
  654 + </field>
  655 + <field>
  656 + <name>fcno60</name>
  657 + <type>String</type>
  658 + <format/>
  659 + </field>
  660 + <field>
  661 + <name>fcno61</name>
  662 + <type>String</type>
  663 + <format/>
  664 + </field>
  665 + <field>
  666 + <name>fcno62</name>
  667 + <type>String</type>
  668 + <format/>
  669 + </field>
  670 + <field>
  671 + <name>fcno63</name>
  672 + <type>String</type>
  673 + <format/>
  674 + </field>
  675 + <field>
  676 + <name>fcno64</name>
  677 + <type>String</type>
  678 + <format/>
  679 + </field>
  680 + <field>
  681 + <name>fcno65</name>
  682 + <type>String</type>
  683 + <format/>
  684 + </field>
  685 + <field>
  686 + <name>fcno66</name>
  687 + <type>String</type>
  688 + <format/>
  689 + </field>
  690 + <field>
  691 + <name>fcno67</name>
  692 + <type>String</type>
  693 + <format/>
  694 + </field>
  695 + <field>
  696 + <name>fcno68</name>
  697 + <type>String</type>
  698 + <format/>
  699 + </field>
  700 + <field>
  701 + <name>fcno69</name>
  702 + <type>String</type>
  703 + <format/>
  704 + </field>
  705 + <field>
  706 + <name>fcno70</name>
  707 + <type>String</type>
  708 + <format/>
  709 + </field>
  710 + </fields>
  711 + <custom>
  712 + <header_font_name>arial</header_font_name>
  713 + <header_font_size>10</header_font_size>
  714 + <header_font_bold>N</header_font_bold>
  715 + <header_font_italic>N</header_font_italic>
  716 + <header_font_underline>no</header_font_underline>
  717 + <header_font_orientation>horizontal</header_font_orientation>
  718 + <header_font_color>black</header_font_color>
  719 + <header_background_color>none</header_background_color>
  720 + <header_row_height>255</header_row_height>
  721 + <header_alignment>left</header_alignment>
  722 + <header_image/>
  723 + <row_font_name>arial</row_font_name>
  724 + <row_font_size>10</row_font_size>
  725 + <row_font_color>black</row_font_color>
  726 + <row_background_color>none</row_background_color>
  727 + </custom>
  728 + <cluster_schema/>
  729 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  730 + <xloc>692</xloc>
  731 + <yloc>514</yloc>
  732 + <draw>Y</draw>
  733 + </GUI>
  734 + </step>
  735 +
  736 + <step>
  737 + <name>&#x5217;&#x8f6c;&#x884c;</name>
  738 + <type>Denormaliser</type>
  739 + <description/>
  740 + <distribute>N</distribute>
  741 + <custom_distribution/>
  742 + <copies>1</copies>
  743 + <partitioning>
  744 + <method>none</method>
  745 + <schema_name/>
  746 + </partitioning>
  747 + <key_field>fcno</key_field>
  748 + <group>
  749 + <field>
  750 + <name>lp</name>
  751 + </field>
  752 + </group>
  753 + <fields>
  754 + <field>
  755 + <field_name>all_content</field_name>
  756 + <key_value>1</key_value>
  757 + <target_name>fcno1</target_name>
  758 + <target_type>String</target_type>
  759 + <target_format/>
  760 + <target_length>-1</target_length>
  761 + <target_precision>-1</target_precision>
  762 + <target_decimal_symbol/>
  763 + <target_grouping_symbol/>
  764 + <target_currency_symbol/>
  765 + <target_null_string/>
  766 + <target_aggregation_type>-</target_aggregation_type>
  767 + </field>
  768 + <field>
  769 + <field_name>all_content</field_name>
  770 + <key_value>2</key_value>
  771 + <target_name>fcno2</target_name>
  772 + <target_type>String</target_type>
  773 + <target_format/>
  774 + <target_length>-1</target_length>
  775 + <target_precision>-1</target_precision>
  776 + <target_decimal_symbol/>
  777 + <target_grouping_symbol/>
  778 + <target_currency_symbol/>
  779 + <target_null_string/>
  780 + <target_aggregation_type>-</target_aggregation_type>
  781 + </field>
  782 + <field>
  783 + <field_name>all_content</field_name>
  784 + <key_value>3</key_value>
  785 + <target_name>fcno3</target_name>
  786 + <target_type>String</target_type>
  787 + <target_format/>
  788 + <target_length>-1</target_length>
  789 + <target_precision>-1</target_precision>
  790 + <target_decimal_symbol/>
  791 + <target_grouping_symbol/>
  792 + <target_currency_symbol/>
  793 + <target_null_string/>
  794 + <target_aggregation_type>-</target_aggregation_type>
  795 + </field>
  796 + <field>
  797 + <field_name>all_content</field_name>
  798 + <key_value>4</key_value>
  799 + <target_name>fcno4</target_name>
  800 + <target_type>String</target_type>
  801 + <target_format/>
  802 + <target_length>-1</target_length>
  803 + <target_precision>-1</target_precision>
  804 + <target_decimal_symbol/>
  805 + <target_grouping_symbol/>
  806 + <target_currency_symbol/>
  807 + <target_null_string/>
  808 + <target_aggregation_type>-</target_aggregation_type>
  809 + </field>
  810 + <field>
  811 + <field_name>all_content</field_name>
  812 + <key_value>5</key_value>
  813 + <target_name>fcno5</target_name>
  814 + <target_type>String</target_type>
  815 + <target_format/>
  816 + <target_length>-1</target_length>
  817 + <target_precision>-1</target_precision>
  818 + <target_decimal_symbol/>
  819 + <target_grouping_symbol/>
  820 + <target_currency_symbol/>
  821 + <target_null_string/>
  822 + <target_aggregation_type>-</target_aggregation_type>
  823 + </field>
  824 + <field>
  825 + <field_name>all_content</field_name>
  826 + <key_value>6</key_value>
  827 + <target_name>fcno6</target_name>
  828 + <target_type>String</target_type>
  829 + <target_format/>
  830 + <target_length>-1</target_length>
  831 + <target_precision>-1</target_precision>
  832 + <target_decimal_symbol/>
  833 + <target_grouping_symbol/>
  834 + <target_currency_symbol/>
  835 + <target_null_string/>
  836 + <target_aggregation_type>-</target_aggregation_type>
  837 + </field>
  838 + <field>
  839 + <field_name>all_content</field_name>
  840 + <key_value>7</key_value>
  841 + <target_name>fcno7</target_name>
  842 + <target_type>String</target_type>
  843 + <target_format/>
  844 + <target_length>-1</target_length>
  845 + <target_precision>-1</target_precision>
  846 + <target_decimal_symbol/>
  847 + <target_grouping_symbol/>
  848 + <target_currency_symbol/>
  849 + <target_null_string/>
  850 + <target_aggregation_type>-</target_aggregation_type>
  851 + </field>
  852 + <field>
  853 + <field_name>all_content</field_name>
  854 + <key_value>8</key_value>
  855 + <target_name>fcno8</target_name>
  856 + <target_type>String</target_type>
  857 + <target_format/>
  858 + <target_length>-1</target_length>
  859 + <target_precision>-1</target_precision>
  860 + <target_decimal_symbol/>
  861 + <target_grouping_symbol/>
  862 + <target_currency_symbol/>
  863 + <target_null_string/>
  864 + <target_aggregation_type>-</target_aggregation_type>
  865 + </field>
  866 + <field>
  867 + <field_name>all_content</field_name>
  868 + <key_value>9</key_value>
  869 + <target_name>fcno9</target_name>
  870 + <target_type>String</target_type>
  871 + <target_format/>
  872 + <target_length>-1</target_length>
  873 + <target_precision>-1</target_precision>
  874 + <target_decimal_symbol/>
  875 + <target_grouping_symbol/>
  876 + <target_currency_symbol/>
  877 + <target_null_string/>
  878 + <target_aggregation_type>-</target_aggregation_type>
  879 + </field>
  880 + <field>
  881 + <field_name>all_content</field_name>
  882 + <key_value>10</key_value>
  883 + <target_name>fcno10</target_name>
  884 + <target_type>String</target_type>
  885 + <target_format/>
  886 + <target_length>-1</target_length>
  887 + <target_precision>-1</target_precision>
  888 + <target_decimal_symbol/>
  889 + <target_grouping_symbol/>
  890 + <target_currency_symbol/>
  891 + <target_null_string/>
  892 + <target_aggregation_type>-</target_aggregation_type>
  893 + </field>
  894 + <field>
  895 + <field_name>all_content</field_name>
  896 + <key_value>11</key_value>
  897 + <target_name>fcno11</target_name>
  898 + <target_type>String</target_type>
  899 + <target_format/>
  900 + <target_length>-1</target_length>
  901 + <target_precision>-1</target_precision>
  902 + <target_decimal_symbol/>
  903 + <target_grouping_symbol/>
  904 + <target_currency_symbol/>
  905 + <target_null_string/>
  906 + <target_aggregation_type>-</target_aggregation_type>
  907 + </field>
  908 + <field>
  909 + <field_name>all_content</field_name>
  910 + <key_value>12</key_value>
  911 + <target_name>fcno12</target_name>
  912 + <target_type>String</target_type>
  913 + <target_format/>
  914 + <target_length>-1</target_length>
  915 + <target_precision>-1</target_precision>
  916 + <target_decimal_symbol/>
  917 + <target_grouping_symbol/>
  918 + <target_currency_symbol/>
  919 + <target_null_string/>
  920 + <target_aggregation_type>-</target_aggregation_type>
  921 + </field>
  922 + <field>
  923 + <field_name>all_content</field_name>
  924 + <key_value>13</key_value>
  925 + <target_name>fcno13</target_name>
  926 + <target_type>String</target_type>
  927 + <target_format/>
  928 + <target_length>-1</target_length>
  929 + <target_precision>-1</target_precision>
  930 + <target_decimal_symbol/>
  931 + <target_grouping_symbol/>
  932 + <target_currency_symbol/>
  933 + <target_null_string/>
  934 + <target_aggregation_type>-</target_aggregation_type>
  935 + </field>
  936 + <field>
  937 + <field_name>all_content</field_name>
  938 + <key_value>14</key_value>
  939 + <target_name>fcno14</target_name>
  940 + <target_type>String</target_type>
  941 + <target_format/>
  942 + <target_length>-1</target_length>
  943 + <target_precision>-1</target_precision>
  944 + <target_decimal_symbol/>
  945 + <target_grouping_symbol/>
  946 + <target_currency_symbol/>
  947 + <target_null_string/>
  948 + <target_aggregation_type>-</target_aggregation_type>
  949 + </field>
  950 + <field>
  951 + <field_name>all_content</field_name>
  952 + <key_value>15</key_value>
  953 + <target_name>fcno15</target_name>
  954 + <target_type>String</target_type>
  955 + <target_format/>
  956 + <target_length>-1</target_length>
  957 + <target_precision>-1</target_precision>
  958 + <target_decimal_symbol/>
  959 + <target_grouping_symbol/>
  960 + <target_currency_symbol/>
  961 + <target_null_string/>
  962 + <target_aggregation_type>-</target_aggregation_type>
  963 + </field>
  964 + <field>
  965 + <field_name>all_content</field_name>
  966 + <key_value>16</key_value>
  967 + <target_name>fcno16</target_name>
  968 + <target_type>String</target_type>
  969 + <target_format/>
  970 + <target_length>-1</target_length>
  971 + <target_precision>-1</target_precision>
  972 + <target_decimal_symbol/>
  973 + <target_grouping_symbol/>
  974 + <target_currency_symbol/>
  975 + <target_null_string/>
  976 + <target_aggregation_type>-</target_aggregation_type>
  977 + </field>
  978 + <field>
  979 + <field_name>all_content</field_name>
  980 + <key_value>17</key_value>
  981 + <target_name>fcno17</target_name>
  982 + <target_type>String</target_type>
  983 + <target_format/>
  984 + <target_length>-1</target_length>
  985 + <target_precision>-1</target_precision>
  986 + <target_decimal_symbol/>
  987 + <target_grouping_symbol/>
  988 + <target_currency_symbol/>
  989 + <target_null_string/>
  990 + <target_aggregation_type>-</target_aggregation_type>
  991 + </field>
  992 + <field>
  993 + <field_name>all_content</field_name>
  994 + <key_value>18</key_value>
  995 + <target_name>fcno18</target_name>
  996 + <target_type>String</target_type>
  997 + <target_format/>
  998 + <target_length>-1</target_length>
  999 + <target_precision>-1</target_precision>
  1000 + <target_decimal_symbol/>
  1001 + <target_grouping_symbol/>
  1002 + <target_currency_symbol/>
  1003 + <target_null_string/>
  1004 + <target_aggregation_type>-</target_aggregation_type>
  1005 + </field>
  1006 + <field>
  1007 + <field_name>all_content</field_name>
  1008 + <key_value>19</key_value>
  1009 + <target_name>fcno19</target_name>
  1010 + <target_type>String</target_type>
  1011 + <target_format/>
  1012 + <target_length>-1</target_length>
  1013 + <target_precision>-1</target_precision>
  1014 + <target_decimal_symbol/>
  1015 + <target_grouping_symbol/>
  1016 + <target_currency_symbol/>
  1017 + <target_null_string/>
  1018 + <target_aggregation_type>-</target_aggregation_type>
  1019 + </field>
  1020 + <field>
  1021 + <field_name>all_content</field_name>
  1022 + <key_value>20</key_value>
  1023 + <target_name>fcno20</target_name>
  1024 + <target_type>String</target_type>
  1025 + <target_format/>
  1026 + <target_length>-1</target_length>
  1027 + <target_precision>-1</target_precision>
  1028 + <target_decimal_symbol/>
  1029 + <target_grouping_symbol/>
  1030 + <target_currency_symbol/>
  1031 + <target_null_string/>
  1032 + <target_aggregation_type>-</target_aggregation_type>
  1033 + </field>
  1034 + <field>
  1035 + <field_name>all_content</field_name>
  1036 + <key_value>21</key_value>
  1037 + <target_name>fcno21</target_name>
  1038 + <target_type>String</target_type>
  1039 + <target_format/>
  1040 + <target_length>-1</target_length>
  1041 + <target_precision>-1</target_precision>
  1042 + <target_decimal_symbol/>
  1043 + <target_grouping_symbol/>
  1044 + <target_currency_symbol/>
  1045 + <target_null_string/>
  1046 + <target_aggregation_type>-</target_aggregation_type>
  1047 + </field>
  1048 + <field>
  1049 + <field_name>all_content</field_name>
  1050 + <key_value>22</key_value>
  1051 + <target_name>fcno22</target_name>
  1052 + <target_type>String</target_type>
  1053 + <target_format/>
  1054 + <target_length>-1</target_length>
  1055 + <target_precision>-1</target_precision>
  1056 + <target_decimal_symbol/>
  1057 + <target_grouping_symbol/>
  1058 + <target_currency_symbol/>
  1059 + <target_null_string/>
  1060 + <target_aggregation_type>-</target_aggregation_type>
  1061 + </field>
  1062 + <field>
  1063 + <field_name>all_content</field_name>
  1064 + <key_value>23</key_value>
  1065 + <target_name>fcno23</target_name>
  1066 + <target_type>String</target_type>
  1067 + <target_format/>
  1068 + <target_length>-1</target_length>
  1069 + <target_precision>-1</target_precision>
  1070 + <target_decimal_symbol/>
  1071 + <target_grouping_symbol/>
  1072 + <target_currency_symbol/>
  1073 + <target_null_string/>
  1074 + <target_aggregation_type>-</target_aggregation_type>
  1075 + </field>
  1076 + <field>
  1077 + <field_name>all_content</field_name>
  1078 + <key_value>24</key_value>
  1079 + <target_name>fcno24</target_name>
  1080 + <target_type>String</target_type>
  1081 + <target_format/>
  1082 + <target_length>-1</target_length>
  1083 + <target_precision>-1</target_precision>
  1084 + <target_decimal_symbol/>
  1085 + <target_grouping_symbol/>
  1086 + <target_currency_symbol/>
  1087 + <target_null_string/>
  1088 + <target_aggregation_type>-</target_aggregation_type>
  1089 + </field>
  1090 + <field>
  1091 + <field_name>all_content</field_name>
  1092 + <key_value>25</key_value>
  1093 + <target_name>fcno25</target_name>
  1094 + <target_type>String</target_type>
  1095 + <target_format/>
  1096 + <target_length>-1</target_length>
  1097 + <target_precision>-1</target_precision>
  1098 + <target_decimal_symbol/>
  1099 + <target_grouping_symbol/>
  1100 + <target_currency_symbol/>
  1101 + <target_null_string/>
  1102 + <target_aggregation_type>-</target_aggregation_type>
  1103 + </field>
  1104 + <field>
  1105 + <field_name>all_content</field_name>
  1106 + <key_value>26</key_value>
  1107 + <target_name>fcno26</target_name>
  1108 + <target_type>String</target_type>
  1109 + <target_format/>
  1110 + <target_length>-1</target_length>
  1111 + <target_precision>-1</target_precision>
  1112 + <target_decimal_symbol/>
  1113 + <target_grouping_symbol/>
  1114 + <target_currency_symbol/>
  1115 + <target_null_string/>
  1116 + <target_aggregation_type>-</target_aggregation_type>
  1117 + </field>
  1118 + <field>
  1119 + <field_name>all_content</field_name>
  1120 + <key_value>27</key_value>
  1121 + <target_name>fcno27</target_name>
  1122 + <target_type>String</target_type>
  1123 + <target_format/>
  1124 + <target_length>-1</target_length>
  1125 + <target_precision>-1</target_precision>
  1126 + <target_decimal_symbol/>
  1127 + <target_grouping_symbol/>
  1128 + <target_currency_symbol/>
  1129 + <target_null_string/>
  1130 + <target_aggregation_type>-</target_aggregation_type>
  1131 + </field>
  1132 + <field>
  1133 + <field_name>all_content</field_name>
  1134 + <key_value>28</key_value>
  1135 + <target_name>fcno28</target_name>
  1136 + <target_type>String</target_type>
  1137 + <target_format/>
  1138 + <target_length>-1</target_length>
  1139 + <target_precision>-1</target_precision>
  1140 + <target_decimal_symbol/>
  1141 + <target_grouping_symbol/>
  1142 + <target_currency_symbol/>
  1143 + <target_null_string/>
  1144 + <target_aggregation_type>-</target_aggregation_type>
  1145 + </field>
  1146 + <field>
  1147 + <field_name>all_content</field_name>
  1148 + <key_value>29</key_value>
  1149 + <target_name>fcno29</target_name>
  1150 + <target_type>String</target_type>
  1151 + <target_format/>
  1152 + <target_length>-1</target_length>
  1153 + <target_precision>-1</target_precision>
  1154 + <target_decimal_symbol/>
  1155 + <target_grouping_symbol/>
  1156 + <target_currency_symbol/>
  1157 + <target_null_string/>
  1158 + <target_aggregation_type>-</target_aggregation_type>
  1159 + </field>
  1160 + <field>
  1161 + <field_name>all_content</field_name>
  1162 + <key_value>30</key_value>
  1163 + <target_name>fcno30</target_name>
  1164 + <target_type>String</target_type>
  1165 + <target_format/>
  1166 + <target_length>-1</target_length>
  1167 + <target_precision>-1</target_precision>
  1168 + <target_decimal_symbol/>
  1169 + <target_grouping_symbol/>
  1170 + <target_currency_symbol/>
  1171 + <target_null_string/>
  1172 + <target_aggregation_type>-</target_aggregation_type>
  1173 + </field>
  1174 + <field>
  1175 + <field_name>all_content</field_name>
  1176 + <key_value>31</key_value>
  1177 + <target_name>fcno31</target_name>
  1178 + <target_type>String</target_type>
  1179 + <target_format/>
  1180 + <target_length>-1</target_length>
  1181 + <target_precision>-1</target_precision>
  1182 + <target_decimal_symbol/>
  1183 + <target_grouping_symbol/>
  1184 + <target_currency_symbol/>
  1185 + <target_null_string/>
  1186 + <target_aggregation_type>-</target_aggregation_type>
  1187 + </field>
  1188 + <field>
  1189 + <field_name>all_content</field_name>
  1190 + <key_value>32</key_value>
  1191 + <target_name>fcno32</target_name>
  1192 + <target_type>String</target_type>
  1193 + <target_format/>
  1194 + <target_length>-1</target_length>
  1195 + <target_precision>-1</target_precision>
  1196 + <target_decimal_symbol/>
  1197 + <target_grouping_symbol/>
  1198 + <target_currency_symbol/>
  1199 + <target_null_string/>
  1200 + <target_aggregation_type>-</target_aggregation_type>
  1201 + </field>
  1202 + <field>
  1203 + <field_name>all_content</field_name>
  1204 + <key_value>33</key_value>
  1205 + <target_name>fcno33</target_name>
  1206 + <target_type>String</target_type>
  1207 + <target_format/>
  1208 + <target_length>-1</target_length>
  1209 + <target_precision>-1</target_precision>
  1210 + <target_decimal_symbol/>
  1211 + <target_grouping_symbol/>
  1212 + <target_currency_symbol/>
  1213 + <target_null_string/>
  1214 + <target_aggregation_type>-</target_aggregation_type>
  1215 + </field>
  1216 + <field>
  1217 + <field_name>all_content</field_name>
  1218 + <key_value>34</key_value>
  1219 + <target_name>fcno34</target_name>
  1220 + <target_type>String</target_type>
  1221 + <target_format/>
  1222 + <target_length>-1</target_length>
  1223 + <target_precision>-1</target_precision>
  1224 + <target_decimal_symbol/>
  1225 + <target_grouping_symbol/>
  1226 + <target_currency_symbol/>
  1227 + <target_null_string/>
  1228 + <target_aggregation_type>-</target_aggregation_type>
  1229 + </field>
  1230 + <field>
  1231 + <field_name>all_content</field_name>
  1232 + <key_value>35</key_value>
  1233 + <target_name>fcno35</target_name>
  1234 + <target_type>String</target_type>
  1235 + <target_format/>
  1236 + <target_length>-1</target_length>
  1237 + <target_precision>-1</target_precision>
  1238 + <target_decimal_symbol/>
  1239 + <target_grouping_symbol/>
  1240 + <target_currency_symbol/>
  1241 + <target_null_string/>
  1242 + <target_aggregation_type>-</target_aggregation_type>
  1243 + </field>
  1244 + <field>
  1245 + <field_name>all_content</field_name>
  1246 + <key_value>36</key_value>
  1247 + <target_name>fcno36</target_name>
  1248 + <target_type>String</target_type>
  1249 + <target_format/>
  1250 + <target_length>-1</target_length>
  1251 + <target_precision>-1</target_precision>
  1252 + <target_decimal_symbol/>
  1253 + <target_grouping_symbol/>
  1254 + <target_currency_symbol/>
  1255 + <target_null_string/>
  1256 + <target_aggregation_type>-</target_aggregation_type>
  1257 + </field>
  1258 + <field>
  1259 + <field_name>all_content</field_name>
  1260 + <key_value>37</key_value>
  1261 + <target_name>fcno37</target_name>
  1262 + <target_type>String</target_type>
  1263 + <target_format/>
  1264 + <target_length>-1</target_length>
  1265 + <target_precision>-1</target_precision>
  1266 + <target_decimal_symbol/>
  1267 + <target_grouping_symbol/>
  1268 + <target_currency_symbol/>
  1269 + <target_null_string/>
  1270 + <target_aggregation_type>-</target_aggregation_type>
  1271 + </field>
  1272 + <field>
  1273 + <field_name>all_content</field_name>
  1274 + <key_value>38</key_value>
  1275 + <target_name>fcno38</target_name>
  1276 + <target_type>String</target_type>
  1277 + <target_format/>
  1278 + <target_length>-1</target_length>
  1279 + <target_precision>-1</target_precision>
  1280 + <target_decimal_symbol/>
  1281 + <target_grouping_symbol/>
  1282 + <target_currency_symbol/>
  1283 + <target_null_string/>
  1284 + <target_aggregation_type>-</target_aggregation_type>
  1285 + </field>
  1286 + <field>
  1287 + <field_name>all_content</field_name>
  1288 + <key_value>39</key_value>
  1289 + <target_name>fcno39</target_name>
  1290 + <target_type>String</target_type>
  1291 + <target_format/>
  1292 + <target_length>-1</target_length>
  1293 + <target_precision>-1</target_precision>
  1294 + <target_decimal_symbol/>
  1295 + <target_grouping_symbol/>
  1296 + <target_currency_symbol/>
  1297 + <target_null_string/>
  1298 + <target_aggregation_type>-</target_aggregation_type>
  1299 + </field>
  1300 + <field>
  1301 + <field_name>all_content</field_name>
  1302 + <key_value>40</key_value>
  1303 + <target_name>fcno40</target_name>
  1304 + <target_type>String</target_type>
  1305 + <target_format/>
  1306 + <target_length>-1</target_length>
  1307 + <target_precision>-1</target_precision>
  1308 + <target_decimal_symbol/>
  1309 + <target_grouping_symbol/>
  1310 + <target_currency_symbol/>
  1311 + <target_null_string/>
  1312 + <target_aggregation_type>-</target_aggregation_type>
  1313 + </field>
  1314 + <field>
  1315 + <field_name>all_content</field_name>
  1316 + <key_value>41</key_value>
  1317 + <target_name>fcno41</target_name>
  1318 + <target_type>String</target_type>
  1319 + <target_format/>
  1320 + <target_length>-1</target_length>
  1321 + <target_precision>-1</target_precision>
  1322 + <target_decimal_symbol/>
  1323 + <target_grouping_symbol/>
  1324 + <target_currency_symbol/>
  1325 + <target_null_string/>
  1326 + <target_aggregation_type>-</target_aggregation_type>
  1327 + </field>
  1328 + <field>
  1329 + <field_name>all_content</field_name>
  1330 + <key_value>42</key_value>
  1331 + <target_name>fcno42</target_name>
  1332 + <target_type>String</target_type>
  1333 + <target_format/>
  1334 + <target_length>-1</target_length>
  1335 + <target_precision>-1</target_precision>
  1336 + <target_decimal_symbol/>
  1337 + <target_grouping_symbol/>
  1338 + <target_currency_symbol/>
  1339 + <target_null_string/>
  1340 + <target_aggregation_type>-</target_aggregation_type>
  1341 + </field>
  1342 + <field>
  1343 + <field_name>all_content</field_name>
  1344 + <key_value>43</key_value>
  1345 + <target_name>fcno43</target_name>
  1346 + <target_type>String</target_type>
  1347 + <target_format/>
  1348 + <target_length>-1</target_length>
  1349 + <target_precision>-1</target_precision>
  1350 + <target_decimal_symbol/>
  1351 + <target_grouping_symbol/>
  1352 + <target_currency_symbol/>
  1353 + <target_null_string/>
  1354 + <target_aggregation_type>-</target_aggregation_type>
  1355 + </field>
  1356 + <field>
  1357 + <field_name>all_content</field_name>
  1358 + <key_value>44</key_value>
  1359 + <target_name>fcno44</target_name>
  1360 + <target_type>String</target_type>
  1361 + <target_format/>
  1362 + <target_length>-1</target_length>
  1363 + <target_precision>-1</target_precision>
  1364 + <target_decimal_symbol/>
  1365 + <target_grouping_symbol/>
  1366 + <target_currency_symbol/>
  1367 + <target_null_string/>
  1368 + <target_aggregation_type>-</target_aggregation_type>
  1369 + </field>
  1370 + <field>
  1371 + <field_name>all_content</field_name>
  1372 + <key_value>45</key_value>
  1373 + <target_name>fcno45</target_name>
  1374 + <target_type>String</target_type>
  1375 + <target_format/>
  1376 + <target_length>-1</target_length>
  1377 + <target_precision>-1</target_precision>
  1378 + <target_decimal_symbol/>
  1379 + <target_grouping_symbol/>
  1380 + <target_currency_symbol/>
  1381 + <target_null_string/>
  1382 + <target_aggregation_type>-</target_aggregation_type>
  1383 + </field>
  1384 + <field>
  1385 + <field_name>all_content</field_name>
  1386 + <key_value>46</key_value>
  1387 + <target_name>fcno46</target_name>
  1388 + <target_type>String</target_type>
  1389 + <target_format/>
  1390 + <target_length>-1</target_length>
  1391 + <target_precision>-1</target_precision>
  1392 + <target_decimal_symbol/>
  1393 + <target_grouping_symbol/>
  1394 + <target_currency_symbol/>
  1395 + <target_null_string/>
  1396 + <target_aggregation_type>-</target_aggregation_type>
  1397 + </field>
  1398 + <field>
  1399 + <field_name>all_content</field_name>
  1400 + <key_value>47</key_value>
  1401 + <target_name>fcno47</target_name>
  1402 + <target_type>String</target_type>
  1403 + <target_format/>
  1404 + <target_length>-1</target_length>
  1405 + <target_precision>-1</target_precision>
  1406 + <target_decimal_symbol/>
  1407 + <target_grouping_symbol/>
  1408 + <target_currency_symbol/>
  1409 + <target_null_string/>
  1410 + <target_aggregation_type>-</target_aggregation_type>
  1411 + </field>
  1412 + <field>
  1413 + <field_name>all_content</field_name>
  1414 + <key_value>48</key_value>
  1415 + <target_name>fcno48</target_name>
  1416 + <target_type>String</target_type>
  1417 + <target_format/>
  1418 + <target_length>-1</target_length>
  1419 + <target_precision>-1</target_precision>
  1420 + <target_decimal_symbol/>
  1421 + <target_grouping_symbol/>
  1422 + <target_currency_symbol/>
  1423 + <target_null_string/>
  1424 + <target_aggregation_type>-</target_aggregation_type>
  1425 + </field>
  1426 + <field>
  1427 + <field_name>all_content</field_name>
  1428 + <key_value>49</key_value>
  1429 + <target_name>fcno49</target_name>
  1430 + <target_type>String</target_type>
  1431 + <target_format/>
  1432 + <target_length>-1</target_length>
  1433 + <target_precision>-1</target_precision>
  1434 + <target_decimal_symbol/>
  1435 + <target_grouping_symbol/>
  1436 + <target_currency_symbol/>
  1437 + <target_null_string/>
  1438 + <target_aggregation_type>-</target_aggregation_type>
  1439 + </field>
  1440 + <field>
  1441 + <field_name>all_content</field_name>
  1442 + <key_value>50</key_value>
  1443 + <target_name>fcno50</target_name>
  1444 + <target_type>String</target_type>
  1445 + <target_format/>
  1446 + <target_length>-1</target_length>
  1447 + <target_precision>-1</target_precision>
  1448 + <target_decimal_symbol/>
  1449 + <target_grouping_symbol/>
  1450 + <target_currency_symbol/>
  1451 + <target_null_string/>
  1452 + <target_aggregation_type>-</target_aggregation_type>
  1453 + </field>
  1454 + <field>
  1455 + <field_name>all_content</field_name>
  1456 + <key_value>51</key_value>
  1457 + <target_name>fcno51</target_name>
  1458 + <target_type>String</target_type>
  1459 + <target_format/>
  1460 + <target_length>-1</target_length>
  1461 + <target_precision>-1</target_precision>
  1462 + <target_decimal_symbol/>
  1463 + <target_grouping_symbol/>
  1464 + <target_currency_symbol/>
  1465 + <target_null_string/>
  1466 + <target_aggregation_type>-</target_aggregation_type>
  1467 + </field>
  1468 + <field>
  1469 + <field_name>all_content</field_name>
  1470 + <key_value>52</key_value>
  1471 + <target_name>fcno52</target_name>
  1472 + <target_type>String</target_type>
  1473 + <target_format/>
  1474 + <target_length>-1</target_length>
  1475 + <target_precision>-1</target_precision>
  1476 + <target_decimal_symbol/>
  1477 + <target_grouping_symbol/>
  1478 + <target_currency_symbol/>
  1479 + <target_null_string/>
  1480 + <target_aggregation_type>-</target_aggregation_type>
  1481 + </field>
  1482 + <field>
  1483 + <field_name>all_content</field_name>
  1484 + <key_value>53</key_value>
  1485 + <target_name>fcno53</target_name>
  1486 + <target_type>String</target_type>
  1487 + <target_format/>
  1488 + <target_length>-1</target_length>
  1489 + <target_precision>-1</target_precision>
  1490 + <target_decimal_symbol/>
  1491 + <target_grouping_symbol/>
  1492 + <target_currency_symbol/>
  1493 + <target_null_string/>
  1494 + <target_aggregation_type>-</target_aggregation_type>
  1495 + </field>
  1496 + <field>
  1497 + <field_name>all_content</field_name>
  1498 + <key_value>54</key_value>
  1499 + <target_name>fcno54</target_name>
  1500 + <target_type>String</target_type>
  1501 + <target_format/>
  1502 + <target_length>-1</target_length>
  1503 + <target_precision>-1</target_precision>
  1504 + <target_decimal_symbol/>
  1505 + <target_grouping_symbol/>
  1506 + <target_currency_symbol/>
  1507 + <target_null_string/>
  1508 + <target_aggregation_type>-</target_aggregation_type>
  1509 + </field>
  1510 + <field>
  1511 + <field_name>all_content</field_name>
  1512 + <key_value>55</key_value>
  1513 + <target_name>fcno55</target_name>
  1514 + <target_type>String</target_type>
  1515 + <target_format/>
  1516 + <target_length>-1</target_length>
  1517 + <target_precision>-1</target_precision>
  1518 + <target_decimal_symbol/>
  1519 + <target_grouping_symbol/>
  1520 + <target_currency_symbol/>
  1521 + <target_null_string/>
  1522 + <target_aggregation_type>-</target_aggregation_type>
  1523 + </field>
  1524 + <field>
  1525 + <field_name>all_content</field_name>
  1526 + <key_value>56</key_value>
  1527 + <target_name>fcno56</target_name>
  1528 + <target_type>String</target_type>
  1529 + <target_format/>
  1530 + <target_length>-1</target_length>
  1531 + <target_precision>-1</target_precision>
  1532 + <target_decimal_symbol/>
  1533 + <target_grouping_symbol/>
  1534 + <target_currency_symbol/>
  1535 + <target_null_string/>
  1536 + <target_aggregation_type>-</target_aggregation_type>
  1537 + </field>
  1538 + <field>
  1539 + <field_name>all_content</field_name>
  1540 + <key_value>57</key_value>
  1541 + <target_name>fcno57</target_name>
  1542 + <target_type>String</target_type>
  1543 + <target_format/>
  1544 + <target_length>-1</target_length>
  1545 + <target_precision>-1</target_precision>
  1546 + <target_decimal_symbol/>
  1547 + <target_grouping_symbol/>
  1548 + <target_currency_symbol/>
  1549 + <target_null_string/>
  1550 + <target_aggregation_type>-</target_aggregation_type>
  1551 + </field>
  1552 + <field>
  1553 + <field_name>all_content</field_name>
  1554 + <key_value>58</key_value>
  1555 + <target_name>fcno58</target_name>
  1556 + <target_type>String</target_type>
  1557 + <target_format/>
  1558 + <target_length>-1</target_length>
  1559 + <target_precision>-1</target_precision>
  1560 + <target_decimal_symbol/>
  1561 + <target_grouping_symbol/>
  1562 + <target_currency_symbol/>
  1563 + <target_null_string/>
  1564 + <target_aggregation_type>-</target_aggregation_type>
  1565 + </field>
  1566 + <field>
  1567 + <field_name>all_content</field_name>
  1568 + <key_value>59</key_value>
  1569 + <target_name>fcno59</target_name>
  1570 + <target_type>String</target_type>
  1571 + <target_format/>
  1572 + <target_length>-1</target_length>
  1573 + <target_precision>-1</target_precision>
  1574 + <target_decimal_symbol/>
  1575 + <target_grouping_symbol/>
  1576 + <target_currency_symbol/>
  1577 + <target_null_string/>
  1578 + <target_aggregation_type>-</target_aggregation_type>
  1579 + </field>
  1580 + <field>
  1581 + <field_name>all_content</field_name>
  1582 + <key_value>60</key_value>
  1583 + <target_name>fcno60</target_name>
  1584 + <target_type>String</target_type>
  1585 + <target_format/>
  1586 + <target_length>-1</target_length>
  1587 + <target_precision>-1</target_precision>
  1588 + <target_decimal_symbol/>
  1589 + <target_grouping_symbol/>
  1590 + <target_currency_symbol/>
  1591 + <target_null_string/>
  1592 + <target_aggregation_type>-</target_aggregation_type>
  1593 + </field>
  1594 + <field>
  1595 + <field_name>all_content</field_name>
  1596 + <key_value>61</key_value>
  1597 + <target_name>fcno61</target_name>
  1598 + <target_type>String</target_type>
  1599 + <target_format/>
  1600 + <target_length>-1</target_length>
  1601 + <target_precision>-1</target_precision>
  1602 + <target_decimal_symbol/>
  1603 + <target_grouping_symbol/>
  1604 + <target_currency_symbol/>
  1605 + <target_null_string/>
  1606 + <target_aggregation_type>-</target_aggregation_type>
  1607 + </field>
  1608 + <field>
  1609 + <field_name>all_content</field_name>
  1610 + <key_value>62</key_value>
  1611 + <target_name>fcno62</target_name>
  1612 + <target_type>String</target_type>
  1613 + <target_format/>
  1614 + <target_length>-1</target_length>
  1615 + <target_precision>-1</target_precision>
  1616 + <target_decimal_symbol/>
  1617 + <target_grouping_symbol/>
  1618 + <target_currency_symbol/>
  1619 + <target_null_string/>
  1620 + <target_aggregation_type>-</target_aggregation_type>
  1621 + </field>
  1622 + <field>
  1623 + <field_name>all_content</field_name>
  1624 + <key_value>63</key_value>
  1625 + <target_name>fcno63</target_name>
  1626 + <target_type>String</target_type>
  1627 + <target_format/>
  1628 + <target_length>-1</target_length>
  1629 + <target_precision>-1</target_precision>
  1630 + <target_decimal_symbol/>
  1631 + <target_grouping_symbol/>
  1632 + <target_currency_symbol/>
  1633 + <target_null_string/>
  1634 + <target_aggregation_type>-</target_aggregation_type>
  1635 + </field>
  1636 + <field>
  1637 + <field_name>all_content</field_name>
  1638 + <key_value>64</key_value>
  1639 + <target_name>fcno64</target_name>
  1640 + <target_type>String</target_type>
  1641 + <target_format/>
  1642 + <target_length>-1</target_length>
  1643 + <target_precision>-1</target_precision>
  1644 + <target_decimal_symbol/>
  1645 + <target_grouping_symbol/>
  1646 + <target_currency_symbol/>
  1647 + <target_null_string/>
  1648 + <target_aggregation_type>-</target_aggregation_type>
  1649 + </field>
  1650 + <field>
  1651 + <field_name>all_content</field_name>
  1652 + <key_value>65</key_value>
  1653 + <target_name>fcno65</target_name>
  1654 + <target_type>String</target_type>
  1655 + <target_format/>
  1656 + <target_length>-1</target_length>
  1657 + <target_precision>-1</target_precision>
  1658 + <target_decimal_symbol/>
  1659 + <target_grouping_symbol/>
  1660 + <target_currency_symbol/>
  1661 + <target_null_string/>
  1662 + <target_aggregation_type>-</target_aggregation_type>
  1663 + </field>
  1664 + <field>
  1665 + <field_name>all_content</field_name>
  1666 + <key_value>66</key_value>
  1667 + <target_name>fcno66</target_name>
  1668 + <target_type>String</target_type>
  1669 + <target_format/>
  1670 + <target_length>-1</target_length>
  1671 + <target_precision>-1</target_precision>
  1672 + <target_decimal_symbol/>
  1673 + <target_grouping_symbol/>
  1674 + <target_currency_symbol/>
  1675 + <target_null_string/>
  1676 + <target_aggregation_type>-</target_aggregation_type>
  1677 + </field>
  1678 + <field>
  1679 + <field_name>all_content</field_name>
  1680 + <key_value>67</key_value>
  1681 + <target_name>fcno67</target_name>
  1682 + <target_type>String</target_type>
  1683 + <target_format/>
  1684 + <target_length>-1</target_length>
  1685 + <target_precision>-1</target_precision>
  1686 + <target_decimal_symbol/>
  1687 + <target_grouping_symbol/>
  1688 + <target_currency_symbol/>
  1689 + <target_null_string/>
  1690 + <target_aggregation_type>-</target_aggregation_type>
  1691 + </field>
  1692 + <field>
  1693 + <field_name>all_content</field_name>
  1694 + <key_value>68</key_value>
  1695 + <target_name>fcno68</target_name>
  1696 + <target_type>String</target_type>
  1697 + <target_format/>
  1698 + <target_length>-1</target_length>
  1699 + <target_precision>-1</target_precision>
  1700 + <target_decimal_symbol/>
  1701 + <target_grouping_symbol/>
  1702 + <target_currency_symbol/>
  1703 + <target_null_string/>
  1704 + <target_aggregation_type>-</target_aggregation_type>
  1705 + </field>
  1706 + <field>
  1707 + <field_name>all_content</field_name>
  1708 + <key_value>69</key_value>
  1709 + <target_name>fcno69</target_name>
  1710 + <target_type>String</target_type>
  1711 + <target_format/>
  1712 + <target_length>-1</target_length>
  1713 + <target_precision>-1</target_precision>
  1714 + <target_decimal_symbol/>
  1715 + <target_grouping_symbol/>
  1716 + <target_currency_symbol/>
  1717 + <target_null_string/>
  1718 + <target_aggregation_type>-</target_aggregation_type>
  1719 + </field>
  1720 + <field>
  1721 + <field_name>all_content</field_name>
  1722 + <key_value>70</key_value>
  1723 + <target_name>fcno70</target_name>
  1724 + <target_type>String</target_type>
  1725 + <target_format/>
  1726 + <target_length>-1</target_length>
  1727 + <target_precision>-1</target_precision>
  1728 + <target_decimal_symbol/>
  1729 + <target_grouping_symbol/>
  1730 + <target_currency_symbol/>
  1731 + <target_null_string/>
  1732 + <target_aggregation_type>-</target_aggregation_type>
  1733 + </field>
  1734 + </fields>
  1735 + <cluster_schema/>
  1736 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  1737 + <xloc>690</xloc>
  1738 + <yloc>272</yloc>
  1739 + <draw>Y</draw>
  1740 + </GUI>
  1741 + </step>
  1742 +
  1743 + <step>
  1744 + <name>&#x53bb;&#x9664;&#x5b57;&#x6bb5;</name>
  1745 + <type>SelectValues</type>
  1746 + <description/>
  1747 + <distribute>N</distribute>
  1748 + <custom_distribution/>
  1749 + <copies>1</copies>
  1750 + <partitioning>
  1751 + <method>none</method>
  1752 + <schema_name/>
  1753 + </partitioning>
  1754 + <fields> <field> <name>lp</name>
  1755 + <rename/>
  1756 + <length>-2</length>
  1757 + <precision>-2</precision>
  1758 + </field> <field> <name>fcno1</name>
  1759 + <rename/>
  1760 + <length>-2</length>
  1761 + <precision>-2</precision>
  1762 + </field> <field> <name>fcno2</name>
  1763 + <rename/>
  1764 + <length>-2</length>
  1765 + <precision>-2</precision>
  1766 + </field> <field> <name>fcno3</name>
  1767 + <rename/>
  1768 + <length>-2</length>
  1769 + <precision>-2</precision>
  1770 + </field> <field> <name>fcno4</name>
  1771 + <rename/>
  1772 + <length>-2</length>
  1773 + <precision>-2</precision>
  1774 + </field> <field> <name>fcno5</name>
  1775 + <rename/>
  1776 + <length>-2</length>
  1777 + <precision>-2</precision>
  1778 + </field> <field> <name>fcno6</name>
  1779 + <rename/>
  1780 + <length>-2</length>
  1781 + <precision>-2</precision>
  1782 + </field> <field> <name>fcno7</name>
  1783 + <rename/>
  1784 + <length>-2</length>
  1785 + <precision>-2</precision>
  1786 + </field> <field> <name>fcno8</name>
  1787 + <rename/>
  1788 + <length>-2</length>
  1789 + <precision>-2</precision>
  1790 + </field> <field> <name>fcno9</name>
  1791 + <rename/>
  1792 + <length>-2</length>
  1793 + <precision>-2</precision>
  1794 + </field> <field> <name>fcno10</name>
  1795 + <rename/>
  1796 + <length>-2</length>
  1797 + <precision>-2</precision>
  1798 + </field> <field> <name>fcno11</name>
  1799 + <rename/>
  1800 + <length>-2</length>
  1801 + <precision>-2</precision>
  1802 + </field> <field> <name>fcno12</name>
  1803 + <rename/>
  1804 + <length>-2</length>
  1805 + <precision>-2</precision>
  1806 + </field> <field> <name>fcno13</name>
  1807 + <rename/>
  1808 + <length>-2</length>
  1809 + <precision>-2</precision>
  1810 + </field> <field> <name>fcno14</name>
  1811 + <rename/>
  1812 + <length>-2</length>
  1813 + <precision>-2</precision>
  1814 + </field> <field> <name>fcno15</name>
  1815 + <rename/>
  1816 + <length>-2</length>
  1817 + <precision>-2</precision>
  1818 + </field> <field> <name>fcno16</name>
  1819 + <rename/>
  1820 + <length>-2</length>
  1821 + <precision>-2</precision>
  1822 + </field> <field> <name>fcno17</name>
  1823 + <rename/>
  1824 + <length>-2</length>
  1825 + <precision>-2</precision>
  1826 + </field> <field> <name>fcno18</name>
  1827 + <rename/>
  1828 + <length>-2</length>
  1829 + <precision>-2</precision>
  1830 + </field> <field> <name>fcno19</name>
  1831 + <rename/>
  1832 + <length>-2</length>
  1833 + <precision>-2</precision>
  1834 + </field> <field> <name>fcno20</name>
  1835 + <rename/>
  1836 + <length>-2</length>
  1837 + <precision>-2</precision>
  1838 + </field> <field> <name>fcno21</name>
  1839 + <rename/>
  1840 + <length>-2</length>
  1841 + <precision>-2</precision>
  1842 + </field> <field> <name>fcno22</name>
  1843 + <rename/>
  1844 + <length>-2</length>
  1845 + <precision>-2</precision>
  1846 + </field> <field> <name>fcno23</name>
  1847 + <rename/>
  1848 + <length>-2</length>
  1849 + <precision>-2</precision>
  1850 + </field> <field> <name>fcno24</name>
  1851 + <rename/>
  1852 + <length>-2</length>
  1853 + <precision>-2</precision>
  1854 + </field> <field> <name>fcno25</name>
  1855 + <rename/>
  1856 + <length>-2</length>
  1857 + <precision>-2</precision>
  1858 + </field> <field> <name>fcno26</name>
  1859 + <rename/>
  1860 + <length>-2</length>
  1861 + <precision>-2</precision>
  1862 + </field> <field> <name>fcno27</name>
  1863 + <rename/>
  1864 + <length>-2</length>
  1865 + <precision>-2</precision>
  1866 + </field> <field> <name>fcno28</name>
  1867 + <rename/>
  1868 + <length>-2</length>
  1869 + <precision>-2</precision>
  1870 + </field> <field> <name>fcno29</name>
  1871 + <rename/>
  1872 + <length>-2</length>
  1873 + <precision>-2</precision>
  1874 + </field> <field> <name>fcno30</name>
  1875 + <rename/>
  1876 + <length>-2</length>
  1877 + <precision>-2</precision>
  1878 + </field> <field> <name>fcno31</name>
  1879 + <rename/>
  1880 + <length>-2</length>
  1881 + <precision>-2</precision>
  1882 + </field> <field> <name>fcno32</name>
  1883 + <rename/>
  1884 + <length>-2</length>
  1885 + <precision>-2</precision>
  1886 + </field> <field> <name>fcno33</name>
  1887 + <rename/>
  1888 + <length>-2</length>
  1889 + <precision>-2</precision>
  1890 + </field> <field> <name>fcno34</name>
  1891 + <rename/>
  1892 + <length>-2</length>
  1893 + <precision>-2</precision>
  1894 + </field> <field> <name>fcno35</name>
  1895 + <rename/>
  1896 + <length>-2</length>
  1897 + <precision>-2</precision>
  1898 + </field> <field> <name>fcno36</name>
  1899 + <rename/>
  1900 + <length>-2</length>
  1901 + <precision>-2</precision>
  1902 + </field> <field> <name>fcno37</name>
  1903 + <rename/>
  1904 + <length>-2</length>
  1905 + <precision>-2</precision>
  1906 + </field> <field> <name>fcno38</name>
  1907 + <rename/>
  1908 + <length>-2</length>
  1909 + <precision>-2</precision>
  1910 + </field> <field> <name>fcno39</name>
  1911 + <rename/>
  1912 + <length>-2</length>
  1913 + <precision>-2</precision>
  1914 + </field> <field> <name>fcno40</name>
  1915 + <rename/>
  1916 + <length>-2</length>
  1917 + <precision>-2</precision>
  1918 + </field> <field> <name>fcno41</name>
  1919 + <rename/>
  1920 + <length>-2</length>
  1921 + <precision>-2</precision>
  1922 + </field> <field> <name>fcno42</name>
  1923 + <rename/>
  1924 + <length>-2</length>
  1925 + <precision>-2</precision>
  1926 + </field> <field> <name>fcno43</name>
  1927 + <rename/>
  1928 + <length>-2</length>
  1929 + <precision>-2</precision>
  1930 + </field> <field> <name>fcno44</name>
  1931 + <rename/>
  1932 + <length>-2</length>
  1933 + <precision>-2</precision>
  1934 + </field> <field> <name>fcno45</name>
  1935 + <rename/>
  1936 + <length>-2</length>
  1937 + <precision>-2</precision>
  1938 + </field> <field> <name>fcno46</name>
  1939 + <rename/>
  1940 + <length>-2</length>
  1941 + <precision>-2</precision>
  1942 + </field> <field> <name>fcno47</name>
  1943 + <rename/>
  1944 + <length>-2</length>
  1945 + <precision>-2</precision>
  1946 + </field> <field> <name>fcno48</name>
  1947 + <rename/>
  1948 + <length>-2</length>
  1949 + <precision>-2</precision>
  1950 + </field> <field> <name>fcno49</name>
  1951 + <rename/>
  1952 + <length>-2</length>
  1953 + <precision>-2</precision>
  1954 + </field> <field> <name>fcno50</name>
  1955 + <rename/>
  1956 + <length>-2</length>
  1957 + <precision>-2</precision>
  1958 + </field> <field> <name>fcno51</name>
  1959 + <rename/>
  1960 + <length>-2</length>
  1961 + <precision>-2</precision>
  1962 + </field> <field> <name>fcno52</name>
  1963 + <rename/>
  1964 + <length>-2</length>
  1965 + <precision>-2</precision>
  1966 + </field> <field> <name>fcno53</name>
  1967 + <rename/>
  1968 + <length>-2</length>
  1969 + <precision>-2</precision>
  1970 + </field> <field> <name>fcno54</name>
  1971 + <rename/>
  1972 + <length>-2</length>
  1973 + <precision>-2</precision>
  1974 + </field> <field> <name>fcno55</name>
  1975 + <rename/>
  1976 + <length>-2</length>
  1977 + <precision>-2</precision>
  1978 + </field> <field> <name>fcno56</name>
  1979 + <rename/>
  1980 + <length>-2</length>
  1981 + <precision>-2</precision>
  1982 + </field> <field> <name>fcno57</name>
  1983 + <rename/>
  1984 + <length>-2</length>
  1985 + <precision>-2</precision>
  1986 + </field> <field> <name>fcno58</name>
  1987 + <rename/>
  1988 + <length>-2</length>
  1989 + <precision>-2</precision>
  1990 + </field> <field> <name>fcno59</name>
  1991 + <rename/>
  1992 + <length>-2</length>
  1993 + <precision>-2</precision>
  1994 + </field> <field> <name>fcno60</name>
  1995 + <rename/>
  1996 + <length>-2</length>
  1997 + <precision>-2</precision>
  1998 + </field> <field> <name>fcno61</name>
  1999 + <rename/>
  2000 + <length>-2</length>
  2001 + <precision>-2</precision>
  2002 + </field> <field> <name>fcno62</name>
  2003 + <rename/>
  2004 + <length>-2</length>
  2005 + <precision>-2</precision>
  2006 + </field> <field> <name>fcno63</name>
  2007 + <rename/>
  2008 + <length>-2</length>
  2009 + <precision>-2</precision>
  2010 + </field> <field> <name>fcno64</name>
  2011 + <rename/>
  2012 + <length>-2</length>
  2013 + <precision>-2</precision>
  2014 + </field> <field> <name>fcno65</name>
  2015 + <rename/>
  2016 + <length>-2</length>
  2017 + <precision>-2</precision>
  2018 + </field> <field> <name>fcno66</name>
  2019 + <rename/>
  2020 + <length>-2</length>
  2021 + <precision>-2</precision>
  2022 + </field> <field> <name>fcno67</name>
  2023 + <rename/>
  2024 + <length>-2</length>
  2025 + <precision>-2</precision>
  2026 + </field> <field> <name>fcno68</name>
  2027 + <rename/>
  2028 + <length>-2</length>
  2029 + <precision>-2</precision>
  2030 + </field> <field> <name>fcno69</name>
  2031 + <rename/>
  2032 + <length>-2</length>
  2033 + <precision>-2</precision>
  2034 + </field> <field> <name>fcno70</name>
  2035 + <rename/>
  2036 + <length>-2</length>
  2037 + <precision>-2</precision>
  2038 + </field> <select_unspecified>N</select_unspecified>
  2039 + </fields> <cluster_schema/>
  2040 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  2041 + <xloc>691</xloc>
  2042 + <yloc>361</yloc>
  2043 + <draw>Y</draw>
  2044 + </GUI>
  2045 + </step>
  2046 +
  2047 + <step>
  2048 + <name>&#x5408;&#x5e76;&#x5185;&#x5bb9;</name>
  2049 + <type>ScriptValueMod</type>
  2050 + <description/>
  2051 + <distribute>Y</distribute>
  2052 + <custom_distribution/>
  2053 + <copies>1</copies>
  2054 + <partitioning>
  2055 + <method>none</method>
  2056 + <schema_name/>
  2057 + </partitioning>
  2058 + <compatible>N</compatible>
  2059 + <optimizationLevel>9</optimizationLevel>
  2060 + <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>
  2061 + <jsScript_name>Script 1</jsScript_name>
  2062 + <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;&#x2f;&#x2f; &#x987a;&#x5e8f;&#xff0c;id,fcsj,jhlc,zdname,bctype,xldir,isfb&#xa;var all_content_array &#x3d; &#x5b;&#x5d;&#x3b;&#xa;var all_content &#x3d; &#x22;&#x22;&#x3b; &#xa;all_content_array.push&#x28;id&#x29;&#x3b;&#xa;all_content_array.push&#x28;fcsj&#x29;&#x3b;&#xa;all_content_array.push&#x28;jhlc&#x29;&#x3b;&#xa;all_content_array.push&#x28;fczdName&#x29;&#x3b;&#xa;all_content_array.push&#x28;bc_type&#x29;&#x3b;&#xa;all_content_array.push&#x28;xl_dir&#x29;&#x3b;&#xa;all_content_array.push&#x28;isfb&#x29;&#x3b;&#xa;all_content_array.push&#x28;qdz &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;all_content_array.push&#x28;zdz &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;all_content_array.push&#x28;tcc &#x7c;&#x7c; &#x27;null&#x27;&#x29;&#x3b;&#xa;&#xa;all_content &#x3d; all_content_array.join&#x28;&#x22;,&#x22;&#x29;&#x3b; &#x2f;&#x2f; &#x9017;&#x53f7;&#x5206;&#x9694;</jsScript_script>
  2063 + </jsScript> </jsScripts> <fields> <field> <name>all_content</name>
  2064 + <rename>all_content</rename>
  2065 + <type>String</type>
  2066 + <length>-1</length>
  2067 + <precision>-1</precision>
  2068 + <replace>N</replace>
  2069 + </field> </fields> <cluster_schema/>
  2070 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  2071 + <xloc>551</xloc>
  2072 + <yloc>366</yloc>
  2073 + <draw>Y</draw>
  2074 + </GUI>
  2075 + </step>
  2076 +
  2077 + <step>
  2078 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
  2079 + <type>SelectValues</type>
  2080 + <description/>
  2081 + <distribute>Y</distribute>
  2082 + <custom_distribution/>
  2083 + <copies>1</copies>
  2084 + <partitioning>
  2085 + <method>none</method>
  2086 + <schema_name/>
  2087 + </partitioning>
  2088 + <fields> <field> <name>id</name>
  2089 + <rename/>
  2090 + <length>-2</length>
  2091 + <precision>-2</precision>
  2092 + </field> <field> <name>lp</name>
  2093 + <rename/>
  2094 + <length>-2</length>
  2095 + <precision>-2</precision>
  2096 + </field> <field> <name>fcsj</name>
  2097 + <rename/>
  2098 + <length>-2</length>
  2099 + <precision>-2</precision>
  2100 + </field> <field> <name>fcno</name>
  2101 + <rename/>
  2102 + <length>-2</length>
  2103 + <precision>-2</precision>
  2104 + </field> <field> <name>bcs</name>
  2105 + <rename/>
  2106 + <length>-2</length>
  2107 + <precision>-2</precision>
  2108 + </field> <field> <name>bc_type</name>
  2109 + <rename/>
  2110 + <length>-2</length>
  2111 + <precision>-2</precision>
  2112 + </field> <field> <name>qdzName</name>
  2113 + <rename/>
  2114 + <length>-2</length>
  2115 + <precision>-2</precision>
  2116 + </field> <field> <name>zdzName</name>
  2117 + <rename/>
  2118 + <length>-2</length>
  2119 + <precision>-2</precision>
  2120 + </field> <field> <name>xl_dir</name>
  2121 + <rename/>
  2122 + <length>-2</length>
  2123 + <precision>-2</precision>
  2124 + </field> <field> <name>isfb</name>
  2125 + <rename/>
  2126 + <length>-2</length>
  2127 + <precision>-2</precision>
  2128 + </field> <field> <name>jhlc</name>
  2129 + <rename/>
  2130 + <length>-2</length>
  2131 + <precision>-2</precision>
  2132 + </field> <field> <name>qdz</name>
  2133 + <rename/>
  2134 + <length>-2</length>
  2135 + <precision>-2</precision>
  2136 + </field> <field> <name>zdz</name>
  2137 + <rename/>
  2138 + <length>-2</length>
  2139 + <precision>-2</precision>
  2140 + </field> <field> <name>tcc</name>
  2141 + <rename/>
  2142 + <length>-2</length>
  2143 + <precision>-2</precision>
  2144 + </field> <select_unspecified>N</select_unspecified>
  2145 + </fields> <cluster_schema/>
  2146 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  2147 + <xloc>690</xloc>
  2148 + <yloc>188</yloc>
  2149 + <draw>Y</draw>
  2150 + </GUI>
  2151 + </step>
  2152 +
  2153 + <step>
  2154 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9; 2</name>
  2155 + <type>SelectValues</type>
  2156 + <description/>
  2157 + <distribute>Y</distribute>
  2158 + <custom_distribution/>
  2159 + <copies>1</copies>
  2160 + <partitioning>
  2161 + <method>none</method>
  2162 + <schema_name/>
  2163 + </partitioning>
  2164 + <fields> <field> <name>id</name>
  2165 + <rename/>
  2166 + <length>-2</length>
  2167 + <precision>-2</precision>
  2168 + </field> <field> <name>lp</name>
  2169 + <rename/>
  2170 + <length>-2</length>
  2171 + <precision>-2</precision>
  2172 + </field> <field> <name>fcsj</name>
  2173 + <rename/>
  2174 + <length>-2</length>
  2175 + <precision>-2</precision>
  2176 + </field> <field> <name>fcno</name>
  2177 + <rename/>
  2178 + <length>-2</length>
  2179 + <precision>-2</precision>
  2180 + </field> <field> <name>bcs</name>
  2181 + <rename/>
  2182 + <length>-2</length>
  2183 + <precision>-2</precision>
  2184 + </field> <field> <name>bc_type</name>
  2185 + <rename/>
  2186 + <length>-2</length>
  2187 + <precision>-2</precision>
  2188 + </field> <field> <name>qdzName</name>
  2189 + <rename/>
  2190 + <length>-2</length>
  2191 + <precision>-2</precision>
  2192 + </field> <field> <name>zdzName</name>
  2193 + <rename/>
  2194 + <length>-2</length>
  2195 + <precision>-2</precision>
  2196 + </field> <field> <name>xl_dir</name>
  2197 + <rename/>
  2198 + <length>-2</length>
  2199 + <precision>-2</precision>
  2200 + </field> <field> <name>isfb</name>
  2201 + <rename/>
  2202 + <length>-2</length>
  2203 + <precision>-2</precision>
  2204 + </field> <field> <name>jhlc</name>
  2205 + <rename/>
  2206 + <length>-2</length>
  2207 + <precision>-2</precision>
  2208 + </field> <field> <name>qdz</name>
  2209 + <rename/>
  2210 + <length>-2</length>
  2211 + <precision>-2</precision>
  2212 + </field> <field> <name>zdz</name>
  2213 + <rename/>
  2214 + <length>-2</length>
  2215 + <precision>-2</precision>
  2216 + </field> <field> <name>tcc</name>
  2217 + <rename/>
  2218 + <length>-2</length>
  2219 + <precision>-2</precision>
  2220 + </field> <select_unspecified>N</select_unspecified>
  2221 + </fields> <cluster_schema/>
  2222 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  2223 + <xloc>402</xloc>
  2224 + <yloc>189</yloc>
  2225 + <draw>Y</draw>
  2226 + </GUI>
  2227 + </step>
  2228 +
  2229 + <step>
  2230 + <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
  2231 + <type>SortRows</type>
  2232 + <description/>
  2233 + <distribute>Y</distribute>
  2234 + <custom_distribution/>
  2235 + <copies>1</copies>
  2236 + <partitioning>
  2237 + <method>none</method>
  2238 + <schema_name/>
  2239 + </partitioning>
  2240 + <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
  2241 + <prefix>out</prefix>
  2242 + <sort_size>1000000</sort_size>
  2243 + <free_memory/>
  2244 + <compress>N</compress>
  2245 + <compress_variable/>
  2246 + <unique_rows>N</unique_rows>
  2247 + <fields>
  2248 + <field>
  2249 + <name>bcs</name>
  2250 + <ascending>Y</ascending>
  2251 + <case_sensitive>N</case_sensitive>
  2252 + <presorted>N</presorted>
  2253 + </field>
  2254 + </fields>
  2255 + <cluster_schema/>
  2256 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  2257 + <xloc>549</xloc>
  2258 + <yloc>191</yloc>
  2259 + <draw>Y</draw>
  2260 + </GUI>
  2261 + </step>
  2262 +
  2263 + <step>
  2264 + <name>&#x6587;&#x672c;&#x6587;&#x4ef6;&#x8f93;&#x51fa;</name>
  2265 + <type>TextFileOutput</type>
  2266 + <description/>
  2267 + <distribute>Y</distribute>
  2268 + <custom_distribution/>
  2269 + <copies>1</copies>
  2270 + <partitioning>
  2271 + <method>none</method>
  2272 + <schema_name/>
  2273 + </partitioning>
  2274 + <separator>&#x3b;</separator>
  2275 + <enclosure>&#x22;</enclosure>
  2276 + <enclosure_forced>N</enclosure_forced>
  2277 + <enclosure_fix_disabled>N</enclosure_fix_disabled>
  2278 + <header>Y</header>
  2279 + <footer>N</footer>
  2280 + <format>DOS</format>
  2281 + <compression>None</compression>
  2282 + <encoding>UTF-8</encoding>
  2283 + <endedLine/>
  2284 + <fileNameInField>N</fileNameInField>
  2285 + <fileNameField/>
  2286 + <create_parent_folder>Y</create_parent_folder>
  2287 + <file>
  2288 + <name>&#x24;&#x7b;tempfilepath&#x7d;</name>
  2289 + <is_command>N</is_command>
  2290 + <servlet_output>N</servlet_output>
  2291 + <do_not_open_new_file_init>N</do_not_open_new_file_init>
  2292 + <extention>txt</extention>
  2293 + <append>N</append>
  2294 + <split>N</split>
  2295 + <haspartno>N</haspartno>
  2296 + <add_date>N</add_date>
  2297 + <add_time>N</add_time>
  2298 + <SpecifyFormat>N</SpecifyFormat>
  2299 + <date_time_format/>
  2300 + <add_to_result_filenames>Y</add_to_result_filenames>
  2301 + <pad>N</pad>
  2302 + <fast_dump>N</fast_dump>
  2303 + <splitevery>0</splitevery>
  2304 + </file>
  2305 + <fields>
  2306 + <field>
  2307 + <name>lp</name>
  2308 + <type>String</type>
  2309 + <format/>
  2310 + <currency/>
  2311 + <decimal/>
  2312 + <group/>
  2313 + <nullif/>
  2314 + <trim_type>none</trim_type>
  2315 + <length>255</length>
  2316 + <precision>-1</precision>
  2317 + </field>
  2318 + <field>
  2319 + <name>fcno1</name>
  2320 + <type>String</type>
  2321 + <format/>
  2322 + <currency/>
  2323 + <decimal/>
  2324 + <group/>
  2325 + <nullif/>
  2326 + <trim_type>none</trim_type>
  2327 + <length>-1</length>
  2328 + <precision>-1</precision>
  2329 + </field>
  2330 + <field>
  2331 + <name>fcno2</name>
  2332 + <type>String</type>
  2333 + <format/>
  2334 + <currency/>
  2335 + <decimal/>
  2336 + <group/>
  2337 + <nullif/>
  2338 + <trim_type>none</trim_type>
  2339 + <length>-1</length>
  2340 + <precision>-1</precision>
  2341 + </field>
  2342 + <field>
  2343 + <name>fcno3</name>
  2344 + <type>String</type>
  2345 + <format/>
  2346 + <currency/>
  2347 + <decimal/>
  2348 + <group/>
  2349 + <nullif/>
  2350 + <trim_type>none</trim_type>
  2351 + <length>-1</length>
  2352 + <precision>-1</precision>
  2353 + </field>
  2354 + <field>
  2355 + <name>fcno4</name>
  2356 + <type>String</type>
  2357 + <format/>
  2358 + <currency/>
  2359 + <decimal/>
  2360 + <group/>
  2361 + <nullif/>
  2362 + <trim_type>none</trim_type>
  2363 + <length>-1</length>
  2364 + <precision>-1</precision>
  2365 + </field>
  2366 + <field>
  2367 + <name>fcno5</name>
  2368 + <type>String</type>
  2369 + <format/>
  2370 + <currency/>
  2371 + <decimal/>
  2372 + <group/>
  2373 + <nullif/>
  2374 + <trim_type>none</trim_type>
  2375 + <length>-1</length>
  2376 + <precision>-1</precision>
  2377 + </field>
  2378 + <field>
  2379 + <name>fcno6</name>
  2380 + <type>String</type>
  2381 + <format/>
  2382 + <currency/>
  2383 + <decimal/>
  2384 + <group/>
  2385 + <nullif/>
  2386 + <trim_type>none</trim_type>
  2387 + <length>-1</length>
  2388 + <precision>-1</precision>
  2389 + </field>
  2390 + <field>
  2391 + <name>fcno7</name>
  2392 + <type>String</type>
  2393 + <format/>
  2394 + <currency/>
  2395 + <decimal/>
  2396 + <group/>
  2397 + <nullif/>
  2398 + <trim_type>none</trim_type>
  2399 + <length>-1</length>
  2400 + <precision>-1</precision>
  2401 + </field>
  2402 + <field>
  2403 + <name>fcno8</name>
  2404 + <type>String</type>
  2405 + <format/>
  2406 + <currency/>
  2407 + <decimal/>
  2408 + <group/>
  2409 + <nullif/>
  2410 + <trim_type>none</trim_type>
  2411 + <length>-1</length>
  2412 + <precision>-1</precision>
  2413 + </field>
  2414 + <field>
  2415 + <name>fcno9</name>
  2416 + <type>String</type>
  2417 + <format/>
  2418 + <currency/>
  2419 + <decimal/>
  2420 + <group/>
  2421 + <nullif/>
  2422 + <trim_type>none</trim_type>
  2423 + <length>-1</length>
  2424 + <precision>-1</precision>
  2425 + </field>
  2426 + <field>
  2427 + <name>fcno10</name>
  2428 + <type>String</type>
  2429 + <format/>
  2430 + <currency/>
  2431 + <decimal/>
  2432 + <group/>
  2433 + <nullif/>
  2434 + <trim_type>none</trim_type>
  2435 + <length>-1</length>
  2436 + <precision>-1</precision>
  2437 + </field>
  2438 + <field>
  2439 + <name>fcno11</name>
  2440 + <type>String</type>
  2441 + <format/>
  2442 + <currency/>
  2443 + <decimal/>
  2444 + <group/>
  2445 + <nullif/>
  2446 + <trim_type>none</trim_type>
  2447 + <length>-1</length>
  2448 + <precision>-1</precision>
  2449 + </field>
  2450 + <field>
  2451 + <name>fcno12</name>
  2452 + <type>String</type>
  2453 + <format/>
  2454 + <currency/>
  2455 + <decimal/>
  2456 + <group/>
  2457 + <nullif/>
  2458 + <trim_type>none</trim_type>
  2459 + <length>-1</length>
  2460 + <precision>-1</precision>
  2461 + </field>
  2462 + <field>
  2463 + <name>fcno13</name>
  2464 + <type>String</type>
  2465 + <format/>
  2466 + <currency/>
  2467 + <decimal/>
  2468 + <group/>
  2469 + <nullif/>
  2470 + <trim_type>none</trim_type>
  2471 + <length>-1</length>
  2472 + <precision>-1</precision>
  2473 + </field>
  2474 + <field>
  2475 + <name>fcno14</name>
  2476 + <type>String</type>
  2477 + <format/>
  2478 + <currency/>
  2479 + <decimal/>
  2480 + <group/>
  2481 + <nullif/>
  2482 + <trim_type>none</trim_type>
  2483 + <length>-1</length>
  2484 + <precision>-1</precision>
  2485 + </field>
  2486 + <field>
  2487 + <name>fcno15</name>
  2488 + <type>String</type>
  2489 + <format/>
  2490 + <currency/>
  2491 + <decimal/>
  2492 + <group/>
  2493 + <nullif/>
  2494 + <trim_type>none</trim_type>
  2495 + <length>-1</length>
  2496 + <precision>-1</precision>
  2497 + </field>
  2498 + <field>
  2499 + <name>fcno16</name>
  2500 + <type>String</type>
  2501 + <format/>
  2502 + <currency/>
  2503 + <decimal/>
  2504 + <group/>
  2505 + <nullif/>
  2506 + <trim_type>none</trim_type>
  2507 + <length>-1</length>
  2508 + <precision>-1</precision>
  2509 + </field>
  2510 + <field>
  2511 + <name>fcno17</name>
  2512 + <type>String</type>
  2513 + <format/>
  2514 + <currency/>
  2515 + <decimal/>
  2516 + <group/>
  2517 + <nullif/>
  2518 + <trim_type>none</trim_type>
  2519 + <length>-1</length>
  2520 + <precision>-1</precision>
  2521 + </field>
  2522 + <field>
  2523 + <name>fcno18</name>
  2524 + <type>String</type>
  2525 + <format/>
  2526 + <currency/>
  2527 + <decimal/>
  2528 + <group/>
  2529 + <nullif/>
  2530 + <trim_type>none</trim_type>
  2531 + <length>-1</length>
  2532 + <precision>-1</precision>
  2533 + </field>
  2534 + <field>
  2535 + <name>fcno19</name>
  2536 + <type>String</type>
  2537 + <format/>
  2538 + <currency/>
  2539 + <decimal/>
  2540 + <group/>
  2541 + <nullif/>
  2542 + <trim_type>none</trim_type>
  2543 + <length>-1</length>
  2544 + <precision>-1</precision>
  2545 + </field>
  2546 + <field>
  2547 + <name>fcno20</name>
  2548 + <type>String</type>
  2549 + <format/>
  2550 + <currency/>
  2551 + <decimal/>
  2552 + <group/>
  2553 + <nullif/>
  2554 + <trim_type>none</trim_type>
  2555 + <length>-1</length>
  2556 + <precision>-1</precision>
  2557 + </field>
  2558 + <field>
  2559 + <name>fcno21</name>
  2560 + <type>String</type>
  2561 + <format/>
  2562 + <currency/>
  2563 + <decimal/>
  2564 + <group/>
  2565 + <nullif/>
  2566 + <trim_type>none</trim_type>
  2567 + <length>-1</length>
  2568 + <precision>-1</precision>
  2569 + </field>
  2570 + <field>
  2571 + <name>fcno22</name>
  2572 + <type>String</type>
  2573 + <format/>
  2574 + <currency/>
  2575 + <decimal/>
  2576 + <group/>
  2577 + <nullif/>
  2578 + <trim_type>none</trim_type>
  2579 + <length>-1</length>
  2580 + <precision>-1</precision>
  2581 + </field>
  2582 + <field>
  2583 + <name>fcno23</name>
  2584 + <type>String</type>
  2585 + <format/>
  2586 + <currency/>
  2587 + <decimal/>
  2588 + <group/>
  2589 + <nullif/>
  2590 + <trim_type>none</trim_type>
  2591 + <length>-1</length>
  2592 + <precision>-1</precision>
  2593 + </field>
  2594 + <field>
  2595 + <name>fcno24</name>
  2596 + <type>String</type>
  2597 + <format/>
  2598 + <currency/>
  2599 + <decimal/>
  2600 + <group/>
  2601 + <nullif/>
  2602 + <trim_type>none</trim_type>
  2603 + <length>-1</length>
  2604 + <precision>-1</precision>
  2605 + </field>
  2606 + <field>
  2607 + <name>fcno25</name>
  2608 + <type>String</type>
  2609 + <format/>
  2610 + <currency/>
  2611 + <decimal/>
  2612 + <group/>
  2613 + <nullif/>
  2614 + <trim_type>none</trim_type>
  2615 + <length>-1</length>
  2616 + <precision>-1</precision>
  2617 + </field>
  2618 + <field>
  2619 + <name>fcno26</name>
  2620 + <type>String</type>
  2621 + <format/>
  2622 + <currency/>
  2623 + <decimal/>
  2624 + <group/>
  2625 + <nullif/>
  2626 + <trim_type>none</trim_type>
  2627 + <length>-1</length>
  2628 + <precision>-1</precision>
  2629 + </field>
  2630 + <field>
  2631 + <name>fcno27</name>
  2632 + <type>String</type>
  2633 + <format/>
  2634 + <currency/>
  2635 + <decimal/>
  2636 + <group/>
  2637 + <nullif/>
  2638 + <trim_type>none</trim_type>
  2639 + <length>-1</length>
  2640 + <precision>-1</precision>
  2641 + </field>
  2642 + <field>
  2643 + <name>fcno28</name>
  2644 + <type>String</type>
  2645 + <format/>
  2646 + <currency/>
  2647 + <decimal/>
  2648 + <group/>
  2649 + <nullif/>
  2650 + <trim_type>none</trim_type>
  2651 + <length>-1</length>
  2652 + <precision>-1</precision>
  2653 + </field>
  2654 + <field>
  2655 + <name>fcno29</name>
  2656 + <type>String</type>
  2657 + <format/>
  2658 + <currency/>
  2659 + <decimal/>
  2660 + <group/>
  2661 + <nullif/>
  2662 + <trim_type>none</trim_type>
  2663 + <length>-1</length>
  2664 + <precision>-1</precision>
  2665 + </field>
  2666 + <field>
  2667 + <name>fcno30</name>
  2668 + <type>String</type>
  2669 + <format/>
  2670 + <currency/>
  2671 + <decimal/>
  2672 + <group/>
  2673 + <nullif/>
  2674 + <trim_type>none</trim_type>
  2675 + <length>-1</length>
  2676 + <precision>-1</precision>
  2677 + </field>
  2678 + <field>
  2679 + <name>fcno31</name>
  2680 + <type>String</type>
  2681 + <format/>
  2682 + <currency/>
  2683 + <decimal/>
  2684 + <group/>
  2685 + <nullif/>
  2686 + <trim_type>none</trim_type>
  2687 + <length>-1</length>
  2688 + <precision>-1</precision>
  2689 + </field>
  2690 + <field>
  2691 + <name>fcno32</name>
  2692 + <type>String</type>
  2693 + <format/>
  2694 + <currency/>
  2695 + <decimal/>
  2696 + <group/>
  2697 + <nullif/>
  2698 + <trim_type>none</trim_type>
  2699 + <length>-1</length>
  2700 + <precision>-1</precision>
  2701 + </field>
  2702 + <field>
  2703 + <name>fcno33</name>
  2704 + <type>String</type>
  2705 + <format/>
  2706 + <currency/>
  2707 + <decimal/>
  2708 + <group/>
  2709 + <nullif/>
  2710 + <trim_type>none</trim_type>
  2711 + <length>-1</length>
  2712 + <precision>-1</precision>
  2713 + </field>
  2714 + <field>
  2715 + <name>fcno34</name>
  2716 + <type>String</type>
  2717 + <format/>
  2718 + <currency/>
  2719 + <decimal/>
  2720 + <group/>
  2721 + <nullif/>
  2722 + <trim_type>none</trim_type>
  2723 + <length>-1</length>
  2724 + <precision>-1</precision>
  2725 + </field>
  2726 + <field>
  2727 + <name>fcno35</name>
  2728 + <type>String</type>
  2729 + <format/>
  2730 + <currency/>
  2731 + <decimal/>
  2732 + <group/>
  2733 + <nullif/>
  2734 + <trim_type>none</trim_type>
  2735 + <length>-1</length>
  2736 + <precision>-1</precision>
  2737 + </field>
  2738 + <field>
  2739 + <name>fcno36</name>
  2740 + <type>String</type>
  2741 + <format/>
  2742 + <currency/>
  2743 + <decimal/>
  2744 + <group/>
  2745 + <nullif/>
  2746 + <trim_type>none</trim_type>
  2747 + <length>-1</length>
  2748 + <precision>-1</precision>
  2749 + </field>
  2750 + <field>
  2751 + <name>fcno37</name>
  2752 + <type>String</type>
  2753 + <format/>
  2754 + <currency/>
  2755 + <decimal/>
  2756 + <group/>
  2757 + <nullif/>
  2758 + <trim_type>none</trim_type>
  2759 + <length>-1</length>
  2760 + <precision>-1</precision>
  2761 + </field>
  2762 + <field>
  2763 + <name>fcno38</name>
  2764 + <type>String</type>
  2765 + <format/>
  2766 + <currency/>
  2767 + <decimal/>
  2768 + <group/>
  2769 + <nullif/>
  2770 + <trim_type>none</trim_type>
  2771 + <length>-1</length>
  2772 + <precision>-1</precision>
  2773 + </field>
  2774 + <field>
  2775 + <name>fcno39</name>
  2776 + <type>String</type>
  2777 + <format/>
  2778 + <currency/>
  2779 + <decimal/>
  2780 + <group/>
  2781 + <nullif/>
  2782 + <trim_type>none</trim_type>
  2783 + <length>-1</length>
  2784 + <precision>-1</precision>
  2785 + </field>
  2786 + <field>
  2787 + <name>fcno40</name>
  2788 + <type>String</type>
  2789 + <format/>
  2790 + <currency/>
  2791 + <decimal/>
  2792 + <group/>
  2793 + <nullif/>
  2794 + <trim_type>none</trim_type>
  2795 + <length>-1</length>
  2796 + <precision>-1</precision>
  2797 + </field>
  2798 + <field>
  2799 + <name>fcno41</name>
  2800 + <type>String</type>
  2801 + <format/>
  2802 + <currency/>
  2803 + <decimal/>
  2804 + <group/>
  2805 + <nullif/>
  2806 + <trim_type>none</trim_type>
  2807 + <length>-1</length>
  2808 + <precision>-1</precision>
  2809 + </field>
  2810 + <field>
  2811 + <name>fcno42</name>
  2812 + <type>String</type>
  2813 + <format/>
  2814 + <currency/>
  2815 + <decimal/>
  2816 + <group/>
  2817 + <nullif/>
  2818 + <trim_type>none</trim_type>
  2819 + <length>-1</length>
  2820 + <precision>-1</precision>
  2821 + </field>
  2822 + <field>
  2823 + <name>fcno43</name>
  2824 + <type>String</type>
  2825 + <format/>
  2826 + <currency/>
  2827 + <decimal/>
  2828 + <group/>
  2829 + <nullif/>
  2830 + <trim_type>none</trim_type>
  2831 + <length>-1</length>
  2832 + <precision>-1</precision>
  2833 + </field>
  2834 + <field>
  2835 + <name>fcno44</name>
  2836 + <type>String</type>
  2837 + <format/>
  2838 + <currency/>
  2839 + <decimal/>
  2840 + <group/>
  2841 + <nullif/>
  2842 + <trim_type>none</trim_type>
  2843 + <length>-1</length>
  2844 + <precision>-1</precision>
  2845 + </field>
  2846 + <field>
  2847 + <name>fcno45</name>
  2848 + <type>String</type>
  2849 + <format/>
  2850 + <currency/>
  2851 + <decimal/>
  2852 + <group/>
  2853 + <nullif/>
  2854 + <trim_type>none</trim_type>
  2855 + <length>-1</length>
  2856 + <precision>-1</precision>
  2857 + </field>
  2858 + <field>
  2859 + <name>fcno46</name>
  2860 + <type>String</type>
  2861 + <format/>
  2862 + <currency/>
  2863 + <decimal/>
  2864 + <group/>
  2865 + <nullif/>
  2866 + <trim_type>none</trim_type>
  2867 + <length>-1</length>
  2868 + <precision>-1</precision>
  2869 + </field>
  2870 + <field>
  2871 + <name>fcno47</name>
  2872 + <type>String</type>
  2873 + <format/>
  2874 + <currency/>
  2875 + <decimal/>
  2876 + <group/>
  2877 + <nullif/>
  2878 + <trim_type>none</trim_type>
  2879 + <length>-1</length>
  2880 + <precision>-1</precision>
  2881 + </field>
  2882 + <field>
  2883 + <name>fcno48</name>
  2884 + <type>String</type>
  2885 + <format/>
  2886 + <currency/>
  2887 + <decimal/>
  2888 + <group/>
  2889 + <nullif/>
  2890 + <trim_type>none</trim_type>
  2891 + <length>-1</length>
  2892 + <precision>-1</precision>
  2893 + </field>
  2894 + <field>
  2895 + <name>fcno49</name>
  2896 + <type>String</type>
  2897 + <format/>
  2898 + <currency/>
  2899 + <decimal/>
  2900 + <group/>
  2901 + <nullif/>
  2902 + <trim_type>none</trim_type>
  2903 + <length>-1</length>
  2904 + <precision>-1</precision>
  2905 + </field>
  2906 + <field>
  2907 + <name>fcno50</name>
  2908 + <type>String</type>
  2909 + <format/>
  2910 + <currency/>
  2911 + <decimal/>
  2912 + <group/>
  2913 + <nullif/>
  2914 + <trim_type>none</trim_type>
  2915 + <length>-1</length>
  2916 + <precision>-1</precision>
  2917 + </field>
  2918 + <field>
  2919 + <name>fcno51</name>
  2920 + <type>String</type>
  2921 + <format/>
  2922 + <currency/>
  2923 + <decimal/>
  2924 + <group/>
  2925 + <nullif/>
  2926 + <trim_type>none</trim_type>
  2927 + <length>-1</length>
  2928 + <precision>-1</precision>
  2929 + </field>
  2930 + <field>
  2931 + <name>fcno52</name>
  2932 + <type>String</type>
  2933 + <format/>
  2934 + <currency/>
  2935 + <decimal/>
  2936 + <group/>
  2937 + <nullif/>
  2938 + <trim_type>none</trim_type>
  2939 + <length>-1</length>
  2940 + <precision>-1</precision>
  2941 + </field>
  2942 + <field>
  2943 + <name>fcno53</name>
  2944 + <type>String</type>
  2945 + <format/>
  2946 + <currency/>
  2947 + <decimal/>
  2948 + <group/>
  2949 + <nullif/>
  2950 + <trim_type>none</trim_type>
  2951 + <length>-1</length>
  2952 + <precision>-1</precision>
  2953 + </field>
  2954 + <field>
  2955 + <name>fcno54</name>
  2956 + <type>String</type>
  2957 + <format/>
  2958 + <currency/>
  2959 + <decimal/>
  2960 + <group/>
  2961 + <nullif/>
  2962 + <trim_type>none</trim_type>
  2963 + <length>-1</length>
  2964 + <precision>-1</precision>
  2965 + </field>
  2966 + <field>
  2967 + <name>fcno55</name>
  2968 + <type>String</type>
  2969 + <format/>
  2970 + <currency/>
  2971 + <decimal/>
  2972 + <group/>
  2973 + <nullif/>
  2974 + <trim_type>none</trim_type>
  2975 + <length>-1</length>
  2976 + <precision>-1</precision>
  2977 + </field>
  2978 + <field>
  2979 + <name>fcno56</name>
  2980 + <type>String</type>
  2981 + <format/>
  2982 + <currency/>
  2983 + <decimal/>
  2984 + <group/>
  2985 + <nullif/>
  2986 + <trim_type>none</trim_type>
  2987 + <length>-1</length>
  2988 + <precision>-1</precision>
  2989 + </field>
  2990 + <field>
  2991 + <name>fcno57</name>
  2992 + <type>String</type>
  2993 + <format/>
  2994 + <currency/>
  2995 + <decimal/>
  2996 + <group/>
  2997 + <nullif/>
  2998 + <trim_type>none</trim_type>
  2999 + <length>-1</length>
  3000 + <precision>-1</precision>
  3001 + </field>
  3002 + <field>
  3003 + <name>fcno58</name>
  3004 + <type>String</type>
  3005 + <format/>
  3006 + <currency/>
  3007 + <decimal/>
  3008 + <group/>
  3009 + <nullif/>
  3010 + <trim_type>none</trim_type>
  3011 + <length>-1</length>
  3012 + <precision>-1</precision>
  3013 + </field>
  3014 + <field>
  3015 + <name>fcno59</name>
  3016 + <type>String</type>
  3017 + <format/>
  3018 + <currency/>
  3019 + <decimal/>
  3020 + <group/>
  3021 + <nullif/>
  3022 + <trim_type>none</trim_type>
  3023 + <length>-1</length>
  3024 + <precision>-1</precision>
  3025 + </field>
  3026 + <field>
  3027 + <name>fcno60</name>
  3028 + <type>String</type>
  3029 + <format/>
  3030 + <currency/>
  3031 + <decimal/>
  3032 + <group/>
  3033 + <nullif/>
  3034 + <trim_type>none</trim_type>
  3035 + <length>-1</length>
  3036 + <precision>-1</precision>
  3037 + </field>
  3038 + <field>
  3039 + <name>fcno61</name>
  3040 + <type>String</type>
  3041 + <format/>
  3042 + <currency/>
  3043 + <decimal/>
  3044 + <group/>
  3045 + <nullif/>
  3046 + <trim_type>none</trim_type>
  3047 + <length>-1</length>
  3048 + <precision>-1</precision>
  3049 + </field>
  3050 + <field>
  3051 + <name>fcno62</name>
  3052 + <type>String</type>
  3053 + <format/>
  3054 + <currency/>
  3055 + <decimal/>
  3056 + <group/>
  3057 + <nullif/>
  3058 + <trim_type>none</trim_type>
  3059 + <length>-1</length>
  3060 + <precision>-1</precision>
  3061 + </field>
  3062 + <field>
  3063 + <name>fcno63</name>
  3064 + <type>String</type>
  3065 + <format/>
  3066 + <currency/>
  3067 + <decimal/>
  3068 + <group/>
  3069 + <nullif/>
  3070 + <trim_type>none</trim_type>
  3071 + <length>-1</length>
  3072 + <precision>-1</precision>
  3073 + </field>
  3074 + <field>
  3075 + <name>fcno64</name>
  3076 + <type>String</type>
  3077 + <format/>
  3078 + <currency/>
  3079 + <decimal/>
  3080 + <group/>
  3081 + <nullif/>
  3082 + <trim_type>none</trim_type>
  3083 + <length>-1</length>
  3084 + <precision>-1</precision>
  3085 + </field>
  3086 + <field>
  3087 + <name>fcno65</name>
  3088 + <type>String</type>
  3089 + <format/>
  3090 + <currency/>
  3091 + <decimal/>
  3092 + <group/>
  3093 + <nullif/>
  3094 + <trim_type>none</trim_type>
  3095 + <length>-1</length>
  3096 + <precision>-1</precision>
  3097 + </field>
  3098 + <field>
  3099 + <name>fcno66</name>
  3100 + <type>String</type>
  3101 + <format/>
  3102 + <currency/>
  3103 + <decimal/>
  3104 + <group/>
  3105 + <nullif/>
  3106 + <trim_type>none</trim_type>
  3107 + <length>-1</length>
  3108 + <precision>-1</precision>
  3109 + </field>
  3110 + <field>
  3111 + <name>fcno67</name>
  3112 + <type>String</type>
  3113 + <format/>
  3114 + <currency/>
  3115 + <decimal/>
  3116 + <group/>
  3117 + <nullif/>
  3118 + <trim_type>none</trim_type>
  3119 + <length>-1</length>
  3120 + <precision>-1</precision>
  3121 + </field>
  3122 + <field>
  3123 + <name>fcno68</name>
  3124 + <type>String</type>
  3125 + <format/>
  3126 + <currency/>
  3127 + <decimal/>
  3128 + <group/>
  3129 + <nullif/>
  3130 + <trim_type>none</trim_type>
  3131 + <length>-1</length>
  3132 + <precision>-1</precision>
  3133 + </field>
  3134 + <field>
  3135 + <name>fcno69</name>
  3136 + <type>String</type>
  3137 + <format/>
  3138 + <currency/>
  3139 + <decimal/>
  3140 + <group/>
  3141 + <nullif/>
  3142 + <trim_type>none</trim_type>
  3143 + <length>-1</length>
  3144 + <precision>-1</precision>
  3145 + </field>
  3146 + <field>
  3147 + <name>fcno70</name>
  3148 + <type>String</type>
  3149 + <format/>
  3150 + <currency/>
  3151 + <decimal/>
  3152 + <group/>
  3153 + <nullif/>
  3154 + <trim_type>none</trim_type>
  3155 + <length>-1</length>
  3156 + <precision>-1</precision>
  3157 + </field>
  3158 + </fields>
  3159 + <cluster_schema/>
  3160 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3161 + <xloc>880</xloc>
  3162 + <yloc>365</yloc>
  3163 + <draw>Y</draw>
  3164 + </GUI>
  3165 + </step>
  3166 +
  3167 + <step>
  3168 + <name>&#x67e5;&#x627e;&#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</name>
  3169 + <type>DBLookup</type>
  3170 + <description/>
  3171 + <distribute>Y</distribute>
  3172 + <custom_distribution/>
  3173 + <copies>1</copies>
  3174 + <partitioning>
  3175 + <method>none</method>
  3176 + <schema_name/>
  3177 + </partitioning>
  3178 + <connection>bus_control_variable</connection>
  3179 + <cache>Y</cache>
  3180 + <cache_load_all>Y</cache_load_all>
  3181 + <cache_size>0</cache_size>
  3182 + <lookup>
  3183 + <schema/>
  3184 + <table>bsth_c_stationroute</table>
  3185 + <orderby/>
  3186 + <fail_on_multiple>N</fail_on_multiple>
  3187 + <eat_row_on_failure>N</eat_row_on_failure>
  3188 + <key>
  3189 + <name>xl</name>
  3190 + <field>line</field>
  3191 + <condition>&#x3d;</condition>
  3192 + <name2/>
  3193 + </key>
  3194 + <key>
  3195 + <name>xl_dir</name>
  3196 + <field>directions</field>
  3197 + <condition>&#x3d;</condition>
  3198 + <name2/>
  3199 + </key>
  3200 + <key>
  3201 + <name>endZdType</name>
  3202 + <field>station_mark</field>
  3203 + <condition>&#x3d;</condition>
  3204 + <name2/>
  3205 + </key>
  3206 + <value>
  3207 + <name>station_name</name>
  3208 + <rename>zdzName</rename>
  3209 + <default/>
  3210 + <type>String</type>
  3211 + </value>
  3212 + </lookup>
  3213 + <cluster_schema/>
  3214 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3215 + <xloc>688</xloc>
  3216 + <yloc>86</yloc>
  3217 + <draw>Y</draw>
  3218 + </GUI>
  3219 + </step>
  3220 +
  3221 + <step>
  3222 + <name>&#x67e5;&#x627e;&#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x79f0;</name>
  3223 + <type>DBLookup</type>
  3224 + <description/>
  3225 + <distribute>Y</distribute>
  3226 + <custom_distribution/>
  3227 + <copies>1</copies>
  3228 + <partitioning>
  3229 + <method>none</method>
  3230 + <schema_name/>
  3231 + </partitioning>
  3232 + <connection>bus_control_variable</connection>
  3233 + <cache>Y</cache>
  3234 + <cache_load_all>Y</cache_load_all>
  3235 + <cache_size>0</cache_size>
  3236 + <lookup>
  3237 + <schema/>
  3238 + <table>bsth_c_stationroute</table>
  3239 + <orderby/>
  3240 + <fail_on_multiple>N</fail_on_multiple>
  3241 + <eat_row_on_failure>N</eat_row_on_failure>
  3242 + <key>
  3243 + <name>xl</name>
  3244 + <field>line</field>
  3245 + <condition>&#x3d;</condition>
  3246 + <name2/>
  3247 + </key>
  3248 + <key>
  3249 + <name>xl_dir</name>
  3250 + <field>directions</field>
  3251 + <condition>&#x3d;</condition>
  3252 + <name2/>
  3253 + </key>
  3254 + <key>
  3255 + <name>startZdType</name>
  3256 + <field>station_mark</field>
  3257 + <condition>&#x3d;</condition>
  3258 + <name2/>
  3259 + </key>
  3260 + <value>
  3261 + <name>station_name</name>
  3262 + <rename>qdzName</rename>
  3263 + <default/>
  3264 + <type>String</type>
  3265 + </value>
  3266 + </lookup>
  3267 + <cluster_schema/>
  3268 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3269 + <xloc>553</xloc>
  3270 + <yloc>86</yloc>
  3271 + <draw>Y</draw>
  3272 + </GUI>
  3273 + </step>
  3274 +
  3275 + <step>
  3276 + <name>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</name>
  3277 + <type>ScriptValueMod</type>
  3278 + <description/>
  3279 + <distribute>Y</distribute>
  3280 + <custom_distribution/>
  3281 + <copies>1</copies>
  3282 + <partitioning>
  3283 + <method>none</method>
  3284 + <schema_name/>
  3285 + </partitioning>
  3286 + <compatible>N</compatible>
  3287 + <optimizationLevel>9</optimizationLevel>
  3288 + <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>
  3289 + <jsScript_name>Script 1</jsScript_name>
  3290 + <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var startZdType &#x3d; &#x27;B&#x27;&#x3b; &#x2f;&#x2f; &#x8d77;&#x70b9;&#x7ad9;&#x7ad9;&#x70b9;&#x7c7b;&#x578b;&#x6807;&#x8bc6;&#x522b;&#xa;var endZdType &#x3d; &#x27;E&#x27;&#x3b; &#x2f;&#x2f; &#x7ec8;&#x70b9;&#x7ad9;&#x7ad9;&#x70b9;&#x7c7b;&#x578b;&#x6807;&#x8bc6;</jsScript_script>
  3291 + </jsScript> </jsScripts> <fields> <field> <name>startZdType</name>
  3292 + <rename>startZdType</rename>
  3293 + <type>String</type>
  3294 + <length>-1</length>
  3295 + <precision>-1</precision>
  3296 + <replace>N</replace>
  3297 + </field> <field> <name>endZdType</name>
  3298 + <rename>endZdType</rename>
  3299 + <type>String</type>
  3300 + <length>-1</length>
  3301 + <precision>-1</precision>
  3302 + <replace>N</replace>
  3303 + </field> </fields> <cluster_schema/>
  3304 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3305 + <xloc>391</xloc>
  3306 + <yloc>87</yloc>
  3307 + <draw>Y</draw>
  3308 + </GUI>
  3309 + </step>
  3310 +
  3311 + <step>
  3312 + <name>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</name>
  3313 + <type>GetVariable</type>
  3314 + <description/>
  3315 + <distribute>Y</distribute>
  3316 + <custom_distribution/>
  3317 + <copies>1</copies>
  3318 + <partitioning>
  3319 + <method>none</method>
  3320 + <schema_name/>
  3321 + </partitioning>
  3322 + <fields>
  3323 + <field>
  3324 + <name>xlid_</name>
  3325 + <variable>&#x24;&#x7b;xlid&#x7d;</variable>
  3326 + <type>Integer</type>
  3327 + <format/>
  3328 + <currency/>
  3329 + <decimal/>
  3330 + <group/>
  3331 + <length>-1</length>
  3332 + <precision>-1</precision>
  3333 + <trim_type>none</trim_type>
  3334 + </field>
  3335 + <field>
  3336 + <name>ttid_</name>
  3337 + <variable>&#x24;&#x7b;ttid&#x7d;</variable>
  3338 + <type>Number</type>
  3339 + <format/>
  3340 + <currency/>
  3341 + <decimal/>
  3342 + <group/>
  3343 + <length>-1</length>
  3344 + <precision>-1</precision>
  3345 + <trim_type>none</trim_type>
  3346 + </field>
  3347 + </fields>
  3348 + <cluster_schema/>
  3349 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3350 + <xloc>45</xloc>
  3351 + <yloc>189</yloc>
  3352 + <draw>Y</draw>
  3353 + </GUI>
  3354 + </step>
  3355 +
  3356 + <step>
  3357 + <name>&#x8868;&#x8f93;&#x5165;</name>
  3358 + <type>TableInput</type>
  3359 + <description/>
  3360 + <distribute>Y</distribute>
  3361 + <custom_distribution/>
  3362 + <copies>1</copies>
  3363 + <partitioning>
  3364 + <method>none</method>
  3365 + <schema_name/>
  3366 + </partitioning>
  3367 + <connection>bus_control_variable</connection>
  3368 + <sql>select &#xa;t.id as id&#xa;, concat&#x28;g.id, &#x27;_&#x27;, g.lp_name&#x29; as lp&#xa;, g.xl as xl&#xa;, qdz&#xa;, zdz&#xa;, tcc&#xa;, fcsj&#xa;, jhlc&#xa;, bc_type &#xa;, bcs&#xa;, fcno&#xa;, xl_dir&#xa;, isfb&#xa;from bsth_c_s_ttinfo_detail t left join &#xa;bsth_c_s_gbi g on t.lp &#x3d; g.id &#xa;where &#xa;g.xl &#x3d; &#x3f; and&#xa;t.ttinfo &#x3d; &#x3f; &#xa;order by t.bcs asc</sql>
  3369 + <limit>0</limit>
  3370 + <lookup>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</lookup>
  3371 + <execute_each_row>N</execute_each_row>
  3372 + <variables_active>Y</variables_active>
  3373 + <lazy_conversion_active>N</lazy_conversion_active>
  3374 + <cluster_schema/>
  3375 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3376 + <xloc>130</xloc>
  3377 + <yloc>85</yloc>
  3378 + <draw>Y</draw>
  3379 + </GUI>
  3380 + </step>
  3381 +
  3382 + <step>
  3383 + <name>&#x8ba1;&#x7b97;&#x53d1;&#x8f66;&#x7ad9;&#x540d;</name>
  3384 + <type>ScriptValueMod</type>
  3385 + <description/>
  3386 + <distribute>Y</distribute>
  3387 + <custom_distribution/>
  3388 + <copies>1</copies>
  3389 + <partitioning>
  3390 + <method>none</method>
  3391 + <schema_name/>
  3392 + </partitioning>
  3393 + <compatible>N</compatible>
  3394 + <optimizationLevel>9</optimizationLevel>
  3395 + <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>
  3396 + <jsScript_name>Script 1</jsScript_name>
  3397 + <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var fczdName &#x3d; null&#x3b; &#x2f;&#x2f; &#x53d1;&#x8f66;&#x7ad9;&#x70b9;&#x540d;&#x5b57;&#xa;if &#x28;bc_type &#x3d;&#x3d; &#x22;in&#x22;&#x29; &#x7b;&#xa; fczdName &#x3d; &#x22;&#x8fdb;&#x573a;&#x22;&#x3b;&#xa;&#x7d; else if &#x28;bc_type &#x3d;&#x3d; &#x22;out&#x22;&#x29; &#x7b;&#xa; fczdName &#x3d; &#x22;&#x51fa;&#x573a;&#x22;&#x3b;&#xa;&#x7d; else &#x7b;&#xa; fczdName &#x3d; qdzName&#x3b;&#xa;&#x7d;</jsScript_script>
  3398 + </jsScript> </jsScripts> <fields> <field> <name>fczdName</name>
  3399 + <rename>fczdName</rename>
  3400 + <type>String</type>
  3401 + <length>-1</length>
  3402 + <precision>-1</precision>
  3403 + <replace>N</replace>
  3404 + </field> </fields> <cluster_schema/>
  3405 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3406 + <xloc>550</xloc>
  3407 + <yloc>276</yloc>
  3408 + <draw>Y</draw>
  3409 + </GUI>
  3410 + </step>
  3411 +
  3412 + <step>
  3413 + <name>&#x8fc7;&#x6ee4;&#x8bb0;&#x5f55;</name>
  3414 + <type>FilterRows</type>
  3415 + <description/>
  3416 + <distribute>Y</distribute>
  3417 + <custom_distribution/>
  3418 + <copies>1</copies>
  3419 + <partitioning>
  3420 + <method>none</method>
  3421 + <schema_name/>
  3422 + </partitioning>
  3423 +<send_true_to>&#x6b63;&#x5e38;&#x73ed;&#x6b21;&#x7ad9;&#x70b9;&#x67e5;&#x8be2;&#x7528;&#x6570;&#x636e;</send_true_to>
  3424 +<send_false_to>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</send_false_to>
  3425 + <compare>
  3426 +<condition>
  3427 + <negated>N</negated>
  3428 + <leftvalue>bc_type</leftvalue>
  3429 + <function>&#x3d;</function>
  3430 + <rightvalue/>
  3431 + <value><name>constant</name><type>String</type><text>normal</text><length>-1</length><precision>-1</precision><isnull>N</isnull><mask/></value> </condition>
  3432 + </compare>
  3433 + <cluster_schema/>
  3434 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3435 + <xloc>248</xloc>
  3436 + <yloc>87</yloc>
  3437 + <draw>Y</draw>
  3438 + </GUI>
  3439 + </step>
  3440 +
  3441 + <step>
  3442 + <name>&#x8fdb;&#x573a;&#x51fa;&#x573a;&#x73ed;&#x6b21;&#x67e5;&#x8be2;&#x7528;&#x7684;&#x6570;&#x636e;</name>
  3443 + <type>ScriptValueMod</type>
  3444 + <description/>
  3445 + <distribute>Y</distribute>
  3446 + <custom_distribution/>
  3447 + <copies>1</copies>
  3448 + <partitioning>
  3449 + <method>none</method>
  3450 + <schema_name/>
  3451 + </partitioning>
  3452 + <compatible>N</compatible>
  3453 + <optimizationLevel>9</optimizationLevel>
  3454 + <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>
  3455 + <jsScript_name>Script 1</jsScript_name>
  3456 + <jsScript_script>&#x2f;&#x2f;Script here&#xa;&#xa;var qdzName &#x3d; null&#x3b; &#x2f;&#x2f; &#x8d77;&#x70b9;&#x7ad9;&#x540d;&#x5b57;&#xa;var zdzName &#x3d; null&#x3b; &#x2f;&#x2f; &#x7ec8;&#x70b9;&#x7ad9;&#x540d;&#x5b57;</jsScript_script>
  3457 + </jsScript> </jsScripts> <fields> <field> <name>qdzName</name>
  3458 + <rename>qdzName</rename>
  3459 + <type>String</type>
  3460 + <length>-1</length>
  3461 + <precision>-1</precision>
  3462 + <replace>N</replace>
  3463 + </field> <field> <name>zdzName</name>
  3464 + <rename>zdzName</rename>
  3465 + <type>String</type>
  3466 + <length>-1</length>
  3467 + <precision>-1</precision>
  3468 + <replace>N</replace>
  3469 + </field> </fields> <cluster_schema/>
  3470 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  3471 + <xloc>250</xloc>
  3472 + <yloc>188</yloc>
  3473 + <draw>Y</draw>
  3474 + </GUI>
  3475 + </step>
  3476 +
  3477 + <step_error_handling>
  3478 + </step_error_handling>
  3479 + <slave-step-copy-partition-distribution>
  3480 +</slave-step-copy-partition-distribution>
  3481 + <slave_transformation>N</slave_transformation>
  3482 +
  3483 +</transformation>
src/main/resources/static/pages/base/stationroute/js/stationroute-ajax-getdata.js
@@ -168,6 +168,13 @@ var GetAjaxData = function(){ @@ -168,6 +168,13 @@ var GetAjaxData = function(){
168 }, 168 },
169 169
170 // 查询路段信息 170 // 查询路段信息
  171 + getStationRouteInfo : function(lineId,direction,callback) {
  172 + $get('/stationroute/all',{'line.id_eq' : lineId , 'directions_eq' : direction},function(resultdata) {
  173 + callback && callback(resultdata);
  174 + });
  175 + },
  176 +
  177 + // 查询路段信息
171 getSectionRouteInfo : function(lineId,direction,callback) { 178 getSectionRouteInfo : function(lineId,direction,callback) {
172 $get('/sectionroute/findSection',{'line.id_eq' : lineId , 'directions_eq' : direction},function(resultdata) { 179 $get('/sectionroute/findSection',{'line.id_eq' : lineId , 'directions_eq' : direction},function(resultdata) {
173 callback && callback(resultdata); 180 callback && callback(resultdata);
src/main/resources/static/pages/base/stationroute/js/stationroute-list-events.js
@@ -122,6 +122,27 @@ $(function(){ @@ -122,6 +122,27 @@ $(function(){
122 });*/ 122 });*/
123 }); 123 });
124 124
  125 + $('#wrenchUpDis').on('click',function() {
  126 + var Line = LineObj.getLineObj();
  127 + GetAjaxData.getStation(Line.id,directionUpValue,function(rd) {
  128 + // 加载其它规划选择弹出层mobal页面
  129 + $.get('tzzj.html', function(m){
  130 + $(pjaxContainer).append(m);
  131 + $('#tzzj_mobal').trigger('tzzjMobal.show', [WorldsBMap,GetAjaxData,directionUpValue,Line.id,PublicFunctions,rd[0].children[0].children]);
  132 + });
  133 + });
  134 + })
  135 +
  136 + $('#wrenchDownDis').on('click',function() {
  137 + var Line = LineObj.getLineObj();
  138 + GetAjaxData.getStation(Line.id,directionDownValue,function(rd) {
  139 + // 加载其它规划选择弹出层mobal页面
  140 + $.get('tzzj.html', function(m){
  141 + $(pjaxContainer).append(m);
  142 + $('#tzzj_mobal').trigger('tzzjMobal.show', [WorldsBMap,GetAjaxData,directionDownValue,Line.id,PublicFunctions,rd[0].children[0].children]);
  143 + });
  144 + });
  145 + })
125 146
126 $('#quoteDown').on('click',function() { 147 $('#quoteDown').on('click',function() {
127 // 弹出提示层. 148 // 弹出提示层.
src/main/resources/static/pages/base/stationroute/list.html
@@ -63,6 +63,10 @@ @@ -63,6 +63,10 @@
63 </li> 63 </li>
64 <li class="divider"> </li> 64 <li class="divider"> </li>
65 <li> 65 <li>
  66 + <a href="javascript:;" id="wrenchUpDis"><i class="fa fa-wrench"></i> 设置上行站距</a>
  67 + </li>
  68 + <li class="divider"> </li>
  69 + <li>
66 <a href="javascript:;" id="quoteDown"><i class="fa fa-long-arrow-down"></i> 引用下行路段</a> 70 <a href="javascript:;" id="quoteDown"><i class="fa fa-long-arrow-down"></i> 引用下行路段</a>
67 </li> 71 </li>
68 <!-- <li> 72 <!-- <li>
@@ -154,6 +158,10 @@ @@ -154,6 +158,10 @@
154 </li> 158 </li>
155 <li class="divider"> </li> 159 <li class="divider"> </li>
156 <li> 160 <li>
  161 + <a href="javascript:;" id="wrenchDownDis"><i class="fa fa-wrench"></i> 设置下行站距</a>
  162 + </li>
  163 + <li class="divider"> </li>
  164 + <li>
157 <a href="javascript:;" id="quoteUp"><i class="fa fa-long-arrow-up"></i> 引用上行路段</a> 165 <a href="javascript:;" id="quoteUp"><i class="fa fa-long-arrow-up"></i> 引用上行路段</a>
158 </li> 166 </li>
159 <!-- <li> 167 <!-- <li>
src/main/resources/static/pages/base/stationroute/tzzj.html 0 → 100644
  1 +<!-- 调整站距 -->
  2 +<div class="modal fade" id="tzzj_mobal" tabindex="-1" role="basic" aria-hidden="true">
  3 + <div class="modal-dialog">
  4 + <div class="modal-content">
  5 + <div class="modal-header">
  6 + <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  7 + <h4 class="modal-title">调整站距 </h4>
  8 + </div>
  9 + <div class="modal-body">
  10 + <form class="form-horizontal" action="/" method="post" id="tzbcForm" role="form">
  11 + <!-- alert-danger 组件START -->
  12 + <div class="alert alert-danger display-hide" id="tzbcAlert">
  13 + <button class="close" data-close="alert"></button>
  14 + 您的输入有误,请检查下面的输入项
  15 + </div>
  16 + <div class="portlet-body">
  17 + <div class="table-container" style="margin-top: 10px">
  18 + <table class="table table-striped table-bordered table-hover table-checkable" id="datatable_bctz">
  19 + <thead>
  20 + <tr role="row" class="heading">
  21 + <th width="1%"></th>
  22 + <th width="33%">站点序号</th>
  23 + <th width="33%">站点路由</th>
  24 + <th width="33%">站距(米/单位)</th>
  25 + </tr>
  26 + </thead>
  27 + <tbody></tbody>
  28 + </table>
  29 + </div>
  30 + </div>
  31 + </form>
  32 + </div>
  33 + <div class="modal-footer">
  34 + <button type="button" class="btn default" data-dismiss="modal">取消</button>
  35 + <button type="button" class="btn btn-primary" id="tzbcnext">保存</button>
  36 + </div>
  37 + </div>
  38 + </div>
  39 +</div>
  40 +<script type="text/html" id="tzzj_temp">
  41 +{{each list as obj i }}
  42 + <tr role="row" class="filter">
  43 + <td></td>
  44 + <td>
  45 + <!--<input type="text" readonly class="form-control form-filter input-sm" value="{{i+1}}">-->
  46 + {{i+1}}
  47 + </td>
  48 + <td>
  49 + <!-- <input type="text" readonly class="form-control form-filter input-sm" name="station_{{i+1}}" value="{{obj.name}}">-->
  50 + {{obj.name}}
  51 + </td>
  52 + <td>
  53 + <input type="text" class="form-control form-filter input-sm" name="dis_{{obj.stationRouteId}}" value="{{obj.stationRouteDistances * 1000}}">
  54 + </td>
  55 + </tr>
  56 +{{/each}}
  57 +{{if list.length == 0}}
  58 + <tr>
  59 + <td colspan=4><h6 class="muted">没有找到相关数据</h6></td>
  60 + </tr>
  61 + {{/if}}
  62 +</script>
  63 +<script type="text/javascript">
  64 +$('#tzzj_mobal').on('tzzjMobal.show', function(e,map,gd,dir,lineid,pf,rd){
  65 + setTimeout(function(){
  66 + // 加载延迟200毫秒显示mobal
  67 + $('#tzzj_mobal').modal({show : true,backdrop: 'static', keyboard: false});
  68 + },200);
  69 + // 当模态框对用户可见时触发(将等待 CSS 过渡效果完成)。
  70 + $('#tzzj_mobal').on('show.bs.modal', function () {
  71 + console.log(rd);
  72 + // 把数据填充到模版中
  73 + var tbodyHtml = template('tzzj_temp',{list:rd});
  74 + // 把渲染好的模版html文本追加到表格中
  75 + $('#datatable_bctz tbody').html(tbodyHtml);
  76 + });
  77 + // 获取表单元素
  78 + var form = $('#tzbcForm');
  79 + // 错误提示元素
  80 + var tzbcAlert = $('#tzbcAlert', form);
  81 + // 下一步点击事件
  82 + $('#tzbcnext').on('click', function() {
  83 + form.submit();// 表单提交
  84 + });
  85 + // 表单验证
  86 + form.validate({
  87 + errorElement : 'span',
  88 + errorClass : 'help-block help-block-error',
  89 + focusInvalid : false,
  90 + rules : {
  91 + },
  92 + invalidHandler : function(event, validator) {
  93 + tzbcAlert.show();
  94 + App.scrollTo(reladplusname, -200);
  95 + },
  96 + highlight : function(element) {
  97 + $(element).closest('.form-group').addClass('has-error');
  98 + },
  99 + unhighlight : function(element) {
  100 + $(element).closest('.form-group').removeClass('has-error');
  101 + },
  102 + success : function(label) {
  103 + label.closest('.form-group').removeClass('has-error');
  104 + },
  105 + submitHandler : function(f) {
  106 + // 获取表单内容,并序列化
  107 + var params = form.serializeJSON();
  108 + $post('/stationroute/upddis',params,function(data) {
  109 + // 隐藏错误提示
  110 + tzbcAlert.hide();
  111 + // 隐藏 reladplus_mobal 弹出层
  112 + $('#tzzj_mobal').modal('hide');
  113 + if(data.status=='SUCCESS') {
  114 + // 弹出添加成功提示消息
  115 + layer.msg('修改成功...');
  116 + map.clearMarkAndOverlays();
  117 + // 刷新左边树
  118 + pf.resjtreeDate(lineid,dir);
  119 + pf.resjtreeDate(lineid,dir);
  120 + /** 查询上行路段信息 @param:<Line.id:线路Id;0:上行> @return:data:路段数据 */
  121 + gd.getSectionRouteInfo(lineid,dir,function(data) {
  122 + /** 在地图上画出线路走向 @param:<Line.id:线路Id;0:上行;data:路段数据> */
  123 + pf.linePanlThree(lineid,data,dir);
  124 + });
  125 + }else {
  126 + // 弹出添加失败提示消息
  127 + layer.msg('修改失败...');
  128 + }
  129 + });
  130 + }
  131 + });
  132 +});
  133 +</script>
0 \ No newline at end of file 134 \ No newline at end of file
src/main/resources/static/pages/base/timesmodel/add.html
@@ -9,7 +9,6 @@ @@ -9,7 +9,6 @@
9 width: 69%; 9 width: 69%;
10 } 10 }
11 </style> 11 </style>
12 -  
13 <!-- 片段标题 START --> 12 <!-- 片段标题 START -->
14 <div class="page-head"> 13 <div class="page-head">
15 <div class="page-title"> 14 <div class="page-title">
@@ -17,8 +16,6 @@ @@ -17,8 +16,6 @@
17 </div> 16 </div>
18 </div> 17 </div>
19 <!-- 片段标题 END --> 18 <!-- 片段标题 END -->
20 -  
21 -  
22 <!-- 线路信息导航栏组件 START --> 19 <!-- 线路信息导航栏组件 START -->
23 <ul class="page-breadcrumb breadcrumb"> 20 <ul class="page-breadcrumb breadcrumb">
24 <li><a href="/pages/home.html" data-pjax>首页</a> <i class="fa fa-circle"></i></li> 21 <li><a href="/pages/home.html" data-pjax>首页</a> <i class="fa fa-circle"></i></li>
@@ -26,8 +23,6 @@ @@ -26,8 +23,6 @@
26 <li><span class="active">时刻表明细制作建模</span></li> 23 <li><span class="active">时刻表明细制作建模</span></li>
27 </ul> 24 </ul>
28 <!-- 线路信息导航栏组件 END --> 25 <!-- 线路信息导航栏组件 END -->
29 -  
30 -  
31 <div class="portlet light bordered" id="form-wizard-info"> 26 <div class="portlet light bordered" id="form-wizard-info">
32 <div class="portlet-title"> 27 <div class="portlet-title">
33 <div class="caption"> 28 <div class="caption">
@@ -44,7 +39,6 @@ @@ -44,7 +39,6 @@
44 </div> 39 </div>
45 </div> 40 </div>
46 <div class="portlet-body form"> 41 <div class="portlet-body form">
47 -  
48 <!-- START FORM 表单容器 --> 42 <!-- START FORM 表单容器 -->
49 <form class="form-horizontal" id="submit_argus_form" action="/" method="POST" novalidate="novalidate"> 43 <form class="form-horizontal" id="submit_argus_form" action="/" method="POST" novalidate="novalidate">
50 <div class="form-wizard"> 44 <div class="form-wizard">
@@ -94,7 +88,6 @@ @@ -94,7 +88,6 @@
94 <button class="close" data-dismiss="alert"></button> 88 <button class="close" data-dismiss="alert"></button>
95 验证成功! 89 验证成功!
96 </div> 90 </div>
97 -  
98 <!-- 线路名称 --> 91 <!-- 线路名称 -->
99 <div class="tab-pane active" id="tab1"> 92 <div class="tab-pane active" id="tab1">
100 <h3 class="block"> 选择时刻表 </h3> 93 <h3 class="block"> 选择时刻表 </h3>
src/main/resources/static/pages/base/timesmodel/js/add-form-wizard.js
1 1
2 /** 2 /**
3 - * 表单的导航向导、验证、提交  
4 - * 3 + * @description : (TODO) 表单的导航向导、验证、提交
5 */ 4 */
6 5
7 var SKBFormWizard = function() { 6 var SKBFormWizard = function() {
  7 +
  8 + var bxrcGs = [ {'type':'六工一休','hoursV':6.66, 'minueV':'6:40'},
  9 + {'type':'五工一休','hoursV':6.85, 'minueV':'6:51'},
  10 + {'type':'四工一休','hoursV':7.14, 'minueV':'7:08'},
  11 + {'type':'三工一休','hoursV':7.61, 'minueV':'7:37'},
  12 + {'type':'二工一休','hoursV':8.57, 'minueV':'8:34'},
  13 + {'type':'一工一休','hoursV':11.42, 'minueV':'11:25'},
  14 + {'type':'五工二休','hoursV':7.99, 'minueV':'8:00'},
  15 + {'type':'无工休', 'hoursV':5.43, 'minueV':'5:43'}];
  16 +
  17 + /**
  18 + * @description : (TODO) 获取停站时间.
  19 + *
  20 + * @param [o--当前班次对象;d--班次数组对象;sj--当前班次时间]
  21 + *
  22 + * @return 返回相邻班次的停站时间.
  23 + * */
  24 + function gettzsj(o,d,sj) {
  25 + // 定义停站时间.
  26 + var tzsj = 0;
  27 + // 变量班次数组对象.
  28 + for(var i = 0 ;i<d.length;i++) {
  29 + // 判断是否为同一个路牌.
  30 + if(o.lp.lpNo == d[i].lp.lpNo && o.lp.id == d[i].lp.id) {
  31 + // 判断是否为当前班次的下一个班次.
  32 + if(d[i].fcno - o.fcno ==1){
  33 + // 计算停站时间.
  34 + tzsj = (strToTime(d[i].fcsj) -strToTime(sj)) / 60000;
  35 + continue;
  36 + }
  37 + }
  38 + }
  39 + // 返回停站时间.
  40 + return tzsj;
  41 + }
  42 +
  43 + /**
  44 + * @description : (TODO) 是否切换线路值转换.
  45 + *
  46 + * @param [d--是否切换线路原始值].
  47 + *
  48 + * @return 返回一个是否切换线路值的转换.
  49 + * */
  50 + function isSwitchXlTodm(d) {
  51 + var rstr = 0;
  52 + if(d)
  53 + rstr = 1;
  54 + return rstr;
  55 + }
  56 +
  57 + /**
  58 + * @description : (TODO) 是否分班值转换.
  59 + *
  60 + * @param [d--是否分班原始值].
  61 + *
  62 + * @return 返回一个是否分班值的转换.
  63 + * */
  64 + function isfbTodm(b) {
  65 + var rstr = 0;
  66 + if(b)
  67 + rstr = 1;
  68 + return rstr;
  69 + }
  70 +
  71 + /**
  72 + * @description : (TODO) 获取某个班次的到达时间字符串.
  73 + *
  74 + * @param [tStr--发车时间格式字符串;bcsj--班次历时].
  75 + *
  76 + * @return 返回一个某个班次的到达时间字符串.
  77 + * */
  78 + function getddsj(tStr,bcsj) {
  79 + // 定义当前时间对象.
  80 + var date = new Date();
  81 + // 分割字符串.
  82 + var _str = tStr.split(':');
  83 + // 设值小时.
  84 + date.setHours(parseInt(_str[0]));
  85 + // 设值分钟.
  86 + date.setMiutes(parseInt(_str[1]) + bcsj);
  87 + // 返回到达时间字符串.
  88 + return getTimeStr(date);
  89 + }
  90 +
  91 + /**
  92 + * @description : (TODO) 时间点格式字符串转时间对象.
  93 + *
  94 + * @param [t--时间点格式字符串]
  95 + *
  96 + * @return 返回一个时间点格式字符串转时间对象.
  97 + * */
  98 + var strToTime = function(t) {
  99 + // 定义当前时间对象.
  100 + var d = new Date;
  101 + // 判断是否为空.
  102 + if(t) {
  103 + // 分割字符串.
  104 + var _str = t.split(':');
  105 + // 设值小时.
  106 + d.setHours(parseInt(_str[0]));
  107 + // 设值分钟.
  108 + d.setMinutes(parseInt(_str[1]));
  109 + }
  110 + // 返回一个时间点格式字符串转时间对象.
  111 + return d;
  112 + }
  113 +
  114 + /**
  115 + * @description : (TODO) 时间对象转时间点格式字符串.
  116 + *
  117 + * @param [t--时间对象]
  118 + *
  119 + * @return 返回一个时间对象转时间点格式字符串.
  120 + * */
  121 + function getTimeStr(t) {
  122 + // 定义返回值.
  123 + var _str = '';
  124 + // 判断是否为空.
  125 + if(t) {
  126 + // 重新赋值.
  127 + _str = ((t.getHours()<10? '0' + t.getHours() : t.getHours()) == '00' ? '24' :(t.getHours()<10? '0' + t.getHours() : t.getHours()))
  128 + +':'
  129 + +(t.getMinutes()<10? '0' + t.getMinutes() : t.getMinutes());
  130 + }
  131 + // 返回时间对象转时间点格式字符串.
  132 + return _str;
  133 + }
  134 +
  135 + /**
  136 + * @description : (TODO) 方向值转换.
  137 + *
  138 + * @param [d--方向原始值].
  139 + *
  140 + * @return 返回一个方向值转换.
  141 + * */
  142 + function dmToDh(t) {
  143 + // 定义返回值.
  144 + var reslStr = '';
  145 + // 上行.
  146 + if(t=='0')
  147 + reslStr = 'relationshipGraph-up';
  148 + // 下行.
  149 + else if(t=='1')
  150 + reslStr = 'relationshipGraph-down';
  151 + // 返回一个方向值转换.
  152 + return reslStr;
  153 + }
  154 +
  155 + /**
  156 + * @description : (TODO) 获取线路标准详情.
  157 + *
  158 + * @param [lineId--线路ID;cb--回调函数].
  159 + *
  160 + * @return 返回线路标准详情.
  161 + *
  162 + * @status OK.
  163 + * */
8 var getLineInfo = function(lineId,cb) { 164 var getLineInfo = function(lineId,cb) {
9 - // 根据线路标准ID查询详情 165 + // 1、get异步请求.根据线路ID查询详情.
10 $get('/lineInformation',{'line.id_eq':lineId},function(result) { 166 $get('/lineInformation',{'line.id_eq':lineId},function(result) {
  167 + // 2、返回线路标准详情.
11 return cb && cb(result); 168 return cb && cb(result);
12 }); 169 });
13 } 170 }
  171 +
  172 + /**
  173 + * @description : (TODO) 获取所有的停车场详情.
  174 + *
  175 + * @param [cb--回调函数].
  176 + *
  177 + * @return 返回所有的停车场详情.
  178 + *
  179 + * @status OK.
  180 + * */
14 var gettccInfo = function (cb) { 181 var gettccInfo = function (cb) {
  182 + // 1、get异步请求.获取所有的停车场详情.
15 $get('/carpark/all',null, function(cd){ 183 $get('/carpark/all',null, function(cd){
  184 + // 2、返回所有的停车场详情.
16 return cb && cb(cd); 185 return cb && cb(cd);
17 }); 186 });
18 } 187 }
19 188
  189 + /**
  190 + * @description : (TODO) 时间格式字符串转时间对象.
  191 + *
  192 + * @param [time--时间格式字符串].
  193 + *
  194 + * @return 返回一个时间对象.
  195 + *
  196 + * @status OK.
  197 + * */
20 var getDateTime = function(time) { 198 var getDateTime = function(time) {
  199 + // 1、定义一个时间对象.
21 var dateTime = new Date(); 200 var dateTime = new Date();
  201 + // 2、判断参数是否为空或者为undefined.
22 if(time !=null && time !='' && typeof(time) !='undefined') { 202 if(time !=null && time !='' && typeof(time) !='undefined') {
  203 + // 3、给时间对象重新赋值.
23 dateTime = new Date(Date.parse(time.replace(/-/g, "/"))); 204 dateTime = new Date(Date.parse(time.replace(/-/g, "/")));
24 } 205 }
  206 + // 4、返回时间对象.
25 return dateTime; 207 return dateTime;
26 } 208 }
27 209
28 - 210 + /**
  211 + * @description : (TODO) 客流方式填充表单时.根据表单参数封装时间段内的车辆数.
  212 + *
  213 + * @param : [map--表单参数]
  214 + *
  215 + * @returns 返回一个根据表单参数封装时间段内的车辆数数组.
  216 + *
  217 + * @status OK.
  218 + * */
29 function getsjdArr(map) { 219 function getsjdArr(map) {
  220 + // 1、获取营运的开始与结束时间点.
30 var seMap = getStartAndEndDate(map); 221 var seMap = getStartAndEndDate(map);
31 - return [{'num':0,'time':seMap.s + '-' + map.earlyStartTime},  
32 - {'num':0,'time':map.earlyStartTime + '-' + map.earlyEndTime},  
33 - {'num':0,'time':map.earlyEndTime + '-' + map.lateStartTime},  
34 - {'num':0,'time':map.lateStartTime + '-' + map.lateEndTime},  
35 - {'num':0,'time':map.lateEndTime + '-' + seMap.e}]; 222 + // 2、返回一个根据表单参数封装时间段内的车辆数数组.
  223 + return [{'num':0,'time':seMap.s + '-' + map.earlyStartTime},// 早高峰之前时间段内的车辆.
  224 + {'num':0,'time':map.earlyStartTime + '-' + map.earlyEndTime}, // 早高峰时间段内的车辆.
  225 + {'num':0,'time':map.earlyEndTime + '-' + map.lateStartTime},// 高峰之间时间段内的车辆
  226 + {'num':0,'time':map.lateStartTime + '-' + map.lateEndTime},// 晚高峰时间段内的车辆.
  227 + {'num':0,'time':map.lateEndTime + '-' + seMap.e}];// 晚高峰之后时间段内的车辆.
36 } 228 }
37 -  
38 - function getStartAndEndDate(map) {  
39 - return {'s':getMinDate(map.line.startStationFirstTime,map.line.endStationFirstTime),  
40 - 'e':getMaxDate(map.line.startStationEndTime,map.line.endStationEndTime)}  
41 - }  
42 - 229 +
  230 + /**
  231 + * @description : (TODO) 获取最小时间(字符串).
  232 + *
  233 + * @param [d1--时间1;d2--时间2].
  234 + *
  235 + * @return 返回一个最小时间(字符串).
  236 + *
  237 + * @status OK.
  238 + * */
43 function getMinDate(d1,d2) { 239 function getMinDate(d1,d2) {
  240 + // 1、定义返回字符串.
44 var str = ''; 241 var str = '';
  242 + // 2、判断时间大小.
45 if(strToTime(d1)>strToTime(d2)) 243 if(strToTime(d1)>strToTime(d2))
46 str = d2; 244 str = d2;
47 else 245 else
48 str = d1; 246 str = d1;
  247 + // 3、返回最小时间(字符串).
49 return str; 248 return str;
50 } 249 }
51 250
52 - function strToTime(t) {  
53 - var d = new Date();  
54 - if(t) {  
55 - var _str = t.split(':');  
56 - d.setHours(parseInt(_str[0]));  
57 - d.setMinutes(parseInt(_str[1]));  
58 - }  
59 - return d;  
60 - }  
61 - 251 + /**
  252 + * @description : (TODO) 获取最大时间(字符串).
  253 + *
  254 + * @param [d1--时间1;d2--时间2].
  255 + *
  256 + * @return 返回一个最大时间(字符串).
  257 + *
  258 + * @status OK.
  259 + * */
62 function getMaxDate(d1,d2) { 260 function getMaxDate(d1,d2) {
  261 + // 1、定义返回时间字符串.
63 var str = ''; 262 var str = '';
  263 + // 2、判断时间大小.
64 if(strToTime(d1)>strToTime(d2)) 264 if(strToTime(d1)>strToTime(d2))
65 str = d1; 265 str = d1;
66 else 266 else
67 str = d2; 267 str = d2;
  268 + // 3、返回一个最大时间(字符串).
68 return str; 269 return str;
69 } 270 }
70 271
  272 + /**
  273 + * @description : (TODO) 判断是否这时间段内.
  274 + *
  275 + * @param [st--开始时间;ed--结束时间;sj--当前判断的时间]
  276 + *
  277 + * @return 返回一个布尔值.
  278 + *
  279 + * @status OK.
  280 + * */
71 function issjd(st,ed,sj) { 281 function issjd(st,ed,sj) {
  282 + // 1、定义返回值.
72 var tag = false; 283 var tag = false;
  284 + // 2、判断时间大小.
73 if(sj<=ed && sj>=st) 285 if(sj<=ed && sj>=st)
  286 + // 3、重新赋值返回值.
74 tag = true; 287 tag = true;
  288 + // 4、返回判断结果布尔值.
75 return tag; 289 return tag;
76 } 290 }
77 291
  292 + /**
  293 + * @description : (TODO) 获取客流数据.
  294 + *
  295 + * @params [url--请求地址;data--请求参数;cb--回调函数]
  296 + *
  297 + * */
  298 + function getJSONP(url, data, cb) {
  299 + $.ajax({
  300 + url : url,
  301 + type : "GET",
  302 + dataType : 'jsonp',
  303 + jsonp : 'jsoncallback',
  304 + data : data,
  305 + success : cb
  306 + });
  307 + }
  308 +
  309 + /**
  310 + * @description : (TODO) 根据获取参数方式来获取表单参数详情html模版页.
  311 + *
  312 + * @param [n--获取参数方式;map--表单参数;lineId--线路ID;krl--客容量;cb--回调函数]
  313 + *
  314 + * @return 返回表单参数详情html模版页.
  315 + *
  316 + * @status OK.
  317 + * */
78 var getHtmlTemp = function(n,map,lineId,krl,cb) { 318 var getHtmlTemp = function(n,map,lineId,krl,cb) {
79 - var zzsj = parseInt(map.upTravelTime) + 10*2 + parseInt(map.downTravelTime); 319 + // 1、定义模版名称.
80 var tempName = ''; 320 var tempName = '';
81 - var date = new Date(),  
82 - rq = date.getFullYear() + '-' + (date.getMonth()+1) + '-' + (date.getDate()-3);  
83 - var startDateTime = rq + ' ' + '00:00';  
84 - var endDateTime = rq + ' ' + '23:59';  
85 - var params = {'xlid':'10773','startDateTime':startDateTime,'endDateTime':endDateTime,'zzsj':zzsj};  
86 - if(n==0) { 321 + if(n==0)
87 tempName = 'carnum_temp'; 322 tempName = 'carnum_temp';
88 - }else if(n==1) {  
89 - tempName = 'bctype_temp';  
90 - } 323 + else if(n==1)
  324 + tempName = 'bctype_temp';
  325 + // 2、获参数详情模版html内容.
91 $.get('/pages/base/timesmodel/tepms/'+ tempName + '.html', function(html){ 326 $.get('/pages/base/timesmodel/tepms/'+ tempName + '.html', function(html){
92 $('#tab3').append(html); 327 $('#tab3').append(html);
93 - map.lb = 15;  
94 - map.workeLunch = 20;  
95 - map.workeDinner = 20;  
96 - map.mixstopTime = 3;  
97 - map.maxstopTime = 20;  
98 - map.stopTime = 10; 328 + map.lb = 15;// 定义例保时间.
  329 + map.workeLunch = 20;// 定义午餐时间.
  330 + map.workeDinner = 20;// 定义晚餐时间.
  331 + map.mixstopTime = 3;// 定义最小停站间隙
  332 + map.maxstopTime = 22;// 定义最大停站间隙.
  333 + map.stopTime = 10;// 定义停站时间.
99 if(n==0) { 334 if(n==0) {
100 - getJSONP("http://139.196.13.237:8080/bsth-busfareflow-gj/Crlcxb/selectsjbctgl.do",params,function(json){  
101 - console.log(json); 335 + // 定义一个周转时间.
  336 + var zzsj = parseInt(map.upTravelTime) + 10*2 + parseInt(map.downTravelTime);
  337 + // 定义时间对象.
  338 + var date = new Date(),
  339 + rq = date.getFullYear() + '-' + (date.getMonth()+1) + '-' + (date.getDate()-7);
  340 + // 定义开始时间字符串.
  341 + var startDateTime = rq + ' ' + '00:00';
  342 + // 定义结束时间自妇产.
  343 + var endDateTime = rq + ' ' + '23:59';
  344 + // 定义请求参数集合.
  345 + var params = {'xlid':lineId,'startDateTime':startDateTime,'endDateTime':endDateTime,'zzsj':zzsj};
  346 + /**
  347 + * getJSONP请求获取客流数据.
  348 + *
  349 + * 返回的是一个每次以半小时为间隔作为开始时间点, 在加上周转时间作为结束时间点的 时段段内的客流最大通过量.
  350 + * */
  351 + getJSONP("http://139.196.13.237:8080/bsth-busfareflow-gj/Crlcxb/selectsjbctgl.do",params,function(json){
  352 + // 定义时段集合,可容量.
102 var sjdArr = getsjdArr(map),krlInt = parseInt(krl); 353 var sjdArr = getsjdArr(map),krlInt = parseInt(krl);
  354 + // 遍历时段集合.
103 for(var s = 0 ; s<sjdArr.length;s++) { 355 for(var s = 0 ; s<sjdArr.length;s++) {
  356 + // 分割时间段.
104 var strA = sjdArr[s].time.split('-'); 357 var strA = sjdArr[s].time.split('-');
  358 + // 定义开始时间与结束时间,车辆数.
105 var st = getDateTime(rq + ' ' + strA[0]),et = getDateTime(rq + ' ' + strA[1]),num = 0; 359 var st = getDateTime(rq + ' ' + strA[0]),et = getDateTime(rq + ' ' + strA[1]),num = 0;
  360 + // 遍历时间段内的客流数据集合.
106 for(var j = 0 ; j < json.length; j ++) { 361 for(var j = 0 ; j < json.length; j ++) {
  362 + // 定义当前客流班次产生的时间.
107 var dqsj = getDateTime(json[j].sj); 363 var dqsj = getDateTime(json[j].sj);
  364 + // 判断是否这时间段内.
108 if(issjd(st,et,dqsj)) { 365 if(issjd(st,et,dqsj)) {
  366 + // 车辆数相加.
109 num = num + Math.ceil(parseInt(json[j].tgl)/krlInt); 367 num = num + Math.ceil(parseInt(json[j].tgl)/krlInt);
110 } 368 }
111 } 369 }
112 sjdArr[s].num = num; 370 sjdArr[s].num = num;
113 } 371 }
114 - /*map.zgfbeforepcs = sjdArr[0].num;  
115 - map.zgfpcs = sjdArr[1].num;  
116 - map.gfzjpcs = sjdArr[2].num;  
117 - map.wgfpcs = sjdArr[3].num;  
118 - map.wgfafterpcs = sjdArr[4].num;*/  
119 - map.zgfbeforepcs = 3;  
120 - map.zgfpcs = 10;  
121 - map.gfzjpcs = 8;  
122 - map.wgfpcs = 10;  
123 - map.wgfafterpcs = 5;  
124 - 372 + map.zgfbeforepcs = sjdArr[0].num;// 早高峰前配车数
  373 + map.zgfpcs = sjdArr[2].num;// 早高峰配车数
  374 + map.gfzjpcs = sjdArr[4].num;// 高峰之间配车数
  375 + map.wgfpcs = sjdArr[2].num ;// 晚高峰配车数
  376 + map.wgfafterpcs = sjdArr[1].num + sjdArr[3].num;// 晚高峰后配车数
  377 + // 返回参数详情模版.
125 return cb && cb ({'forminput':template(tempName,{map:map}),'datadisplay': template(tempName +'config',{map:null})}); 378 return cb && cb ({'forminput':template(tempName,{map:map}),'datadisplay': template(tempName +'config',{map:null})});
126 }); 379 });
127 }else if(n==1) { 380 }else if(n==1) {
  381 + // 返回参数详情模版.
128 return cb && cb ({'forminput':template(tempName,{map:map}),'datadisplay': template(tempName +'config',{map:null})}); 382 return cb && cb ({'forminput':template(tempName,{map:map}),'datadisplay': template(tempName +'config',{map:null})});
129 } 383 }
130 }); 384 });
131 } 385 }
132 - var getCarNumber = function (param,cb) {  
133 - $post('url',param,function(data) {  
134 - return cb && cb(data);  
135 - }) 386 +
  387 + /**
  388 + * @description (TODO) 格式化成渲染图形数据格式.
  389 + *
  390 + * @param [d--查询出的时刻表明细数据.]
  391 + *
  392 + * @return 返回渲染图形的数据格式.
  393 + * */
  394 + function formatData(d) {
  395 + // 定义返回值.
  396 + var resultD = new Array();
  397 + for(var i =0;i<d.length;i++) {
  398 + var obj = {};
  399 + var ddsj = getddsj(d[i].fcsj,d[i].bcsj);// 到达时间.
  400 + obj.bcType = d[i].bcType;// 班次类型
  401 + obj.bcs = d[i].bcs;// 班次数
  402 + obj.bcsj = d[i].bcsj;// 班次时间
  403 + obj.fcno = d[i].fcno;// 发车序号
  404 + obj.fcsj = d[i].fcsj;// 发车时间
  405 + obj.ARRIVALTIME = ddsj// 到达时间
  406 + obj.jhlc = d[i].jhlc;// 计划里程
  407 + obj.lp = d[i].lp==null ? null : d[i].lp.id;// 路牌id
  408 + obj.lpType = d[i].lp==null ? null : d[i].lp.lpType;// 路牌类型
  409 + obj.parent = d[i].lp.lpName;// 路牌名称
  410 + obj.lpNo = d[i].lp.lpNo;// 路牌编码
  411 + obj.tcc = d[i].tcc==null ? null : d[i].tcc.id;// 停车场id
  412 + obj.ttinfo = d[i].ttinfo==null ? null : d[i].ttinfo.id;// 时刻表id
  413 + obj.xl = d[i].xl==null ? null : d[i].xl.id;// 线路id
  414 + obj.xlDir = dmToDh(d[i].xlDir);// 方向【0:relationshipGraph-up 上行;1:relationshipGraph-down 下行】
  415 + obj.qdz = d[i].qdz==null ? null : d[i].qdz.id;// 起点站id
  416 + obj.zdz = d[i].zdz==null ? null : d[i].zdz.id;//终点站id
  417 + obj.isfb = isfbTodm(d[i].isFB);// 是否分班【0:false;1:true】
  418 + obj.isSwitchXl = isSwitchXlTodm(d[i].isSwitchXl);// 是否切换线路【0:false;1:true】
  419 + obj.STOPTIME = gettzsj(d[i],d,ddsj);// 停站时间.
  420 + resultD.push(obj);
  421 + }
  422 + // 返回渲染图形的数据格式.
  423 + return resultD;
136 } 424 }
  425 +
  426 + /**
  427 + * @description : (TODO) 获取开始与结束时间字符串.
  428 + *
  429 + * @param [map--表单配置参数]
  430 + *
  431 + * @return 返回开始与结束时间字符串集合.
  432 + * */
  433 + function getStartAndEndDate(map) {
  434 + return {'s':getMinDate(map.line.startStationFirstTime,map.line.endStationFirstTime),
  435 + 'e':getMaxDate(map.line.startStationEndTime,map.line.endStationEndTime)}
  436 + }
  437 +
137 return { 438 return {
138 // 启动初始化向导导航 439 // 启动初始化向导导航
139 init : function() { 440 init : function() {
@@ -160,11 +461,11 @@ var SKBFormWizard = function() { @@ -160,11 +461,11 @@ var SKBFormWizard = function() {
160 'earlyEndTime' : {required : true},// 早高峰结束时间,必填项 . 461 'earlyEndTime' : {required : true},// 早高峰结束时间,必填项 .
161 'lateStartTime' : {required : true},// 晚高峰开始时间,必填项 . 462 'lateStartTime' : {required : true},// 晚高峰开始时间,必填项 .
162 'lateEndTime' : {required : true},// 晚高峰结束时间,必填项. 463 'lateEndTime' : {required : true},// 晚高峰结束时间,必填项.
163 - 'zgfbeforepcs' : {required : true,number : true,digits : true},// 早高峰前车辆数,必填项、必须为整数.  
164 - 'zgfpcs' : {required : true,number : true,digits : true},// 早高峰车辆数,必填项、必须为整数.  
165 - 'wgfafterpcs' : {required : true,number : true,digits : true},// 晚高峰后车俩数,必填项、必须为整数.  
166 - 'wgfpcs' : {required : true,number : true,digits : true},// 晚高峰车俩数,必填项、必须为整数.  
167 - 'gfzjpcs' : {required : true,number : true,digits : true},// 高峰中间车辆数,必填项、必须为整数. 464 + 'zgfbeforepcs' : {required : true,number : true,digits : true, isNum0:true},// 早高峰前车辆数,必填项、必须为整数.
  465 + 'zgfpcs' : {required : true,number : true,digits : true, isNum0:true, isMax: true},// 早高峰车辆数,必填项、必须为整数.
  466 + 'wgfafterpcs' : {required : true,number : true,digits : true, isNum0:true},// 晚高峰后车俩数,必填项、必须为整数.
  467 + 'wgfpcs' : {required : true,number : true,digits : true, isNum0:true, isMax: true},// 晚高峰车俩数,必填项、必须为整数.
  468 + 'gfzjpcs' : {required : true,number : true,digits : true, isNum0:true},// 高峰中间车辆数,必填项、必须为整数.
168 'upTravelTime' : {required : true,number : true},// 上行行驶时间,必填项、必须为整数. 469 'upTravelTime' : {required : true,number : true},// 上行行驶时间,必填项、必须为整数.
169 'downTravelTime' : {required : true,number : true},// 下行行驶时间,必填项、必须为整数. 470 'downTravelTime' : {required : true,number : true},// 下行行驶时间,必填项、必须为整数.
170 'upMileage' : {required : true,number : true},// 上行行驶里程,必填项、必须为整数. 471 'upMileage' : {required : true,number : true},// 上行行驶里程,必填项、必须为整数.
@@ -192,7 +493,7 @@ var SKBFormWizard = function() { @@ -192,7 +493,7 @@ var SKBFormWizard = function() {
192 'downInMileage' : {number : true},// 下行进场里程,必须为数字. 493 'downInMileage' : {number : true},// 下行进场里程,必须为数字.
193 'downOutMileage' : {number : true},// 下行出场里程,必须为数字. 494 'downOutMileage' : {number : true},// 下行出场里程,必须为数字.
194 'lb' : {number : true},// 早晚例行保养,必须为数字. 495 'lb' : {number : true},// 早晚例行保养,必须为数字.
195 - 'clzs':{required : true,number : true,digits : true},// 车辆总数,必填项、必须为整数. 496 + 'clzs':{required : true,number : true,digits : true, isBcType : true},// 车辆总数,必填项、必须为整数.
196 'bxrc' : {required : true},// 早晚例行保养,必须为数字. 497 'bxrc' : {required : true},// 早晚例行保养,必须为数字.
197 }, 498 },
198 499
@@ -243,10 +544,15 @@ var SKBFormWizard = function() { @@ -243,10 +544,15 @@ var SKBFormWizard = function() {
243 * 默认:default (native) form submit;当表单通过验证,提交表单。回调函数有个默认参数form 544 * 默认:default (native) form submit;当表单通过验证,提交表单。回调函数有个默认参数form
244 */ 545 */
245 submitHandler : function(f) { 546 submitHandler : function(f) {
  547 + // 定义localStorage对象.
246 var storage = window.localStorage; 548 var storage = window.localStorage;
  549 + // 表单序列化.
247 var argus = form.serializeJSON(); 550 var argus = form.serializeJSON();
  551 + // 获取站点路由.
248 $get('/stationroute/all',{'line.id_eq':argus.lineName.split('_')[0]},function(result) { 552 $get('/stationroute/all',{'line.id_eq':argus.lineName.split('_')[0]},function(result) {
  553 + // 判断.
249 if(result) { 554 if(result) {
  555 + // 定义上行起点站,上行终点站,下行起点站,下行终点站.
250 var upB ='',upE='',downB='',downE=''; 556 var upB ='',upE='',downB='',downE='';
251 for(var r = 0 ; r<result.length;r++) { 557 for(var r = 0 ; r<result.length;r++) {
252 if(result[r].directions==0 && result[r].stationMark =='B') 558 if(result[r].directions==0 && result[r].stationMark =='B')
@@ -260,14 +566,16 @@ var SKBFormWizard = function() { @@ -260,14 +566,16 @@ var SKBFormWizard = function() {
260 } 566 }
261 argus.up_s = upB + '_' + upE; 567 argus.up_s = upB + '_' + upE;
262 argus.down_s = downB + '_' + downE; 568 argus.down_s = downB + '_' + downE;
  569 + // 获取停车车场.
263 $get('/carpark/all',{'parkCode_eq':argus.tcc},function(cp) { 570 $get('/carpark/all',{'parkCode_eq':argus.tcc},function(cp) {
264 var tcc_id = ''; 571 var tcc_id = '';
265 if(cp) { 572 if(cp) {
266 tcc_id = cp[0].id; 573 tcc_id = cp[0].id;
267 } 574 }
268 - argus.tcc_id = tcc_id;  
269 - argus.skbmc = $('#skbNameSelect').select2('data')[0].text;  
270 - argus.xlmc = $('#lineSelect').select2('data')[0].text; 575 + argus.tcc_id = tcc_id; // 停车场ID.
  576 + argus.skbmc = $('#skbNameSelect').select2('data')[0].text;// 时刻名称.
  577 + argus.xlmc = $('#lineSelect').select2('data')[0].text;// 线路名称.
  578 + // 获取时刻表明细.
271 $get('/tidc/all',{'ttinfo.id_eq':parseInt(argus.skbName)},function(data) { 579 $get('/tidc/all',{'ttinfo.id_eq':parseInt(argus.skbName)},function(data) {
272 if(data.status=='SUCCESS' && data.data.length>0) { 580 if(data.status=='SUCCESS' && data.data.length>0) {
273 argus.istidc = 1; 581 argus.istidc = 1;
@@ -277,7 +585,7 @@ var SKBFormWizard = function() { @@ -277,7 +585,7 @@ var SKBFormWizard = function() {
277 btn: ['确定并使用','取消并继续'] //按钮 585 btn: ['确定并使用','取消并继续'] //按钮
278 }, function(){ 586 }, function(){
279 layer.closeAll(); 587 layer.closeAll();
280 - submit(JSON.stringify(gsData(data.data)),argus); 588 + submit(JSON.stringify(formatData(data.data)),argus);
281 }, function(){ 589 }, function(){
282 submit(null,argus); 590 submit(null,argus);
283 }); 591 });
@@ -291,6 +599,8 @@ var SKBFormWizard = function() { @@ -291,6 +599,8 @@ var SKBFormWizard = function() {
291 layer.msg('系统不存在该线路的上、下行起终点站!'); 599 layer.msg('系统不存在该线路的上、下行起终点站!');
292 } 600 }
293 }); 601 });
  602 +
  603 + // 表单提交.
294 function submit(p,argus) { 604 function submit(p,argus) {
295 storage.setItem("Gantt_AgursData",JSON.stringify(argus)); 605 storage.setItem("Gantt_AgursData",JSON.stringify(argus));
296 storage.setItem('isDoDate',p); 606 storage.setItem('isDoDate',p);
@@ -298,110 +608,99 @@ var SKBFormWizard = function() { @@ -298,110 +608,99 @@ var SKBFormWizard = function() {
298 } 608 }
299 } 609 }
300 }); 610 });
301 - function gsData(d) {  
302 - var resultD = new Array();  
303 - for(var i =0;i<d.length;i++) {  
304 - var obj = {};  
305 - var ddsj = getddsj(d[i].fcsj,d[i].bcsj);  
306 - obj.bcType = d[i].bcType;//班次类型  
307 - obj.bcs = d[i].bcs;// 班次数  
308 - obj.bcsj = d[i].bcsj;// 班次时间  
309 - obj.fcno = d[i].fcno;// 发车序号  
310 - obj.fcsj = d[i].fcsj;//发车时间  
311 - obj.ARRIVALTIME = ddsj//到达时间  
312 - obj.jhlc = d[i].jhlc;//计划里程  
313 - obj.lp = d[i].lp==null ? null : d[i].lp.id;//路牌id  
314 - obj.lpType = d[i].lp==null ? null : d[i].lp.lpType;//路牌类型  
315 - obj.parent = d[i].lp.lpName;// 路牌名称  
316 - obj.lpNo = d[i].lp.lpNo;//路牌编码  
317 - obj.tcc = d[i].tcc==null ? null : d[i].tcc.id;//停车场id  
318 - obj.ttinfo = d[i].ttinfo==null ? null : d[i].ttinfo.id;//时刻表id  
319 - obj.xl = d[i].xl==null ? null : d[i].xl.id;//线路id  
320 - obj.xlDir = dmToDh(d[i].xlDir);// 方向【0:relationshipGraph-up 上行;1:relationshipGraph-down 下行】  
321 - obj.qdz = d[i].qdz==null ? null : d[i].qdz.id;// 起点站id  
322 - obj.zdz = d[i].zdz==null ? null : d[i].zdz.id;//终点站id  
323 - obj.isfb = isfbTodm(d[i].isFB);//是否分班【0:false;1:true】  
324 - obj.isSwitchXl = isSwitchXlTodm(d[i].isSwitchXl);// 是否切换线路【0:false;1:true】  
325 - obj.STOPTIME = gettzsj(d[i],d,ddsj);  
326 - resultD.push(obj);  
327 - }  
328 - console.log(resultD);  
329 - return resultD;  
330 - }  
331 - function gettzsj(o,d,sj) {  
332 - var tzsj = 0;  
333 - for(var i = 0 ;i<d.length;i++) {  
334 - if(o.lp.lpNo == d[i].lp.lpNo && o.lp.id == d[i].lp.id) {  
335 - if(d[i].fcno - o.fcno ==1){  
336 - tzsj = (strToTime(d[i].fcsj) -strToTime(sj)) / 60000;  
337 - continue;  
338 - }  
339 -  
340 - }  
341 - }  
342 - return tzsj;  
343 - }  
344 -  
345 - function isSwitchXlTodm(d) {  
346 - var rstr = 0;  
347 - if(d)  
348 - rstr = 1;  
349 - return rstr;  
350 - }  
351 -  
352 - function isfbTodm(b) {  
353 - var rstr = 0;  
354 - if(b)  
355 - rstr = 1;  
356 - return rstr;  
357 - }  
358 -  
359 - function getddsj(tStr,bcsj) {  
360 - var rt = '';  
361 - var date = new Date();  
362 - var _str = tStr.split(':');  
363 - date.setHours(parseInt(_str[0]));  
364 - date.setMinutes(parseInt(_str[1]) + bcsj);  
365 - return getTimeStr(date);  
366 - }  
367 -  
368 - var strToTime = function(t) {  
369 - var d = new Date;  
370 - if(t) {  
371 - var _str = t.split(':');  
372 - d.setHours(parseInt(_str[0]));  
373 - d.setMinutes(parseInt(_str[1]));  
374 - }  
375 - return d;  
376 - }  
377 611
378 - function getTimeStr(t) {  
379 - var _str = '';  
380 - if(t) {  
381 - _str = ((t.getHours()<10? '0' + t.getHours() : t.getHours()) == '00' ? '24' :(t.getHours()<10? '0' + t.getHours() : t.getHours()))  
382 - +':'  
383 - +(t.getMinutes()<10? '0' + t.getMinutes() : t.getMinutes());  
384 - }  
385 - return _str;  
386 - } 612 + // 验证配车数不能为零.
  613 + $.validator.addMethod('isNum0', function(value,element) {
  614 + // 定义返回值.
  615 + var tag = true;
  616 + var zgfbeforepcs = $('#zgfbeforepcsInput').val(),// 早高峰前配车数.
  617 + zgfpcs = $('#zgfpcsInput').val(),// 早高峰配车数.
  618 + gfzjpcs = $('#gfzjpcsInput').val(),// 高峰之间配车数.
  619 + wgfpcs = $('#wgfpcsInput').val(),// 晚高峰配车数.
  620 + wgfafterpcs = $('#wgfafterpcsInput').val();// 晚高峰后配车数.
  621 + // 判断是否为零.
  622 + if(parseInt(zgfbeforepcs) == 0 || parseInt(zgfbeforepcs) ==0 ||
  623 + parseInt(gfzjpcs) ==0 || parseInt(wgfpcs) ==0 || parseInt(wgfafterpcs) ==0)
  624 + tag = false;
  625 + return tag;
  626 + },function(){return '配车数不能为零!'; });
387 627
388 - function dmToDh(t) {  
389 - var reslStr = '';  
390 - if(t=='0')  
391 - reslStr = 'relationshipGraph-up';  
392 - else if(t=='1')  
393 - reslStr = 'relationshipGraph-down';  
394 - return reslStr;  
395 - } 628 + // 验证高峰时段内的配车数是否高于其它时段配车数.
  629 + $.validator.addMethod('isMax', function(value,element) {
  630 + var tag = true;
  631 + var zgfbeforepcs = parseInt($('#zgfbeforepcsInput').val()),// 早高峰前配车数.
  632 + zgfpcs = parseInt($('#zgfpcsInput').val()),// 早高峰配车数.
  633 + gfzjpcs = parseInt($('#gfzjpcsInput').val()),// 高峰之间配车数.
  634 + wgfpcs = parseInt($('#wgfpcsInput').val()),// 晚高峰配车数.
  635 + wgfafterpcs = parseInt($('#wgfafterpcsInput').val());// 晚高峰后配车数.
  636 + // 判断高峰时段内的配车数是否高于其它时段配车数.
  637 + if(zgfpcs<zgfbeforepcs || zgfpcs<gfzjpcs || zgfpcs<wgfafterpcs || wgfpcs<zgfbeforepcs || wgfpcs<gfzjpcs || wgfpcs<wgfafterpcs )
  638 + tag = false;
  639 + return tag;
  640 + },function(){return '高峰时段配车数必须高于其它时段配车数!';});
396 641
  642 + // 验证客流数据分析时客容量为必填项.
397 $.validator.addMethod("isBaseRes", function(value,element) { 643 $.validator.addMethod("isBaseRes", function(value,element) {
  644 + // 定义返回值.
398 var tag = true; 645 var tag = true;
  646 + // 定义选择获取参数方式值
399 var baseChecked = $('#submit_argus_form input[name="baseRes"]:checked').val(); 647 var baseChecked = $('#submit_argus_form input[name="baseRes"]:checked').val();
  648 + // 判断
400 if(baseChecked == '0' && $('#krlInput').val()== '') 649 if(baseChecked == '0' && $('#krlInput').val()== '')
401 tag = false; 650 tag = false;
402 return tag; 651 return tag;
403 }, '客流大数据分析,客流总量为必填项!'); 652 }, '客流大数据分析,客流总量为必填项!');
404 653
  654 + // 验证配车数不能为零.
  655 + $.validator.addMethod('isBcType', function(value,element) {
  656 + // 定义返回值.
  657 + var tag = true;
  658 + // 定义车辆总数,班型人次.
  659 + var clzs = $('#clzsInput').val(),
  660 + bxrc = $('#state_tagsinput').val();
  661 + // 判断.
  662 + if(bxrc=='' || bxrc==null || clzs=='' || clzs==0)
  663 + return false;
  664 + // 定义首末班次开始结束时间集合.
  665 + var map = {'line':{'startStationFirstTime':$('#qdzsbsjInput').val(),
  666 + 'startStationEndTime':$('#qdzmbsjInput').val(),
  667 + 'endStationFirstTime':$('#zdzsbsjInput').val(),
  668 + 'endStationEndTime':$('#zdzmbsjInput').val()}};
  669 + // 定义开始~结束时间.
  670 + var setMap = getStartAndEndDate(map);
  671 + console.log(setMap);
  672 + // 定义最大工时.
  673 + var maxGs = parseInt( ((strToTime(setMap.e) - strToTime(setMap.s)) / 60000) / 60) * parseInt(clzs);
  674 + // 切割班型人次,定义班次人次所用总工时.
  675 + var bxrcAr = bxrc.split(','),countGs = 0;
  676 + // 遍历
  677 + for(var s = 0 ; s< bxrcAr.length;s++) {
  678 + // 切割单个班型人次.
  679 + var s1a = bxrcAr[s].split('/');
  680 + // 定义人次.
  681 + var rs = parseInt(s1a[1]);
  682 + // 定义小时系数.
  683 + var hoursV = 0.0;
  684 + for(var g = 0 ; g < bxrcGs.length; g++) {
  685 + // 判断班型是否一致.
  686 + if(bxrcGs[g].type == s1a[0]) {
  687 + // 重新赋值小时系数.
  688 + hoursV = bxrcGs[g].hoursV;
  689 + }
  690 + }
  691 + // 重新计算班次人次所用总工时.
  692 + countGs = countGs + parseFloat(hoursV.toFixed(2)) * rs;
  693 + }
  694 + // 判断
  695 + if(parseFloat(countGs.toFixed(2))>maxGs)
  696 + tag = false;
  697 + return tag;
  698 + },function(){return '配车总数与班型人次搭配不合理!'; });
  699 +
  700 + /**
  701 + * @description : (TODO) 监听获取参数方式值改变事件.
  702 + *
  703 + * */
405 $('input:radio[name="baseRes"]').on('change',function(v) { 704 $('input:radio[name="baseRes"]').on('change',function(v) {
406 if($(this).val()=='1') 705 if($(this).val()=='1')
407 $('#krlGroup').hide(); 706 $('#krlGroup').hide();
@@ -484,25 +783,29 @@ var SKBFormWizard = function() { @@ -484,25 +783,29 @@ var SKBFormWizard = function() {
484 return false; 783 return false;
485 } 784 }
486 if(index==1) { 785 if(index==1) {
  786 + // 初始化客容量值.
487 if($('#krlInput').val() == '') 787 if($('#krlInput').val() == '')
488 $('#krlInput').val(50); 788 $('#krlInput').val(50);
489 }else if(index == 2) { 789 }else if(index == 2) {
490 - var baseRes = $('#submit_argus_form input[name="baseRes"]:checked').val(),  
491 - lineId = $('#lineSelect').val().split('_')[0],  
492 - krl = $('#krlInput').val(); 790 + var baseRes = $('#submit_argus_form input[name="baseRes"]:checked').val(),// 获取参数方式值.
  791 + lineId = $('#lineSelect').val().split('_')[0],// 线路ID.
  792 + krl = $('#krlInput').val();// 客容量
493 getLineInfo(lineId,function(r) { 793 getLineInfo(lineId,function(r) {
494 getHtmlTemp(baseRes,r.content[0],lineId,krl,function(htlMap) { 794 getHtmlTemp(baseRes,r.content[0],lineId,krl,function(htlMap) {
495 $('#tab3').html(htlMap.forminput); 795 $('#tab3').html(htlMap.forminput);
496 $('#tab4').html(htlMap.datadisplay); 796 $('#tab4').html(htlMap.datadisplay);
497 if(baseRes==1) 797 if(baseRes==1)
498 - ComponentsBootstrapTagsinput.init(); 798 + ComponentsBootstrapTagsinput.init();// 初始化班型人次Input Tag.
499 // 日期控件 799 // 日期控件
500 - $('#qdzsbsjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});  
501 - $('#endServiceTimeInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});  
502 - $('#morningPeakStartInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});  
503 - $('#morningPeakEndInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});  
504 - $('#eveningPeakStartInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});  
505 - $('#eveningPeakEndInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'}); 800 + $('#qdzsbsjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 起始站首班时间
  801 + $('#qdzmbsjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 起始站末班时间
  802 + $('#zdzsbsjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 终点站首班时间
  803 + $('#zdzmbsjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 终点站末班时间
  804 + $('#zgfkssjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 早高峰开始时间
  805 + $('#zgfjssjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 早高峰结束时间
  806 + $('#wgfkssjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 晚高峰开始时间
  807 + $('#wgfjssjInput').datetimepicker({format : 'HH:mm',locale: 'zh-cn'});// 晚高峰结束时间
  808 + // 初始化停车场下拉框.
506 gettccInfo(function(cd) { 809 gettccInfo(function(cd) {
507 var options = '<option value="">请选择...</option><optgroup label="停车场">'; 810 var options = '<option value="">请选择...</option><optgroup label="停车场">';
508 var $_len = cd.length; 811 var $_len = cd.length;
@@ -543,15 +846,4 @@ var SKBFormWizard = function() { @@ -543,15 +846,4 @@ var SKBFormWizard = function() {
543 $('#submit_argus_form').find('.button-previous').hide(); 846 $('#submit_argus_form').find('.button-previous').hide();
544 } 847 }
545 } 848 }
546 - function getJSONP(url, data, cb) {  
547 - $.ajax({  
548 - url : url,  
549 - type : "GET",  
550 - dataType : 'jsonp',  
551 - jsonp : 'jsoncallback',  
552 - data : data,  
553 - success : cb  
554 - });  
555 - }  
556 -  
557 -}(); 849 +}();
558 \ No newline at end of file 850 \ No newline at end of file
src/main/resources/static/pages/base/timesmodel/js/base-fun.js
@@ -1217,7 +1217,6 @@ var BaseFun = function() { @@ -1217,7 +1217,6 @@ var BaseFun = function() {
1217 qt.push(arr[a]); 1217 qt.push(arr[a]);
1218 } 1218 }
1219 } 1219 }
1220 - // debugger;  
1221 var tempup = baseF.sortDirArray(upArr); 1220 var tempup = baseF.sortDirArray(upArr);
1222 var tempdown = baseF.sortDirArray(downArr); 1221 var tempdown = baseF.sortDirArray(downArr);
1223 return {'upArr':tempup,'downArr':tempdown,'qt':qt}; 1222 return {'upArr':tempup,'downArr':tempdown,'qt':qt};
@@ -1233,7 +1232,6 @@ var BaseFun = function() { @@ -1233,7 +1232,6 @@ var BaseFun = function() {
1233 * @status OK. 1232 * @status OK.
1234 * */ 1233 * */
1235 sortDirArray : function(arr) { 1234 sortDirArray : function(arr) {
1236 - ///debugger;  
1237 //console.log(arr.length); 1235 //console.log(arr.length);
1238 var list = new Array(),tempArray = new Array(); 1236 var list = new Array(),tempArray = new Array();
1239 for(var a =0;a<arr.length;a++) { 1237 for(var a =0;a<arr.length;a++) {
@@ -1249,7 +1247,6 @@ var BaseFun = function() { @@ -1249,7 +1247,6 @@ var BaseFun = function() {
1249 list.push(arr[d]); 1247 list.push(arr[d]);
1250 } 1248 }
1251 } 1249 }
1252 - //debugger;  
1253 //console.log(list.length); 1250 //console.log(list.length);
1254 return list; 1251 return list;
1255 }, 1252 },
@@ -1261,7 +1258,6 @@ var BaseFun = function() { @@ -1261,7 +1258,6 @@ var BaseFun = function() {
1261 * @return : 返回一个数组.这里返回的是调整过后 发车间距均匀的班次数组 1258 * @return : 返回一个数组.这里返回的是调整过后 发车间距均匀的班次数组
1262 **/ 1259 **/
1263 jhfcjx : function(bcArr,dir,zzsj,dataMap) { 1260 jhfcjx : function(bcArr,dir,zzsj,dataMap) {
1264 - // debugger;  
1265 console.log(bcArr.length); 1261 console.log(bcArr.length);
1266 //console.log('调整' + dir + '发车间隙...'); 1262 //console.log('调整' + dir + '发车间隙...');
1267 // 1、定义某个方向下的首末班次时间结点. 1263 // 1、定义某个方向下的首末班次时间结点.
@@ -1286,7 +1282,6 @@ var BaseFun = function() { @@ -1286,7 +1282,6 @@ var BaseFun = function() {
1286 return; 1282 return;
1287 var fcnosj = new Date(kssj); 1283 var fcnosj = new Date(kssj);
1288 // 2.4、调整班次 1284 // 2.4、调整班次
1289 - //debugger;  
1290 for(var l = 0 ;l<bcArr.length-1;l++) { 1285 for(var l = 0 ;l<bcArr.length-1;l++) {
1291 var _t = baseF.getDateTime(bcArr[l].fcsj); 1286 var _t = baseF.getDateTime(bcArr[l].fcsj);
1292 if(_t>temp ) 1287 if(_t>temp )
src/main/resources/static/pages/base/timesmodel/js/d3.relationshipgraph.js
@@ -325,17 +325,18 @@ var _animation = function(d3Node) {return d3Node.transition().delay(function(d,i @@ -325,17 +325,18 @@ var _animation = function(d3Node) {return d3Node.transition().delay(function(d,i
325 * @returns {Object} table.outerHTML 325 * @returns {Object} table.outerHTML
326 ************************************************************************************************************************************************/ 326 ************************************************************************************************************************************************/
327 var createTooltip = function createTooltip(self) { 327 var createTooltip = function createTooltip(self) {
328 - var hiddenKeys = ['_PRIVATE_','fcno' ,'PARENTCOLOR', 'SETNODECOLOR', 'SETNODESTROKECOLOR', /*'INTERVAL',*/'num'],  
329 - showKeys = self.configuration.showKeys;  
330 return d3.tip().attr('class', 'relationshipGraph-tip').offset([-8, -10]).html(function (obj) { 328 return d3.tip().attr('class', 'relationshipGraph-tip').offset([-8, -10]).html(function (obj) {
331 var keys = Object.keys(obj), 329 var keys = Object.keys(obj),
332 table = document.createElement('table'), 330 table = document.createElement('table'),
333 count = keys.length, 331 count = keys.length,
334 rows = []; 332 rows = [];
  333 + var showKeys = self.configuration.showKeys;
  334 + var hiddenKeys = ['_PRIVATE_' ,'PARENTCOLOR', 'SETNODECOLOR', 'SETNODESTROKECOLOR','lpNo','lpName','lp','lpType',
  335 + 'jhlc','tcc','ttinfo','xl','isfb','qdz','zdz','isSwitchXl','bz','bcs','fcno'];
335 while (count--) { 336 while (count--) {
336 - var element = keys[count],  
337 - upperCaseKey = element.toUpperCase();  
338 - if (!RelationshipGraph.contains(hiddenKeys, upperCaseKey) && !upperCaseKey.startsWith('__') && obj[element] !='tjz') { 337 + var element = keys[count];
  338 + // upperCaseKey = element.toUpperCase();
  339 + if (!RelationshipGraph.contains(hiddenKeys, element) && !element.startsWith('__') && obj[element] !='tjz') {
339 var row = document.createElement('tr'), 340 var row = document.createElement('tr'),
340 key = showKeys ? document.createElement('td') : null, 341 key = showKeys ? document.createElement('td') : null,
341 value = document.createElement('td'); 342 value = document.createElement('td');
@@ -352,7 +353,7 @@ var createTooltip = function createTooltip(self) { @@ -352,7 +353,7 @@ var createTooltip = function createTooltip(self) {
352 else if(element=='xlDir') 353 else if(element=='xlDir')
353 changeKey = '行驶方向:'; 354 changeKey = '行驶方向:';
354 else if(element=='parent') 355 else if(element=='parent')
355 - changeKey = '当前车辆:'; 356 + changeKey = '当前路牌:';
356 else if(element=='bcType') 357 else if(element=='bcType')
357 changeKey = '班次类型:'; 358 changeKey = '班次类型:';
358 else if(element=='tjbx') 359 else if(element=='tjbx')
@@ -363,7 +364,7 @@ var createTooltip = function createTooltip(self) { @@ -363,7 +364,7 @@ var createTooltip = function createTooltip(self) {
363 row.appendChild(key); 364 row.appendChild(key);
364 } 365 }
365 366
366 - if (upperCaseKey == 'VALUE' && !self.configuration.valueKeyName) { 367 + if (element == 'VALUE' && !self.configuration.valueKeyName) {
367 continue; 368 continue;
368 } 369 }
369 370
src/main/resources/static/pages/base/timesmodel/js/gantt.js
@@ -101,7 +101,8 @@ @@ -101,7 +101,8 @@
101 'jclcArr' : BaseFun.formatPairing(gatps.upInMileage,gatps.downInMileage),// 进场里程。[下标0代表上;下标1代表下] 101 'jclcArr' : BaseFun.formatPairing(gatps.upInMileage,gatps.downInMileage),// 进场里程。[下标0代表上;下标1代表下]
102 'cclcArr' : BaseFun.formatPairing(gatps.upOutMileage,gatps.downOutMileage),// 出场里程。[下标0代表上;下标1代表下] 102 'cclcArr' : BaseFun.formatPairing(gatps.upOutMileage,gatps.downOutMileage),// 出场里程。[下标0代表上;下标1代表下]
103 'pcxssjArr' : BaseFun.formatPairing(gatps.upTravelTime,gatps.downTravelTime),// 平常行驶时间。[下标0代表上;下标1代表下] 103 'pcxssjArr' : BaseFun.formatPairing(gatps.upTravelTime,gatps.downTravelTime),// 平常行驶时间。[下标0代表上;下标1代表下]
104 - 'gfxxsjArr' : BaseFun.formatPairing(gatps.lateUpTime,gatps.lateDownTime),// 高峰行驶时间。[下标0代表上;下标1代表下] 104 + 'gfxxsjArr' : BaseFun.formatPairing(gatps.lateUpTime=='' ? gatps.upTravelTime : gatps.lateUpTime,
  105 + gatps.lateDownTime=='' ? gatps.downTravelTime : gatps.lateDownTime),// 高峰行驶时间。[下标0代表上;下标1代表下]
105 'pcxslcArr' : BaseFun.formatPairing(gatps.upMileage,gatps.downMileage),// 行驶里程。[下标0代表上;下标1代表下] 106 'pcxslcArr' : BaseFun.formatPairing(gatps.upMileage,gatps.downMileage),// 行驶里程。[下标0代表上;下标1代表下]
106 'qdzArr' : BaseFun.qzdz(gatps.up_s.split('_')[0],gatps.down_s.split('_')[0]),// 起始站。[下标0代表上;下标1代表下] 107 'qdzArr' : BaseFun.qzdz(gatps.up_s.split('_')[0],gatps.down_s.split('_')[0]),// 起始站。[下标0代表上;下标1代表下]
107 'zdzArr':BaseFun.qzdz(gatps.up_s.split('_')[1],gatps.down_s.split('_')[1]),// 终点站。[下标0代表上;下标1代表下] 108 'zdzArr':BaseFun.qzdz(gatps.up_s.split('_')[1],gatps.down_s.split('_')[1]),// 终点站。[下标0代表上;下标1代表下]
src/main/resources/static/pages/base/timesmodel/js/tagsinput.js
@@ -25,10 +25,30 @@ var ComponentsBootstrapTagsinput = function() { @@ -25,10 +25,30 @@ var ComponentsBootstrapTagsinput = function() {
25 itemValue: 'value', 25 itemValue: 'value',
26 itemText: 'text' 26 itemText: 'text'
27 }); 27 });
  28 +
  29 + $('#state_tagsinput').on('beforeItemAdd', function(event) {
  30 + var bctypeValue = $('#state_tagsinput_bctype').val();
  31 + var rcnum = $('#state_tagsinput_value').val();
  32 + var bxrcAr = $('#state_tagsinput').val().split(',');
  33 + for(var s = 0 ; s< bxrcAr.length;s++) {
  34 + var s1a = bxrcAr[s].split('/');
  35 + if(s1a[0]==bctypeValue) {
  36 + $('#state_tagsinput').tagsinput('remove', bxrcAr[s]);
  37 + }
  38 + }
  39 + });
  40 +
28 $('#state_tagsinput_add').on('click', function(){ 41 $('#state_tagsinput_add').on('click', function(){
29 var bctypeValue = $('#state_tagsinput_bctype').val(); 42 var bctypeValue = $('#state_tagsinput_bctype').val();
30 var rcnum = $('#state_tagsinput_value').val(); 43 var rcnum = $('#state_tagsinput_value').val();
31 if(isNull(bctypeValue,rcnum)) { 44 if(isNull(bctypeValue,rcnum)) {
  45 + var bxrcAr = $('#state_tagsinput').val().split(',');
  46 + for(var s = 0 ; s< bxrcAr.length;s++) {
  47 + var s1a = bxrcAr[s].split('/');
  48 + if(s1a[0]==bctypeValue) {
  49 + rcnum = parseInt(rcnum) + parseInt(s1a[1]);
  50 + }
  51 + }
32 elt.tagsinput('add', { 52 elt.tagsinput('add', {
33 "value": bctypeValue + '/' + rcnum, 53 "value": bctypeValue + '/' + rcnum,
34 "text": bctypeValue + '/' + rcnum, 54 "text": bctypeValue + '/' + rcnum,
src/main/resources/static/pages/excep/boundList.html
@@ -55,9 +55,9 @@ @@ -55,9 +55,9 @@
55 <tr role="row" class="heading"> 55 <tr role="row" class="heading">
56 <th width="3%">#</th> 56 <th width="3%">#</th>
57 <th width="15%">线路</th> 57 <th width="15%">线路</th>
58 - <th width="13%">内部编码</th>  
59 - <th width="100">经度</th>  
60 - <th width="11%">纬度</th> 58 + <th width="13%">车辆自编号</th>
  59 + <th width="100">工号/名字</th>
  60 + <th width="11%">路牌名</th>
61 <th width="10%">上下行</th> 61 <th width="10%">上下行</th>
62 <th width="18%">时间</th> 62 <th width="18%">时间</th>
63 <th width="18%">操作</th> 63 <th width="18%">操作</th>
@@ -66,10 +66,11 @@ @@ -66,10 +66,11 @@
66 <td></td> 66 <td></td>
67 <td> 67 <td>
68 <!-- <input type="text" class="form-control form-filter input-sm" name="userName_like"> --> 68 <!-- <input type="text" class="form-control form-filter input-sm" name="userName_like"> -->
69 - <select class="form-control" name="line" id="line" style="width: 180px;"></select> 69 + <select class="form-control" name="line" id="line" style="width: 150px;"></select>
70 </td> 70 </td>
71 <td> 71 <td>
72 - <input type="text" class="form-control form-filter input-sm" name="nbbm"> 72 +<!-- <input type="text" class="form-control form-filter input-sm" name="nbbm"> -->
  73 + <select class="form-control" name="nbbm" id="nbbm" style="width: 150px;"></select>
73 </td> 74 </td>
74 <td> 75 <td>
75 </td> 76 </td>
@@ -119,10 +120,10 @@ @@ -119,10 +120,10 @@
119 </td> 120 </td>
120 121
121 <td> 122 <td>
122 - {{obj.lon}} 123 + {{obj.jsy}}
123 </td> 124 </td>
124 <td> 125 <td>
125 - {{obj.lat}} 126 + {{obj.lpname}}
126 </td> 127 </td>
127 <td> 128 <td>
128 {{if obj.upDown==0}} 129 {{if obj.upDown==0}}
@@ -271,45 +272,67 @@ $(function(){ @@ -271,45 +272,67 @@ $(function(){
271 }); 272 });
272 273
273 //搜索线路 274 //搜索线路
274 - $('#line').select2({  
275 - ajax: {  
276 - url: '/realSchedule/findLine',  
277 - type: 'post',  
278 - dataType: 'json',  
279 - delay: 150,  
280 - data: function(params){  
281 - return{line: params.term};  
282 - },  
283 - processResults: function (data) {  
284 - return {  
285 - results: data  
286 - };  
287 - },  
288 - cache: true  
289 - },  
290 - templateResult: function(repo){  
291 - if (repo.loading) return repo.text;  
292 - var h = '<span>'+repo.text+'</span>';  
293 - return h;  
294 - },  
295 - escapeMarkup: function (markup) { return markup; },  
296 - minimumInputLength: 1,  
297 - templateSelection: function(repo){  
298 - return repo.text;  
299 - },  
300 - language: {  
301 - noResults: function(){  
302 - return '<span style="color:red;font-size: 12px;">没有搜索到线路!</span>';  
303 - },  
304 - inputTooShort : function(e) {  
305 - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入线路搜索线路</span>';  
306 - },  
307 - searching : function() {  
308 - return '<span style="color:gray;font-size: 12px;"> 正在搜索线路...</span>';  
309 - }  
310 - } 275 + $.get('/basic/lineCode2Name',function(result){
  276 + var data=[];
  277 + data.push({id: " ", text: "全部线路"});
  278 + for(var code in result){
  279 + data.push({id: code, text: result[code]});
  280 + }
  281 + initPinYinSelect2('#line',data,'');
  282 +
311 }); 283 });
312 -}); 284 +
  285 + $("#line").on("change",initXl);
  286 +
  287 +function initXl(){
  288 +$('#nbbm').select2({
  289 + placeholder: '搜索车辆...',
  290 + ajax: {
  291 + url: '/report/carList',
  292 + dataType: 'json',
  293 + delay: 150,
  294 + data: function (params) {
  295 + return {nbbm: params.term,
  296 + gsbm:" ",
  297 + fgsbm:" ",
  298 + xlbm:$('#line').val()};
  299 + },
  300 + processResults: function (data) {
  301 + return {
  302 + results: data
  303 + };
  304 + },
  305 + cache: true
  306 + },
  307 + templateResult: function (repo) {
  308 + if (repo.loading) return repo.text;
  309 + var h = '<span>' + repo.text + '</span>';
  310 + h += (repo.lineName ? '&nbsp;<span class="select2-desc">' + repo.lineName + '</span>' : '');
  311 + return h;
  312 + },
  313 + escapeMarkup: function (markup) {
  314 + return markup;
  315 + },
  316 + minimumInputLength: 1,
  317 + templateSelection: function (repo) {
  318 + return repo.text;
  319 + },
  320 + language: {
  321 + noResults: function () {
  322 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  323 + },
  324 + inputTooShort: function (e) {
  325 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  326 + },
  327 + searching: function () {
  328 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  329 + }
  330 + }
  331 +})
  332 +};
  333 +
  334 +
  335 +
313 //改变状态 336 //改变状态
314 function changeEnabled(id,enabled){ 337 function changeEnabled(id,enabled){
315 debugger 338 debugger
@@ -317,4 +340,5 @@ function changeEnabled(id,enabled){ @@ -317,4 +340,5 @@ function changeEnabled(id,enabled){
317 jsDoQuery(null, true); 340 jsDoQuery(null, true);
318 }) 341 })
319 } 342 }
  343 +});
320 </script> 344 </script>
321 \ No newline at end of file 345 \ No newline at end of file
src/main/resources/static/pages/excep/offlineList.html
@@ -55,9 +55,9 @@ @@ -55,9 +55,9 @@
55 <tr role="row" class="heading"> 55 <tr role="row" class="heading">
56 <th width="3%">#</th> 56 <th width="3%">#</th>
57 <th width="15%">线路</th> 57 <th width="15%">线路</th>
58 - <th width="13%">内部编码</th>  
59 - <th width="100">经度</th>  
60 - <th width="11%">纬度</th> 58 + <th width="13%">车辆自编号</th>
  59 + <th width="100">工号/名字</th>
  60 + <th width="11%">路牌名</th>
61 <th width="10%">上下行</th> 61 <th width="10%">上下行</th>
62 <th width="18%">时间</th> 62 <th width="18%">时间</th>
63 <th width="18%">操作</th> 63 <th width="18%">操作</th>
@@ -66,10 +66,12 @@ @@ -66,10 +66,12 @@
66 <td></td> 66 <td></td>
67 <td> 67 <td>
68 <!-- <input type="text" class="form-control form-filter input-sm" name="userName_like"> --> 68 <!-- <input type="text" class="form-control form-filter input-sm" name="userName_like"> -->
69 - <select class="form-control" name="line" id="line" style="width: 180px;"></select> 69 + <select class="form-control" name="line" id="line" style="width: 150px;"></select>
70 </td> 70 </td>
71 <td> 71 <td>
72 - <input type="text" class="form-control form-filter input-sm" name="nbbm"> 72 +<!-- <input type="text" class="form-control form-filter input-sm" name="nbbm" id="nbbm"> -->
  73 +
  74 + <select class="form-control" name="nbbm" id="nbbm" style="width: 150px;"></select>
73 </td> 75 </td>
74 <td> 76 <td>
75 </td> 77 </td>
@@ -119,10 +121,10 @@ @@ -119,10 +121,10 @@
119 </td> 121 </td>
120 122
121 <td> 123 <td>
122 - {{obj.lon}} 124 + {{obj.jsy}}
123 </td> 125 </td>
124 <td> 126 <td>
125 - {{obj.lat}} 127 + {{obj.lpname}}
126 </td> 128 </td>
127 <td> 129 <td>
128 {{if obj.upDown==0}} 130 {{if obj.upDown==0}}
@@ -275,43 +277,64 @@ $(function(){ @@ -275,43 +277,64 @@ $(function(){
275 }); 277 });
276 278
277 //搜索线路 279 //搜索线路
278 - $('#line').select2({  
279 - ajax: {  
280 - url: '/realSchedule/findLine',  
281 - type: 'post',  
282 - dataType: 'json',  
283 - delay: 150,  
284 - data: function(params){  
285 - return{line: params.term};  
286 - },  
287 - processResults: function (data) {  
288 - return {  
289 - results: data  
290 - };  
291 - },  
292 - cache: true  
293 - },  
294 - templateResult: function(repo){  
295 - if (repo.loading) return repo.text;  
296 - var h = '<span>'+repo.text+'</span>';  
297 - return h;  
298 - },  
299 - escapeMarkup: function (markup) { return markup; },  
300 - minimumInputLength: 1,  
301 - templateSelection: function(repo){  
302 - return repo.text;  
303 - },  
304 - language: {  
305 - noResults: function(){  
306 - return '<span style="color:red;font-size: 12px;">没有搜索到线路!</span>';  
307 - },  
308 - inputTooShort : function(e) {  
309 - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入线路搜索线路</span>';  
310 - },  
311 - searching : function() {  
312 - return '<span style="color:gray;font-size: 12px;"> 正在搜索线路...</span>';  
313 - }  
314 - } 280 +
  281 + $.get('/basic/lineCode2Name',function(result){
  282 + var data=[];
  283 + data.push({id: " ", text: "全部线路"});
  284 + for(var code in result){
  285 + data.push({id: code, text: result[code]});
  286 + }
  287 + initPinYinSelect2('#line',data,'');
  288 +
315 }); 289 });
  290 +
  291 + $("#line").on("change",initXl);
  292 +function initXl(){
  293 + $('#nbbm').select2({
  294 + placeholder: '搜索车辆...',
  295 + ajax: {
  296 + url: '/report/carList',
  297 + dataType: 'json',
  298 + delay: 150,
  299 + data: function (params) {
  300 + return {nbbm: params.term,
  301 + gsbm:"",
  302 + fgsbm:"",
  303 + xlbm:$('#line').val()};
  304 + },
  305 + processResults: function (data) {
  306 + return {
  307 + results: data
  308 + };
  309 + },
  310 + cache: true
  311 + },
  312 + templateResult: function (repo) {
  313 + if (repo.loading) return repo.text;
  314 + var h = '<span>' + repo.text + '</span>';
  315 + h += (repo.lineName ? '&nbsp;<span class="select2-desc">' + repo.lineName + '</span>' : '');
  316 + return h;
  317 + },
  318 + escapeMarkup: function (markup) {
  319 + return markup;
  320 + },
  321 + minimumInputLength: 1,
  322 + templateSelection: function (repo) {
  323 + return repo.text;
  324 + },
  325 + language: {
  326 + noResults: function () {
  327 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  328 + },
  329 + inputTooShort: function (e) {
  330 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  331 + },
  332 + searching: function () {
  333 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  334 + }
  335 + }
  336 + });
  337 +}
  338 +
316 }); 339 });
317 </script> 340 </script>
318 \ No newline at end of file 341 \ No newline at end of file
src/main/resources/static/pages/excep/speedingList.html
@@ -55,9 +55,9 @@ @@ -55,9 +55,9 @@
55 <tr role="row" class="heading"> 55 <tr role="row" class="heading">
56 <th width="3%">#</th> 56 <th width="3%">#</th>
57 <th width="15%">线路</th> 57 <th width="15%">线路</th>
58 - <th width="13%">内部编码</th>  
59 - <th width="100">经度</th>  
60 - <th width="11%">纬度</th> 58 + <th width="13%">车辆自编号</th>
  59 + <th width="100">工号/名字</th>
  60 + <th width="11%">路牌名</th>
61 <th width="10%">上下行</th> 61 <th width="10%">上下行</th>
62 <th width="18%">时间</th> 62 <th width="18%">时间</th>
63 <th width="18%">操作</th> 63 <th width="18%">操作</th>
@@ -69,10 +69,11 @@ @@ -69,10 +69,11 @@
69 <select class="form-control" name="line" id="line" style="width: 180px;"></select> 69 <select class="form-control" name="line" id="line" style="width: 180px;"></select>
70 </td> 70 </td>
71 <td> 71 <td>
72 - <input type="text" class="form-control form-filter input-sm" name="nbbm"> 72 +<!-- <input type="text" class="form-control form-filter input-sm" name="nbbm"> -->
  73 + <select class="form-control" name="nbbm" id="nbbm" style="width: 150px;"></select>
73 </td> 74 </td>
74 <td> 75 <td>
75 - <input class="form-control" type="date" name="date" /> 76 +
76 </td> 77 </td>
77 <td></td> 78 <td></td>
78 <td> 79 <td>
@@ -83,7 +84,7 @@ @@ -83,7 +84,7 @@
83 <option value="-1">无效</option> 84 <option value="-1">无效</option>
84 </select> 85 </select>
85 </td> 86 </td>
86 - <td></td> 87 + <td> <input class="form-control" type="date" name="date" /></td>
87 <td> 88 <td>
88 <button class="btn btn-sm green btn-outline filter-submit margin-bottom" > 89 <button class="btn btn-sm green btn-outline filter-submit margin-bottom" >
89 <i class="fa fa-search"></i> 搜索</button> 90 <i class="fa fa-search"></i> 搜索</button>
@@ -118,10 +119,10 @@ @@ -118,10 +119,10 @@
118 </td> 119 </td>
119 120
120 <td> 121 <td>
121 - {{obj.lon}} 122 + {{obj.jsy}}
122 </td> 123 </td>
123 <td> 124 <td>
124 - {{obj.lat}} 125 + {{obj.lpname}}
125 </td> 126 </td>
126 <td> 127 <td>
127 {{if obj.upDown==0}} 128 {{if obj.upDown==0}}
@@ -270,45 +271,65 @@ $(function(){ @@ -270,45 +271,65 @@ $(function(){
270 }); 271 });
271 272
272 //搜索线路 273 //搜索线路
273 - $('#line').select2({  
274 - ajax: {  
275 - url: '/realSchedule/findLine',  
276 - type: 'post',  
277 - dataType: 'json',  
278 - delay: 150,  
279 - data: function(params){  
280 - return{line: params.term};  
281 - },  
282 - processResults: function (data) {  
283 - return {  
284 - results: data  
285 - };  
286 - },  
287 - cache: true  
288 - },  
289 - templateResult: function(repo){  
290 - if (repo.loading) return repo.text;  
291 - var h = '<span>'+repo.text+'</span>';  
292 - return h;  
293 - },  
294 - escapeMarkup: function (markup) { return markup; },  
295 - minimumInputLength: 1,  
296 - templateSelection: function(repo){  
297 - return repo.text;  
298 - },  
299 - language: {  
300 - noResults: function(){  
301 - return '<span style="color:red;font-size: 12px;">没有搜索到线路!</span>';  
302 - },  
303 - inputTooShort : function(e) {  
304 - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入线路搜索线路</span>';  
305 - },  
306 - searching : function() {  
307 - return '<span style="color:gray;font-size: 12px;"> 正在搜索线路...</span>';  
308 - } 274 + $.get('/basic/lineCode2Name',function(result){
  275 + var data=[];
  276 + data.push({id: " ", text: "全部线路"});
  277 + for(var code in result){
  278 + data.push({id: code, text: result[code]});
309 } 279 }
310 - }); 280 + initPinYinSelect2('#line',data,'');
  281 +
  282 +});
  283 +
  284 +$("#line").on("change",initXl);
  285 +function initXl(){
  286 +$('#nbbm').select2({
  287 + placeholder: '搜索车辆...',
  288 + ajax: {
  289 + url: '/report/carList',
  290 + dataType: 'json',
  291 + delay: 150,
  292 + data: function (params) {
  293 + return {nbbm: params.term,
  294 + gsbm:"",
  295 + fgsbm:"",
  296 + xlbm:$('#line').val()};
  297 + },
  298 + processResults: function (data) {
  299 + return {
  300 + results: data
  301 + };
  302 + },
  303 + cache: true
  304 + },
  305 + templateResult: function (repo) {
  306 + if (repo.loading) return repo.text;
  307 + var h = '<span>' + repo.text + '</span>';
  308 + h += (repo.lineName ? '&nbsp;<span class="select2-desc">' + repo.lineName + '</span>' : '');
  309 + return h;
  310 + },
  311 + escapeMarkup: function (markup) {
  312 + return markup;
  313 + },
  314 + minimumInputLength: 1,
  315 + templateSelection: function (repo) {
  316 + return repo.text;
  317 + },
  318 + language: {
  319 + noResults: function () {
  320 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  321 + },
  322 + inputTooShort: function (e) {
  323 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  324 + },
  325 + searching: function () {
  326 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  327 + }
  328 + }
311 }); 329 });
  330 +}
  331 +
  332 +
312 //改变状态 333 //改变状态
313 function changeEnabled(id,enabled){ 334 function changeEnabled(id,enabled){
314 debugger 335 debugger
@@ -316,4 +337,5 @@ function changeEnabled(id,enabled){ @@ -316,4 +337,5 @@ function changeEnabled(id,enabled){
316 jsDoQuery(null, true); 337 jsDoQuery(null, true);
317 }) 338 })
318 } 339 }
  340 +});
319 </script> 341 </script>
320 \ No newline at end of file 342 \ No newline at end of file
src/main/resources/static/real_control_v2/css/line_schedule.css
@@ -114,15 +114,15 @@ @@ -114,15 +114,15 @@
114 } 114 }
115 115
116 .line-schedule-table dl dt:nth-of-type(7), .line-schedule-table dl dd:nth-of-type(7) { 116 .line-schedule-table dl dt:nth-of-type(7), .line-schedule-table dl dd:nth-of-type(7) {
117 - width: 10%; 117 + width: calc(10% + 10px);
118 } 118 }
119 119
120 .line-schedule-table dl dt:nth-of-type(8), .line-schedule-table dl dd:nth-of-type(8) { 120 .line-schedule-table dl dt:nth-of-type(8), .line-schedule-table dl dd:nth-of-type(8) {
121 - width: calc(51% - 238px); 121 + width: calc(51% - 233px);
122 } 122 }
123 123
124 .line-schedule-table dl dt:nth-of-type(9), .line-schedule-table dl dd:nth-of-type(9) { 124 .line-schedule-table dl dt:nth-of-type(9), .line-schedule-table dl dd:nth-of-type(9) {
125 - width: 70px; 125 + width: 65px;
126 border-right: 0; 126 border-right: 0;
127 } 127 }
128 128
src/main/resources/static/real_control_v2/css/main.css
@@ -923,4 +923,41 @@ option.oil_station_opt{ @@ -923,4 +923,41 @@ option.oil_station_opt{
923 } 923 }
924 .park-and-station-wrap select{ 924 .park-and-station-wrap select{
925 width: auto !important; 925 width: auto !important;
  926 +}
  927 +
  928 +/** 安全驾驶相关css */
  929 +.safe_driv_pop_wrap{
  930 + position: absolute;
  931 + right: 12px;
  932 + bottom: 12px;
  933 +}
  934 +
  935 +.safe_driv_pop{
  936 + height: 45px;
  937 + background: #d44b4b;
  938 + color: #f2f2f2;
  939 + font-size: 15px;
  940 + padding: 9px 10px 0;
  941 + border: 1px solid #f4f0f0;
  942 + border-radius: 5px;
  943 + cursor: pointer;
  944 + box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  945 +}
  946 +
  947 +.safe_driv_pop:hover{
  948 + background: #bc2a2a;
  949 +}
  950 +
  951 +.safe_driv_pop .title{
  952 + font-weight: 600;
  953 +}
  954 +
  955 +.safe_driv_pop i.uk-icon-times-circle{
  956 + margin-right: 5px;
  957 +}
  958 +.safe_driv_pop .desc{
  959 + display: block;
  960 + font-size: 12px;
  961 + margin: 2px 0 0 20px;
  962 + color: #e3e3e3;
926 } 963 }
927 \ No newline at end of file 964 \ No newline at end of file
src/main/resources/static/real_control_v2/css/modal_extend.css
1 -.uk-modal{ 1 +.uk-modal.ct_move_modal{
2 background: rgba(0,0,0,.4) !important; 2 background: rgba(0,0,0,.4) !important;
3 } 3 }
4 4
5 -.uk-modal-dialog{ 5 +.uk-modal.ct_move_modal .uk-modal-dialog{
6 border: 1px solid #dd6952; 6 border: 1px solid #dd6952;
7 7
8 position: absolute !important; 8 position: absolute !important;
9 margin: 0 !important; 9 margin: 0 !important;
10 } 10 }
11 11
12 -.uk-modal-dialog.uk-modal-dialog-blank{ 12 +.uk-modal.ct_move_modal .uk-modal-dialog.uk-modal-dialog-blank{
13 border: none !important; 13 border: none !important;
14 } 14 }
15 15
16 -.uk-modal-header{ 16 +.uk-modal.ct_move_modal .uk-modal-header{
17 cursor: move; 17 cursor: move;
18 user-select: none; 18 user-select: none;
19 } 19 }
20 \ No newline at end of file 20 \ No newline at end of file
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/add_temp_sch.html
1 -<div class="uk-modal ct-form-modal" id="schedule-addsch-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-addsch-modal">
2 <div class="uk-modal-dialog"> 2 <div class="uk-modal-dialog">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/dftz.html
1 -<div class="uk-modal ct-form-modal" id="schedule-dftz-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-dftz-modal">
2 <div class="uk-modal-dialog"> 2 <div class="uk-modal-dialog">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/fcxxwt.html
1 -<div class="uk-modal ct-form-modal" id="schedule-fcxxwt-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-fcxxwt-modal">
2 <div class="uk-modal-dialog"> 2 <div class="uk-modal-dialog">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/jhlb.html
1 -<div class="uk-modal ct-form-modal" id="schedule-jhlb-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-jhlb-modal">
2 <div class="uk-modal-dialog" style="width: 370px;"> 2 <div class="uk-modal-dialog" style="width: 370px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lj_zrw.html
1 -<div class="uk-modal ct-form-modal" id="schedule-lj_zrw-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-lj_zrw-modal">
2 <div class="uk-modal-dialog" style="width: 930px;"> 2 <div class="uk-modal-dialog" style="width: 930px;">
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">
@@ -270,7 +270,7 @@ @@ -270,7 +270,7 @@
270 if (sum != sch.jhlcOrig) { 270 if (sum != sch.jhlcOrig) {
271 if (i > 1) 271 if (i > 1)
272 calcs += ('=' + sum); 272 calcs += ('=' + sum);
273 - calcs += (' ≠ ' + sch.jhlc); 273 + calcs += (' ≠ ' + sch.jhlcOrig);
274 calcs = calcs.substr(3); 274 calcs = calcs.substr(3);
275 var htmlStr = template('sub_task-fail-status-temp', {calcs: calcs}); 275 var htmlStr = template('sub_task-fail-status-temp', {calcs: calcs});
276 $('#childTaskTitle', modal).append(htmlStr); 276 $('#childTaskTitle', modal).append(htmlStr);
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lp_change.html
1 -<div class="uk-modal" id="schedule-lp_change-modal"> 1 +<div class="uk-modal ct_move_modal" id="schedule-lp_change-modal">
2 <div class="uk-modal-dialog" style="width: 1240px;"> 2 <div class="uk-modal-dialog" style="width: 1240px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/multi_dftz.html
1 -<div class="uk-modal" id="schedule-multi-dftz-modal"> 1 +<div class="uk-modal ct_move_modal" id="schedule-multi-dftz-modal">
2 <div class="uk-modal-dialog" style="width: 710px;"> 2 <div class="uk-modal-dialog" style="width: 710px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/multi_tzrc.html
1 -<div class="uk-modal" id="schedule-multi-tzrc-modal"> 1 +<div class="uk-modal ct_move_modal" id="schedule-multi-tzrc-modal">
2 <div class="drag-container"></div> 2 <div class="drag-container"></div>
3 <div class="uk-modal-dialog" style="width: 860px;"> 3 <div class="uk-modal-dialog" style="width: 860px;">
4 <a href="" class="uk-modal-close uk-close"></a> 4 <a href="" class="uk-modal-close uk-close"></a>
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sftz.html
1 -<div class="uk-modal ct-form-modal" id="schedule-sftz-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-sftz-modal">
2 <div class="uk-modal-dialog" style="width: 350px;"> 2 <div class="uk-modal-dialog" style="width: 350px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_inpark.html
1 -<div class="uk-modal" id="add-sub-task-inpark-modal"> 1 +<div class="uk-modal ct_move_modal" id="add-sub-task-inpark-modal">
2 <div class="uk-modal-dialog"> 2 <div class="uk-modal-dialog">
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">
@@ -476,7 +476,7 @@ @@ -476,7 +476,7 @@
476 $('input[name=mileage]', serviceForm).val(sMileage); 476 $('input[name=mileage]', serviceForm).val(sMileage);
477 477
478 //营运结束时间 478 //营运结束时间
479 - var et = sch.dfsjT + (parseInt(sMileage / sch.jhlc * sch.bcsj) * 60 * 1000) 479 + var et = sch.dfsjT + (parseInt(sMileage / sch.jhlcOrig * sch.bcsj) * 60 * 1000)
480 ,ets = et > sch.zdsjT?sch.zdsj:moment(et).format('HH:mm'); 480 ,ets = et > sch.zdsjT?sch.zdsj:moment(et).format('HH:mm');
481 $('input[name=endDate]', serviceForm).val(ets); 481 $('input[name=endDate]', serviceForm).val(ets);
482 482
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_oil.html
1 -<div class="uk-modal ct-form-modal" id="schedule-addsch_oil-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-addsch_oil-modal">
2 <div class="uk-modal-dialog" style="width: 1201px;"> 2 <div class="uk-modal-dialog" style="width: 1201px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_other.html
1 -<div class="uk-modal ct-form-modal" id="add-sub-task-other-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="add-sub-task-other-modal">
2 <div class="uk-modal-dialog" style="width: 635px;"> 2 <div class="uk-modal-dialog" style="width: 635px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_outpark.html
1 -<div class="uk-modal" id="add-sub-task-inpark-modal"> 1 +<div class="uk-modal ct_move_modal" id="add-sub-task-inpark-modal">
2 <div class="uk-modal-dialog"> 2 <div class="uk-modal-dialog">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/add_sub_task_range_turn.html
1 -<div class="uk-modal ct-form-modal" id="add-sub-task-range_turn-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="add-sub-task-range_turn-modal">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/oil_station.html
1 -<div class="uk-modal ct-form-modal" id="oil_station-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="oil_station-modal">
2 <div class="uk-modal-dialog" style="width: 450px;"> 2 <div class="uk-modal-dialog" style="width: 450px;">
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">
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/tzrc.html
1 -<div class="uk-modal ct-form-modal" id="schedule-tzrc-modal"> 1 +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-tzrc-modal">
2 <div class="uk-modal-dialog" style="width: 680px;"> 2 <div class="uk-modal-dialog" style="width: 680px;">
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">
src/main/resources/static/real_control_v2/js/modal_extend.js
@@ -3,13 +3,14 @@ $(document).on(&#39;hide.uk.modal&#39;, &#39;.uk-modal&#39;, function () { @@ -3,13 +3,14 @@ $(document).on(&#39;hide.uk.modal&#39;, &#39;.uk-modal&#39;, function () {
3 $(this).remove(); 3 $(this).remove();
4 }); 4 });
5 5
6 -$(document).on('show.uk.modal', '.uk-modal', function () { 6 +$(document).on('show.uk.modal', '.uk-modal.ct_move_modal', function () {
7 if($('.uk-modal-dialog', this).hasClass('uk-modal-dialog-blank')) 7 if($('.uk-modal-dialog', this).hasClass('uk-modal-dialog-blank'))
8 return; 8 return;
9 9
10 - //临时放过g'ji轨迹回放  
11 - if($(this).attr('id')=='map-playback-modal')  
12 - return; 10 + /* //临时放过轨迹回放
  11 + if($(this).attr('id')=='map-playback-modal')
  12 + return;*/
  13 +
13 //计算居中位置 14 //计算居中位置
14 var win = $('body'); 15 var win = $('body');
15 var Y = (win.width() - $('.uk-modal-dialog', this).width()) / 2 - 10; 16 var Y = (win.width() - $('.uk-modal-dialog', this).width()) / 2 - 10;
@@ -19,7 +20,7 @@ $(document).on(&#39;show.uk.modal&#39;, &#39;.uk-modal&#39;, function () { @@ -19,7 +20,7 @@ $(document).on(&#39;show.uk.modal&#39;, &#39;.uk-modal&#39;, function () {
19 var show_modal = function (id, dom) { 20 var show_modal = function (id, dom) {
20 $(document.body).append(dom); 21 $(document.body).append(dom);
21 return UIkit.modal(id, { 22 return UIkit.modal(id, {
22 - bgclose: false 23 + bgclose: false, modal: false
23 }).show(); 24 }).show();
24 }; 25 };
25 26
@@ -39,7 +40,8 @@ var open_modal_dom = function (dom, data, opt) { @@ -39,7 +40,8 @@ var open_modal_dom = function (dom, data, opt) {
39 $(document.body).append(dom); 40 $(document.body).append(dom);
40 UIkit.modal(id, opt).show(); 41 UIkit.modal(id, opt).show();
41 //move 42 //move
42 - modal_move($('.uk-modal-header',id)); 43 + if($(id).hasClass('ct_move_modal'))
  44 + modal_move($('.uk-modal-header',id));
43 45
44 if (data) 46 if (data)
45 $(id).trigger('init', data); 47 $(id).trigger('init', data);
@@ -64,7 +66,6 @@ var modal_move = function (m_header) { @@ -64,7 +66,6 @@ var modal_move = function (m_header) {
64 }); 66 });
65 67
66 $(m_header).parents('.uk-modal').mousemove(function (e) { 68 $(m_header).parents('.uk-modal').mousemove(function (e) {
67 - e.preventDefault();  
68 if(!_moveFlag || !_moveObj) 69 if(!_moveFlag || !_moveObj)
69 return; 70 return;
70 71
@@ -91,5 +92,4 @@ var modal_move = function (m_header) { @@ -91,5 +92,4 @@ var modal_move = function (m_header) {
91 _moveFlag = false; 92 _moveFlag = false;
92 _moveObj = null; 93 _moveObj = null;
93 }); 94 });
94 -  
95 }; 95 };
96 \ No newline at end of file 96 \ No newline at end of file
src/main/resources/static/real_control_v2/js/safe_driv/safeDriv.js 0 → 100644
  1 +/**
  2 + * 安全驾驶相关
  3 + */
  4 +var gb_safe_driv = (function () {
  5 +
  6 + var codes = {
  7 + 'A1': '手部违规',
  8 + 'A2': '摄像头偏离',
  9 + 'A3': '安全带',
  10 + 'A4': '手臂袖章',
  11 + 'A5': '脸部检测'
  12 + };
  13 +
  14 + var $wrap = $('.safe_driv_pop_wrap');
  15 + var max = 5;
  16 +
  17 + var pop = function (sd) {
  18 + //只有admin用户能收到
  19 + var user = gb_northToolbar.user();
  20 + if(!user || user.userName.indexOf('admin') == -1)
  21 + return;
  22 +
  23 + var htmlStr = '<div class="safe_driv_pop uk-animation-slide-bottom">'+
  24 + ' <span class="title"><i class="uk-icon-times-circle"></i>安全驾驶 '+moment(sd.ts).format('HH:mm')+'</span>'+
  25 + ' <span class="text"> '+sd.clzbh+' 违规驾驶('+codes[sd.yczltype]+')</span><span class="desc">请至安全驾驶监管平台查看图像信息</span>'+
  26 + '</div>';
  27 +
  28 + var items = $wrap.find('.safe_driv_pop'), len = items.length;
  29 + if(len >= max)
  30 + $wrap.find('.safe_driv_pop:lt('+(len - max)+')').remove();
  31 +
  32 + $wrap.append(htmlStr);
  33 + };
  34 +
  35 + $wrap.on('click', '.safe_driv_pop', function () {
  36 + $(this).remove();
  37 + });
  38 +
  39 + return {
  40 + pop: pop
  41 + }
  42 +})();
0 \ No newline at end of file 43 \ No newline at end of file
src/main/resources/static/real_control_v2/js/websocket/sch_websocket.js
@@ -70,6 +70,10 @@ var gb_sch_websocket = (function () { @@ -70,6 +70,10 @@ var gb_sch_websocket = (function () {
70 calcUntreated(msg.data.lineId); 70 calcUntreated(msg.data.lineId);
71 }; 71 };
72 72
  73 + var safeDriv = function (msg) {
  74 + gb_safe_driv.pop(msg.t);
  75 + };
  76 +
73 var waitRemoves = []; 77 var waitRemoves = [];
74 //车辆发出 78 //车辆发出
75 var faChe = function (msg) { 79 var faChe = function (msg) {
@@ -150,7 +154,8 @@ var gb_sch_websocket = (function () { @@ -150,7 +154,8 @@ var gb_sch_websocket = (function () {
150 d80Confirm: d80Confirm, 154 d80Confirm: d80Confirm,
151 directive: directiveStatus, 155 directive: directiveStatus,
152 signal_state: signalState, 156 signal_state: signalState,
153 - deviceOffline: deviceOffline 157 + deviceOffline: deviceOffline,
  158 + safeDriv: safeDriv
154 }; 159 };
155 160
156 function currentSecond() { 161 function currentSecond() {
src/main/resources/static/real_control_v2/main.html
@@ -60,6 +60,7 @@ @@ -60,6 +60,7 @@
60 </div> 60 </div>
61 </div> 61 </div>
62 62
  63 +<div class="safe_driv_pop_wrap"></div>
63 <script> 64 <script>
64 delete window.exports; 65 delete window.exports;
65 delete window.module; 66 delete window.module;
@@ -182,8 +183,10 @@ @@ -182,8 +183,10 @@
182 183
183 <!-- 处理表单片段嵌入问题 --> 184 <!-- 处理表单片段嵌入问题 -->
184 <script src="/real_control_v2/js/forms/form_embed.js"></script> 185 <script src="/real_control_v2/js/forms/form_embed.js"></script>
185 - 186 +<!-- 模态框扩展 -->
186 <script src="/real_control_v2/js/modal_extend.js"></script> 187 <script src="/real_control_v2/js/modal_extend.js"></script>
  188 +<!-- 安全驾驶相关 -->
  189 +<script src="/real_control_v2/js/safe_driv/safeDriv.js" ></script>
187 </body> 190 </body>
188 191
189 </html> 192 </html>
src/main/resources/static/real_control_v2/mapmonitor/fragments/playback_v2/main.html
@@ -245,154 +245,6 @@ @@ -245,154 +245,6 @@
245 </dl> 245 </dl>
246 </div> 246 </div>
247 <div class="ct_table_body"> 247 <div class="ct_table_body">
248 - <dl>  
249 - <dd>金桥路朴珊德拉</dd>  
250 - <dd>05:02.4</dd>  
251 - <dd>05:04.6</dd>  
252 - <dd>5</dd>  
253 - <dd>12</dd>  
254 - </dl>  
255 - <dl>  
256 - <dd>金桥路朴珊德拉</dd>  
257 - <dd>05:02.4</dd>  
258 - <dd>05:04.6</dd>  
259 - <dd>5</dd>  
260 - <dd>12</dd>  
261 - </dl>  
262 - <dl>  
263 - <dd>金桥路朴珊德拉</dd>  
264 - <dd>05:02.4</dd>  
265 - <dd>05:04.6</dd>  
266 - <dd>5</dd>  
267 - <dd>12</dd>  
268 - </dl>  
269 - <dl>  
270 - <dd>金桥路朴珊德拉</dd>  
271 - <dd>05:02.4</dd>  
272 - <dd>05:04.6</dd>  
273 - <dd>5</dd>  
274 - <dd>12</dd>  
275 - </dl>  
276 - <dl>  
277 - <dd>金桥路朴珊德拉</dd>  
278 - <dd>05:02.4</dd>  
279 - <dd>05:04.6</dd>  
280 - <dd>5</dd>  
281 - <dd>12</dd>  
282 - </dl>  
283 - <dl>  
284 - <dd>金桥路朴珊德拉</dd>  
285 - <dd>05:02.4</dd>  
286 - <dd>05:04.6</dd>  
287 - <dd>5</dd>  
288 - <dd>12</dd>  
289 - </dl>  
290 - <dl>  
291 - <dd>金桥路朴珊德拉</dd>  
292 - <dd>05:02.4</dd>  
293 - <dd>05:04.6</dd>  
294 - <dd>5</dd>  
295 - <dd>12</dd>  
296 - </dl>  
297 - <dl>  
298 - <dd>金桥路朴珊德拉</dd>  
299 - <dd>05:02.4</dd>  
300 - <dd>05:04.6</dd>  
301 - <dd>5</dd>  
302 - <dd>12</dd>  
303 - </dl>  
304 - <dl>  
305 - <dd>金桥路朴珊德拉</dd>  
306 - <dd>05:02.4</dd>  
307 - <dd>05:04.6</dd>  
308 - <dd>5</dd>  
309 - <dd>12</dd>  
310 - </dl>  
311 - <dl>  
312 - <dd>金桥路朴珊德拉</dd>  
313 - <dd>05:02.4</dd>  
314 - <dd>05:04.6</dd>  
315 - <dd>5</dd>  
316 - <dd>12</dd>  
317 - </dl>  
318 - <dl>  
319 - <dd>金桥路朴珊德拉</dd>  
320 - <dd>05:02.4</dd>  
321 - <dd>05:04.6</dd>  
322 - <dd>5</dd>  
323 - <dd>12</dd>  
324 - </dl>  
325 - <dl>  
326 - <dd>金桥路朴珊德拉</dd>  
327 - <dd>05:02.4</dd>  
328 - <dd>05:04.6</dd>  
329 - <dd>5</dd>  
330 - <dd>12</dd>  
331 - </dl>  
332 - <dl>  
333 - <dd>金桥路朴珊德拉</dd>  
334 - <dd>05:02.4</dd>  
335 - <dd>05:04.6</dd>  
336 - <dd>5</dd>  
337 - <dd>12</dd>  
338 - </dl>  
339 - <dl>  
340 - <dd>金桥路朴珊德拉</dd>  
341 - <dd>05:02.4</dd>  
342 - <dd>05:04.6</dd>  
343 - <dd>5</dd>  
344 - <dd>12</dd>  
345 - </dl>  
346 - <dl>  
347 - <dd>金桥路朴珊德拉</dd>  
348 - <dd>05:02.4</dd>  
349 - <dd>05:04.6</dd>  
350 - <dd>5</dd>  
351 - <dd>12</dd>  
352 - </dl>  
353 - <dl>  
354 - <dd>金桥路朴珊德拉</dd>  
355 - <dd>05:02.4</dd>  
356 - <dd>05:04.6</dd>  
357 - <dd>5</dd>  
358 - <dd>12</dd>  
359 - </dl>  
360 - <dl>  
361 - <dd>金桥路朴珊德拉</dd>  
362 - <dd>05:02.4</dd>  
363 - <dd>05:04.6</dd>  
364 - <dd>5</dd>  
365 - <dd>12</dd>  
366 - </dl>  
367 - <dl>  
368 - <dd>金桥路朴珊德拉</dd>  
369 - <dd>05:02.4</dd>  
370 - <dd>05:04.6</dd>  
371 - <dd>5</dd>  
372 - <dd>12</dd>  
373 - </dl>  
374 - <dl>  
375 - <dd>金桥路朴珊德拉</dd>  
376 - <dd>05:02.4</dd>  
377 - <dd>05:04.6</dd>  
378 - <dd>5</dd>  
379 - <dd>12</dd>  
380 - </dl>  
381 - <dl>  
382 - <dd>金桥路朴珊德拉</dd>  
383 - <dd>05:02.4</dd>  
384 - <dd>05:04.6</dd>  
385 - <dd>5</dd>  
386 - <dd>12</dd>  
387 - </dl>  
388 - <dl>  
389 - <dd>金桥路朴珊德拉</dd>  
390 - <dd>05:02.4</dd>  
391 - <dd>05:04.6</dd>  
392 - <dd>5</dd>  
393 - <dd>12</dd>  
394 - </dl>  
395 -  
396 </div> 248 </div>
397 </div> 249 </div>
398 </div> 250 </div>
@@ -429,16 +281,31 @@ @@ -429,16 +281,31 @@
429 </dl> 281 </dl>
430 {{/each}} 282 {{/each}}
431 </script> 283 </script>
  284 +
  285 + <script id="multi_inout_info_cont_temp" type="text/html">
  286 + {{each list as item i}}
  287 + <dl>
  288 + <dd>{{item.stopName}}</dd>
  289 + <dd>{{item.in_time_str}}</dd>
  290 + <dd>{{item.out_time_str}}</dd>
  291 + <dd></dd>
  292 + <dd></dd>
  293 + </dl>
  294 + {{/each}}
  295 + </script>
432 <script> 296 <script>
433 (function () { 297 (function () {
434 var modal = '#map-playback2-modal', gpsArray; 298 var modal = '#map-playback2-modal', gpsArray;
435 299
436 $(modal).on('init', function (e, data) { 300 $(modal).on('init', function (e, data) {
437 - //初始化地图  
438 - map = new BMap.Map($('.map-wrap', modal)[0]);  
439 - //中心点和缩放级别  
440 - map.centerAndZoom(new BMap.Point(gb_map_consts.center_point.lng, gb_map_consts.center_point.lat), 16);  
441 - map.enableScrollWheelZoom(); 301 + try{
  302 + //初始化地图
  303 + map = new BMap.Map($('.map-wrap', modal)[0]);
  304 + //中心点和缩放级别
  305 + map.centerAndZoom(new BMap.Point(gb_map_consts.center_point.lng, gb_map_consts.center_point.lat), 16);
  306 + map.enableScrollWheelZoom();
  307 + }catch (e){
  308 + console.log(e);}
442 309
443 //固定表头 310 //固定表头
444 gb_ct_table.fixedHead($('.road_table_wrap', modal)); 311 gb_ct_table.fixedHead($('.road_table_wrap', modal));
@@ -548,8 +415,15 @@ @@ -548,8 +415,15 @@
548 return; 415 return;
549 } 416 }
550 417
  418 + //排序
  419 + gpsArray.sort(function (a, b) {
  420 + return a.ts - b.ts;
  421 + });
  422 + console.log('gpsArray', gpsArray);
551 //行车轨迹 423 //行车轨迹
552 trailTableObj.showInitData(gpsArray); 424 trailTableObj.showInitData(gpsArray);
  425 + //到离站信息
  426 + inOutStationTableObj.showInitData(gpsArray);
553 } 427 }
554 }); 428 });
555 } 429 }
@@ -589,6 +463,79 @@ @@ -589,6 +463,79 @@
589 showInitData: showInitData 463 showInitData: showInitData
590 }; 464 };
591 })(); 465 })();
  466 +
  467 + /**
  468 + * 到离站信息表格
  469 + * @type {{}}
  470 + */
  471 + var inOutStationTableObj = (function () {
  472 +
  473 + var data = [];
  474 + var showInitData = function (list) {
  475 + clear();
  476 + data = [];
  477 +
  478 + $.each(list, function (i, gps) {
  479 + if(gps['inout_stop'] == -1)
  480 + return true;
  481 +
  482 + if(gps['inout_stop'] == 1){
  483 + data.push(createIn(gps));
  484 + }
  485 + else if(gps['inout_stop'] == 0){
  486 + matchOut(data[data.length - 1], gps);
  487 + }
  488 + });
  489 +
  490 + //格式化时间
  491 + $.each(data, function () {
  492 + if(this.in_ts)
  493 + this.in_time_str = moment(this.in_ts).format('HH:mm.ss');
  494 + if(this.out_ts)
  495 + this.out_time_str = moment(this.out_ts).format('HH:mm.ss');
  496 + });
  497 +
  498 + console.log('data', data);
  499 + var htmlStr = template('multi_inout_info_cont_temp', {list: data});
  500 + $('.inout_table_wrap .ct_table_body', modal).html(htmlStr);
  501 + };
  502 +
  503 + var add = function (gps) {
  504 +
  505 + /*if (gps.inout_stop == -1)
  506 + return;
  507 +
  508 + var htmlStr = template('', {obj: gps['inout_stop_info']});
  509 + $('.inout_table_wrap .ct_table .ct_table_body', modal).html(htmlStr);*/
  510 + };
  511 +
  512 + var clear = function () {
  513 +
  514 + };
  515 +
  516 + var createIn = function (gps) {
  517 + var info = gps['inout_stop_info'];
  518 + return {
  519 + in_ts: info.ts,
  520 + stopNo: info.stopNo,
  521 + stopName: info.stopName
  522 + }
  523 + };
  524 +
  525 +
  526 + var matchOut = function (info, gps) {
  527 + if(!info)
  528 + return;
  529 + var outInfo = gps['inout_stop_info'];
  530 + if(info.stopName == outInfo.stopName){
  531 + info['out_ts'] = outInfo.ts;
  532 + }
  533 + };
  534 +
  535 + return {
  536 + showInitData: showInitData
  537 + };
  538 + })();
592 })(); 539 })();
593 </script> 540 </script>
594 </div> 541 </div>
595 \ No newline at end of file 542 \ No newline at end of file