Commit 7838805faaf1af944b0ae00033cb1fbdceaf78aa

Authored by 徐烜
1 parent 71e82ae3

Update

src/main/java/com/bsth/entity/schedule/SchedulePlanInfo.java
@@ -157,6 +157,7 @@ public class SchedulePlanInfo { @@ -157,6 +157,7 @@ public class SchedulePlanInfo {
157 Line xl, 157 Line xl,
158 ScheduleResult_output scheduleResult_output, 158 ScheduleResult_output scheduleResult_output,
159 TTInfoDetail ttInfoDetail, 159 TTInfoDetail ttInfoDetail,
  160 + Boolean isFb,
160 CarConfigInfo carConfigInfo, 161 CarConfigInfo carConfigInfo,
161 List<EmployeeConfigInfo> employeeConfigInfoList, 162 List<EmployeeConfigInfo> employeeConfigInfoList,
162 SchedulePlan schedulePlan) { 163 SchedulePlan schedulePlan) {
@@ -191,7 +192,7 @@ public class SchedulePlanInfo { @@ -191,7 +192,7 @@ public class SchedulePlanInfo {
191 // TODO:报道时间,出场时间没有 192 // TODO:报道时间,出场时间没有
192 // 关联的驾驶员 193 // 关联的驾驶员
193 EmployeeConfigInfo employeeConfigInfo = null; 194 EmployeeConfigInfo employeeConfigInfo = null;
194 - if (ttInfoDetail.getIsFB()) { 195 + if (isFb) {
195 if (employeeConfigInfoList.size() > 1) { 196 if (employeeConfigInfoList.size() > 1) {
196 employeeConfigInfo = employeeConfigInfoList.get(1); 197 employeeConfigInfo = employeeConfigInfoList.get(1);
197 } else { 198 } else {
src/main/java/com/bsth/repository/schedule/SchedulePlanInfoRepository.java
@@ -33,17 +33,18 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI @@ -33,17 +33,18 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI
33 "lp_name as lpName, " + 33 "lp_name as lpName, " +
34 "cl as clId, " + 34 "cl as clId, " +
35 "cl_zbh as clZbh, " + 35 "cl_zbh as clZbh, " +
36 - "group_concat(distinct fcsj) ccsj, " + 36 + "group_concat(fcsj) ccsj, " +
  37 + "group_concat(bc_type) bctype, " +
37 "group_concat(distinct j) jsyId, " + 38 "group_concat(distinct j) jsyId, " +
38 "group_concat(distinct j_gh) jsyGh, " + 39 "group_concat(distinct j_gh) jsyGh, " +
39 "group_concat(distinct j_name) jsyName, " + 40 "group_concat(distinct j_name) jsyName, " +
40 "group_concat(distinct s) spyId, " + 41 "group_concat(distinct s) spyId, " +
41 "group_concat(distinct s_gh) spyGh, " + 42 "group_concat(distinct s_gh) spyGh, " +
42 "group_concat(distinct s_name) spyName, " + 43 "group_concat(distinct s_name) spyName, " +
43 - "max(create_date) as createDate " + 44 + "max(create_date) as createDate, " +
  45 + "group_concat(fcno) fcno " +
44 "from bsth_c_s_sp_info " + 46 "from bsth_c_s_sp_info " +
45 - "where bc_type = 'out' and " +  
46 - "xl = ?1 and " + 47 + "where xl = ?1 and " +
47 "schedule_date = ?2 " + 48 "schedule_date = ?2 " +
48 "group by xl_name, schedule_date, lp, lp_name, cl, cl_zbh " + 49 "group by xl_name, schedule_date, lp, lp_name, cl, cl_zbh " +
49 "order by xl_name, schedule_date, lp ", nativeQuery = true) 50 "order by xl_name, schedule_date, lp ", nativeQuery = true)
@@ -71,14 +72,16 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI @@ -71,14 +72,16 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI
71 "scpinfo.scheduleDate = :p3 and " + 72 "scpinfo.scheduleDate = :p3 and " +
72 "scpinfo.lpName = :p4 and " + 73 "scpinfo.lpName = :p4 and " +
73 "scpinfo.fcsj = :p5 and " + 74 "scpinfo.fcsj = :p5 and " +
74 - "scpinfo.bcType = :p6 ") 75 + "scpinfo.bcType = :p6 and " +
  76 + "scpinfo.fcno = :p7 " )
75 int updateGroupInfo_type_2_4( 77 int updateGroupInfo_type_2_4(
76 @Param("p1") String fcsj, 78 @Param("p1") String fcsj,
77 @Param("p2") Integer xlid, 79 @Param("p2") Integer xlid,
78 @Param("p3") Date scheduleDate, 80 @Param("p3") Date scheduleDate,
79 @Param("p4") String lpName, 81 @Param("p4") String lpName,
80 @Param("p5") String fcsj_src, 82 @Param("p5") String fcsj_src,
81 - @Param("p6") String bcType); 83 + @Param("p6") String bcType,
  84 + @Param("p7") Integer fcno);
82 85
83 @Modifying 86 @Modifying
84 @Query(value = "update " + 87 @Query(value = "update " +
src/main/java/com/bsth/service/schedule/SchedulePlanInfoService.java
@@ -4,6 +4,7 @@ import com.bsth.entity.schedule.SchedulePlanInfo; @@ -4,6 +4,7 @@ import com.bsth.entity.schedule.SchedulePlanInfo;
4 import com.bsth.service.BaseService; 4 import com.bsth.service.BaseService;
5 import org.joda.time.DateTime; 5 import org.joda.time.DateTime;
6 6
  7 +import java.util.ArrayList;
7 import java.util.Date; 8 import java.util.Date;
8 import java.util.List; 9 import java.util.List;
9 10
@@ -117,6 +118,11 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -117,6 +118,11 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
117 /** 创建时间 */ 118 /** 创建时间 */
118 private Date createDate; 119 private Date createDate;
119 120
  121 + /** 出场班次1发车的顺序号 */
  122 + private Integer fcno1;
  123 + /** 出场班次2发车的顺序号 */
  124 + private Integer fcno2;
  125 +
120 public GroupInfo() {} 126 public GroupInfo() {}
121 127
122 public GroupInfo(Object[] datas) { 128 public GroupInfo(Object[] datas) {
@@ -132,19 +138,40 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -132,19 +138,40 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
132 this.clId = Integer.valueOf(String.valueOf(datas[4])); 138 this.clId = Integer.valueOf(String.valueOf(datas[4]));
133 // 车辆自编号 139 // 车辆自编号
134 this.clZbh = String.valueOf(datas[5]); 140 this.clZbh = String.valueOf(datas[5]);
135 - // 出场时间,如果有多个,需要分开 141 + // 出场时间,出场班次,如果有多个,需要分开
136 Object ccsj = datas[6]; 142 Object ccsj = datas[6];
  143 + Object bctype = datas[7];
  144 + Object fcno = datas[15];
  145 +
137 if (ccsj != null) { 146 if (ccsj != null) {
138 String[] ccsj_array = ((String) ccsj).split(","); 147 String[] ccsj_array = ((String) ccsj).split(",");
139 - if (ccsj_array.length > 1) {  
140 - this.ccsj1 = String.valueOf(ccsj_array[0]);  
141 - this.ccsj2 = String.valueOf(ccsj_array[1]);  
142 - } else {  
143 - this.ccsj1 = String.valueOf(ccsj_array[0]); 148 + String[] bctype_array = ((String) bctype).split(",");
  149 + String[] fcno_array = ((String) fcno).split(",");
  150 + List<Integer> bctype_index = new ArrayList<>();
  151 +
  152 + for (int i = 0; i < bctype_array.length; i++) {
  153 + if (bctype_index.size() == 2) { // 只记录2个出场
  154 + break;
  155 + }
  156 + if (bctype_array[i].equals("out")) {
  157 + bctype_index.add(i);
  158 + }
  159 + }
  160 +
  161 + if (bctype_index.size() == 1) {
  162 + this.ccsj1 = String.valueOf(ccsj_array[bctype_index.get(0)]);
  163 + this.fcno1 = Integer.valueOf(fcno_array[bctype_index.get(0)]);
  164 + } else if (bctype_index.size() == 2) {
  165 + this.ccsj1 = String.valueOf(ccsj_array[bctype_index.get(0)]);
  166 + this.ccsj2 = String.valueOf(ccsj_array[bctype_index.get(1)]);
  167 +
  168 + this.fcno1 = Integer.valueOf(fcno_array[bctype_index.get(0)]);
  169 + this.fcno2 = Integer.valueOf(fcno_array[bctype_index.get(1)]);
144 } 170 }
  171 +
145 } 172 }
146 // 驾驶员id,如果有多个,需要分开 173 // 驾驶员id,如果有多个,需要分开
147 - Object jsyId = datas[7]; 174 + Object jsyId = datas[8];
148 if (jsyId != null) { 175 if (jsyId != null) {
149 String[] jsyId_array = ((String) jsyId).split(","); 176 String[] jsyId_array = ((String) jsyId).split(",");
150 if (jsyId_array.length > 1) { 177 if (jsyId_array.length > 1) {
@@ -155,7 +182,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -155,7 +182,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
155 } 182 }
156 } 183 }
157 // 驾驶员工号,如果有多个,需要分开 184 // 驾驶员工号,如果有多个,需要分开
158 - Object jsyGh = datas[8]; 185 + Object jsyGh = datas[9];
159 if (jsyGh != null) { 186 if (jsyGh != null) {
160 String[] jsyGh_array = ((String) jsyGh).split(","); 187 String[] jsyGh_array = ((String) jsyGh).split(",");
161 if (jsyGh_array.length > 1) { 188 if (jsyGh_array.length > 1) {
@@ -166,7 +193,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -166,7 +193,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
166 } 193 }
167 } 194 }
168 // 驾驶员名字,如果有多个,需要分开 195 // 驾驶员名字,如果有多个,需要分开
169 - Object jsyName = datas[9]; 196 + Object jsyName = datas[10];
170 if (jsyName != null) { 197 if (jsyName != null) {
171 String[] jsyName_array = ((String) jsyName).split(","); 198 String[] jsyName_array = ((String) jsyName).split(",");
172 if (jsyName_array.length > 1) { 199 if (jsyName_array.length > 1) {
@@ -178,7 +205,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -178,7 +205,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
178 } 205 }
179 206
180 // 售票员id,如果有多个,需要分开 207 // 售票员id,如果有多个,需要分开
181 - Object spyId = datas[10]; 208 + Object spyId = datas[11];
182 if (spyId != null) { 209 if (spyId != null) {
183 String[] spyId_array = ((String) spyId).split(","); 210 String[] spyId_array = ((String) spyId).split(",");
184 if (spyId_array.length > 1) { 211 if (spyId_array.length > 1) {
@@ -190,7 +217,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -190,7 +217,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
190 } 217 }
191 218
192 // 售票员工号,如果有多个,需要分开 219 // 售票员工号,如果有多个,需要分开
193 - Object spyGh = datas[11]; 220 + Object spyGh = datas[12];
194 if (spyGh != null) { 221 if (spyGh != null) {
195 String[] spyGh_array = ((String) spyGh).split(","); 222 String[] spyGh_array = ((String) spyGh).split(",");
196 if (spyGh_array.length > 1) { 223 if (spyGh_array.length > 1) {
@@ -201,7 +228,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -201,7 +228,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
201 } 228 }
202 } 229 }
203 // 售票员名字,如果有多个,需要分开 230 // 售票员名字,如果有多个,需要分开
204 - Object spyName = datas[12]; 231 + Object spyName = datas[13];
205 if (spyName != null) { 232 if (spyName != null) {
206 String[] spyName_array = ((String) spyName).split(","); 233 String[] spyName_array = ((String) spyName).split(",");
207 if (spyName_array.length > 1) { 234 if (spyName_array.length > 1) {
@@ -212,7 +239,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -212,7 +239,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
212 } 239 }
213 } 240 }
214 // 创建时间 241 // 创建时间
215 - this.createDate = new DateTime(datas[13]).toDate(); 242 + this.createDate = new DateTime(datas[14]).toDate();
216 243
217 // TODO:可能还有其他字段 244 // TODO:可能还有其他字段
218 } 245 }
@@ -384,5 +411,21 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -384,5 +411,21 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
384 public void setXlId(Integer xlId) { 411 public void setXlId(Integer xlId) {
385 this.xlId = xlId; 412 this.xlId = xlId;
386 } 413 }
  414 +
  415 + public Integer getFcno1() {
  416 + return fcno1;
  417 + }
  418 +
  419 + public void setFcno1(Integer fcno1) {
  420 + this.fcno1 = fcno1;
  421 + }
  422 +
  423 + public Integer getFcno2() {
  424 + return fcno2;
  425 + }
  426 +
  427 + public void setFcno2(Integer fcno2) {
  428 + this.fcno2 = fcno2;
  429 + }
387 } 430 }
388 } 431 }
src/main/java/com/bsth/service/schedule/SchedulePlanInfoServiceImpl.java
@@ -55,7 +55,8 @@ public class SchedulePlanInfoServiceImpl extends BaseServiceImpl&lt;SchedulePlanInf @@ -55,7 +55,8 @@ public class SchedulePlanInfoServiceImpl extends BaseServiceImpl&lt;SchedulePlanInf
55 groupInfoUpdate.getUpdate().getScheduleDate(), 55 groupInfoUpdate.getUpdate().getScheduleDate(),
56 groupInfoUpdate.getSrc().getLpName(), 56 groupInfoUpdate.getSrc().getLpName(),
57 groupInfoUpdate.getSrc().getCcsj1(), 57 groupInfoUpdate.getSrc().getCcsj1(),
58 - "out" 58 + "out",
  59 + groupInfoUpdate.getSrc().getFcno1()
59 ); 60 );
60 } 61 }
61 62
@@ -94,7 +95,8 @@ public class SchedulePlanInfoServiceImpl extends BaseServiceImpl&lt;SchedulePlanInf @@ -94,7 +95,8 @@ public class SchedulePlanInfoServiceImpl extends BaseServiceImpl&lt;SchedulePlanInf
94 groupInfoUpdate.getUpdate().getScheduleDate(), 95 groupInfoUpdate.getUpdate().getScheduleDate(),
95 groupInfoUpdate.getSrc().getLpName(), 96 groupInfoUpdate.getSrc().getLpName(),
96 groupInfoUpdate.getSrc().getCcsj2(), 97 groupInfoUpdate.getSrc().getCcsj2(),
97 - "out" 98 + "out",
  99 + groupInfoUpdate.getSrc().getFcno2()
98 ); 100 );
99 } 101 }
100 102
src/main/java/com/bsth/service/schedule/impl/SchedulePlanServiceImpl.java
@@ -119,13 +119,28 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im @@ -119,13 +119,28 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im
119 employeeConfigInfoList.add(employeeConfigMaps.get(Long.valueOf(eid))); 119 employeeConfigInfoList.add(employeeConfigMaps.get(Long.valueOf(eid)));
120 } 120 }
121 // 排班明细(这个要迭代的) 121 // 排班明细(这个要迭代的)
122 - Collection<TTInfoDetail> ttInfoDetails = gbdTTinfoMaps.get(scheduleResult_output.getSd().toDate()).get( 122 + Collection<TTInfoDetail> ttInfoDetails_ = gbdTTinfoMaps.get(scheduleResult_output.getSd().toDate()).get(
123 Long.parseLong(scheduleResult_output.getGuideboardId())); 123 Long.parseLong(scheduleResult_output.getGuideboardId()));
  124 + List<TTInfoDetail> ttInfoDetails = new ArrayList<>(ttInfoDetails_);
  125 +
  126 + // 排序ttInfoDetails
  127 + Collections.sort(ttInfoDetails, new Comparator<TTInfoDetail>() {
  128 + @Override
  129 + public int compare(TTInfoDetail o1, TTInfoDetail o2) {
  130 + return o1.getFcno().compareTo(o2.getFcno());
  131 + }
  132 + });
  133 +
  134 + Boolean isFb = false; // 是否分班
124 for (TTInfoDetail ttInfoDetail : ttInfoDetails) { 135 for (TTInfoDetail ttInfoDetail : ttInfoDetails) {
  136 + if (ttInfoDetail.getIsFB())
  137 + isFb = ttInfoDetail.getIsFB();
  138 +
125 SchedulePlanInfo schedulePlanInfo = new SchedulePlanInfo( 139 SchedulePlanInfo schedulePlanInfo = new SchedulePlanInfo(
126 xl, 140 xl,
127 scheduleResult_output, 141 scheduleResult_output,
128 ttInfoDetail, 142 ttInfoDetail,
  143 + isFb,
129 configInfo, 144 configInfo,
130 employeeConfigInfoList, 145 employeeConfigInfoList,
131 schedulePlan); 146 schedulePlan);
@@ -138,6 +153,7 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im @@ -138,6 +153,7 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im
138 153
139 schedulePlanInfos.add(schedulePlanInfo); 154 schedulePlanInfos.add(schedulePlanInfo);
140 ttInfoMap.put(ttInfoDetail.getTtinfo().getId(), ttInfoDetail.getTtinfo().getName()); 155 ttInfoMap.put(ttInfoDetail.getTtinfo().getId(), ttInfoDetail.getTtinfo().getName());
  156 +
141 } 157 }
142 } 158 }
143 159
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/info/list_info.html
@@ -12,6 +12,7 @@ @@ -12,6 +12,7 @@
12 <th style="width: 150px;">驾驶员(工号)</th> 12 <th style="width: 150px;">驾驶员(工号)</th>
13 <th style="width: 150px;">售票员(工号)</th> 13 <th style="width: 150px;">售票员(工号)</th>
14 <th style="width: 80px;">班次类型</th> 14 <th style="width: 80px;">班次类型</th>
  15 + <th style="width: 80px;">上下行</th>
15 <th style="width: 80px;">发车时间</th> 16 <th style="width: 80px;">发车时间</th>
16 <th style="width: 100%">时刻表</th> 17 <th style="width: 100%">时刻表</th>
17 18
@@ -42,6 +43,7 @@ @@ -42,6 +43,7 @@
42 <td></td> 43 <td></td>
43 <td></td> 44 <td></td>
44 <td></td> 45 <td></td>
  46 + <td></td>
45 47
46 </tr> 48 </tr>
47 </thead> 49 </thead>
@@ -74,6 +76,9 @@ @@ -74,6 +76,9 @@
74 <span ng-bind="info.bcType | dict:'ScheduleType':'未知' "></span> 76 <span ng-bind="info.bcType | dict:'ScheduleType':'未知' "></span>
75 </td> 77 </td>
76 <td> 78 <td>
  79 + <span ng-bind="info.xlDir | dict:'LineTrend2':'未知' "></span>
  80 + </td>
  81 + <td>
77 <span ng-bind="info.fcsj"></span> 82 <span ng-bind="info.fcsj"></span>
78 </td> 83 </td>
79 <td> 84 <td>