Commit 932d3600ce45e421e268eaae05628ce8edfe9e59

Authored by 潘钊
2 parents bac3ebe2 953b0487

Merge branch 'minhang' into qingpu

Showing 23 changed files with 282 additions and 105 deletions
src/main/java/com/bsth/controller/oil/YlbController.java
... ... @@ -106,6 +106,7 @@ public class YlbController extends BaseController<Ylb, Integer>{
106 106 @RequestParam(defaultValue = "DESC") String direction){
107 107  
108 108 Direction d;
  109 + map.put("xlbm_like", map.get("xlbm_like").toString().trim());
109 110 // try {
110 111 String rq=map.get("rq").toString();
111 112 if(!(rq=="")){
... ...
src/main/java/com/bsth/data/gpsdata/arrival/SignalHandle.java
... ... @@ -70,10 +70,12 @@ public abstract class SignalHandle {
70 70  
71 71 protected void transformUpdown(GpsEntity gps, ScheduleRealInfo sch) {
72 72 int updown = Integer.parseInt(sch.getXlDir());
  73 + //gps 切换走向
  74 + gps.setUpDown(updown);
  75 +
73 76 List<StationRoute> srs = GeoCacheData.getStationRoute(sch.getXlBm(), updown);
74 77 StationRoute station = GeoUtils.gpsInStation(gps, srs);
75 78 if (station != null) {
76   - gps.setUpDown(updown);
77 79 gps.setStopNo(station.getCode());
78 80 }
79 81 }
... ...
src/main/java/com/bsth/data/gpsdata/arrival/handlers/InOutStationSignalHandle.java
... ... @@ -178,7 +178,12 @@ public class InOutStationSignalHandle extends SignalHandle{
178 178  
179 179 if(gps.getStopNo().equals(sch.getZdzCode())){
180 180  
181   - int diff = (int) (sch.getZdsjT() - gps.getTimestamp());
  181 + int diff = 0;
  182 + try{
  183 + diff = (int) (sch.getZdsjT() - gps.getTimestamp());
  184 + }catch(NullPointerException e){
  185 + logger.info("NullPointerException " + sch.getXlName() + " 有班次无班次历时,,,检查一下是否需要出站既出场。");
  186 + }
182 187 //进场最多提前1.2小时
183 188 if(sch.getBcType().equals("in") && diff > MAX_BEFORE_TIME)
184 189 return;
... ...
src/main/java/com/bsth/repository/oil/CylRepository.java
1 1 package com.bsth.repository.oil;
2 2  
3 3  
  4 +import java.util.List;
  5 +
  6 +import org.springframework.data.jpa.repository.Modifying;
  7 +import org.springframework.data.jpa.repository.Query;
4 8 import org.springframework.stereotype.Repository;
  9 +import org.springframework.transaction.annotation.Transactional;
  10 +
5 11 import com.bsth.entity.oil.Cyl;
6 12 import com.bsth.repository.BaseRepository;
7 13  
8 14 @Repository
9 15 public interface CylRepository extends BaseRepository<Cyl, Integer>{
10   -
  16 + @Transactional
  17 + @Modifying
  18 + @Query(value="SELECT * FROM bsth_c_cyl ",nativeQuery=true)
  19 + List<Cyl> obtainCyl();
11 20 }
... ...
src/main/java/com/bsth/repository/oil/YlbRepository.java
... ... @@ -39,8 +39,8 @@ public interface YlbRepository extends BaseRepository&lt;Ylb, Integer&gt;{
39 39  
40 40 @Transactional
41 41 @Modifying
42   - @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and nbbm =?2 ",nativeQuery=true)
43   - List<Ylb> queryListYlb(String rq,String nbbm);
  42 + @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and nbbm =?2 and jsy=?3",nativeQuery=true)
  43 + List<Ylb> queryListYlb(String rq,String nbbm,String jgh);
44 44 /**
45 45 * 查询当天总的加注量和总里程
46 46 * @param rq
... ...
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
... ... @@ -133,7 +133,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
133 133 @Query(value="select s from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m') = ?2 and s.bcType not in ('in','out') order by s.xlBm")
134 134 List<ScheduleRealInfo> scheduleByDateAndLine3(String line,String date);
135 135  
136   - @Query(value="select new map(s.scheduleDate as scheduleDate,s.xlBm as xlBm,s.clZbh as clZbh,s.jGh as jGh) from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 GROUP BY xlBm,clZbh,jGh,scheduleDate,jGh ORDER BY realExecDate,fcsj,xlBm,clZbh")
  136 + @Query(value="select new map(s.scheduleDate as scheduleDate,s.xlBm as xlBm,s.clZbh as clZbh,s.jGh as jGh) from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 GROUP BY xlBm,clZbh,jGh,scheduleDate,jGh ORDER BY xlBm,clZbh")
137 137 List<Map<String,Object>> yesterdayDataList(String line,String date);
138 138  
139 139 @Query(value="select s from ScheduleRealInfo s where DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?1 ORDER BY xlBm,lpName,clZbh,xlDir")
... ...
src/main/java/com/bsth/repository/schedule/SchedulePlanInfoRepository.java
... ... @@ -43,7 +43,7 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI
43 43 "group_concat(distinct info.s_name) spyName, " +
44 44 "group_concat(info.fcno) fcno, " +
45 45 "max(info.update_date) as updateDate, " +
46   - "max(user.name) as updateUserName, " +
  46 + "max(user.user_name) as updateUserName, " +
47 47 "max(info.tt_info_name) as ttInfoName " +
48 48 "from bsth_c_s_sp_info info left join bsth_c_sys_user user on info.update_by = user.id " +
49 49 "where info.xl = ?1 and " +
... ...
src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java
... ... @@ -75,6 +75,7 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
75 75 // List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq);
76 76 //前一天所有车辆最后进场班次信息
77 77 List<Ylb> ylListBe=repository.obtainYlbefore(rq);
  78 + List<Cyl> clyList=cylRepository.obtainCyl();
78 79 //从排班表中计算出行驶的总里程
79 80 List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList("",rq);
80 81  
... ... @@ -96,13 +97,21 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
96 97 try {
97 98 //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量
98 99 if(map.get("seqNumber").toString().equals("1")){
99   - for (int y = 0; y < ylListBe.size(); y++) {
100   - Ylb ylb=ylListBe.get(y);
101   - if(map.get("clZbh").toString().equals(ylb.getNbbm())){
102   - t.setCzyl(ylb.getJzyl());
  100 + for (int y = 0; y < clyList.size(); y++) {
  101 + Cyl cyl=clyList.get(y);
  102 + if(map.get("clZbh").toString().equals(cyl.getNbbm())){
  103 + t.setCzyl(cyl.getCyl());
103 104 break;
104 105 }else{
105   - t.setCzyl(0.0);
  106 + for (int i = 0; i < ylListBe.size(); i++) {
  107 + Ylb ylb=ylListBe.get(i);
  108 + if(map.get("clZbh").toString().equals(ylb.getNbbm())){
  109 + t.setCzyl(ylb.getJzyl());
  110 + break;
  111 + }else{
  112 + t.setCzyl(0.0);
  113 + }
  114 + }
106 115 }
107 116 }
108 117 }
... ... @@ -161,6 +170,7 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
161 170 List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq);
162 171 //前一天所有车辆最后进场班次信息
163 172 List<Ylb> ylListBe=repository.obtainYlbefore(rq);
  173 + List<Cyl> clyList=cylRepository.obtainCyl();
164 174 //从排班表中计算出行驶的总里程
165 175 List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList(line,rq);
166 176  
... ... @@ -182,13 +192,21 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
182 192 try {
183 193 //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量
184 194 if(map.get("seqNumber").toString().equals("1")){
185   - for (int y = 0; y < ylListBe.size(); y++) {
186   - Ylb ylb=ylListBe.get(y);
187   - if(map.get("clZbh").toString().equals(ylb.getNbbm())){
188   - t.setCzyl(ylb.getJzyl());
  195 + for (int y = 0; y < clyList.size(); y++) {
  196 + Cyl cyl=clyList.get(y);
  197 + if(map.get("clZbh").toString().equals(cyl.getNbbm())){
  198 + t.setCzyl(cyl.getCyl());
189 199 break;
190 200 }else{
191   - t.setCzyl(0.0);
  201 + for (int i = 0; i < ylListBe.size(); i++) {
  202 + Ylb ylb=ylListBe.get(i);
  203 + if(map.get("clZbh").toString().equals(ylb.getNbbm())){
  204 + t.setCzyl(ylb.getJzyl());
  205 + break;
  206 + }else{
  207 + t.setCzyl(0.0);
  208 + }
  209 + }
192 210 }
193 211 }
194 212 }
... ...
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
... ... @@ -67,6 +67,7 @@ import java.text.DecimalFormat;
67 67 import java.text.ParseException;
68 68 import java.text.SimpleDateFormat;
69 69 import java.util.*;
  70 +import java.util.regex.Pattern;
70 71 import java.util.zip.ZipEntry;
71 72 import java.util.zip.ZipOutputStream;
72 73  
... ... @@ -461,6 +462,12 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
461 462 public List<ScheduleRealInfo> queryUserInfoPx(String line, String date, String state,String type) {
462 463 // List<ScheduleRealInfo> list=new ArrayList<ScheduleRealInfo>();
463 464 state=state+"";
  465 + String lpname=state;
  466 + String px=type;
  467 + if(state.equals("lpName")){
  468 + state =state+"+1";
  469 + type="asc";
  470 + }
464 471 String sqlPlan="select min(s.id) as id,s.j_Gh as jGh,s.cl_Zbh as clZbh,"
465 472 + " s.lp_Name as lpName,s.j_Name as jName,s.s_Gh as sGh,s.s_Name as sName"
466 473 + " from bsth_c_s_sp_info_real s "
... ... @@ -482,7 +489,60 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
482 489 return t;
483 490 }
484 491 });
  492 + if(lpname.equals("lpName")){
  493 + List<ScheduleRealInfo> listNew=new ArrayList<ScheduleRealInfo>();
  494 + Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
  495 + if(px.equals("desc")){
  496 + int zt=0;
  497 + for (int l = 0; l < 3; l++) {
  498 + for (int i = 0; i < list.size(); i++) {
  499 + ScheduleRealInfo t=list.get(i);
  500 + if(t.getLpName().indexOf("+")!=-1){
  501 + if(zt==0){
  502 + listNew.add(t);
  503 + }
  504 +
  505 + }else if(pattern.matcher(t.getLpName()).matches()){
  506 + if(zt==1){
  507 + listNew.add(t);
  508 + }
  509 + }else{
  510 + if(zt==2){
  511 + listNew.add(t);
  512 + }
  513 + }
  514 + }
  515 + zt++;
  516 + }
  517 + }else{
  518 + int zt=0;
  519 + for (int l = 0; l < 3; l++) {
  520 + for (int i = 0; i < list.size(); i++) {
  521 + ScheduleRealInfo t=list.get(i);
  522 + if(t.getLpName().indexOf("+")!=-1){
  523 + if(zt==2){
  524 + listNew.add(t);
  525 + }
  526 +
  527 + }else if(pattern.matcher(t.getLpName()).matches()){
  528 + if(zt==1){
  529 + listNew.add(t);
  530 + }
  531 + }else{
  532 + if(zt==0){
  533 + listNew.add(t);
  534 + }
  535 + }
  536 + }
  537 + zt++;
  538 + }
  539 +
  540 + }
  541 + return listNew;
  542 + }else{
485 543 return list;
  544 + }
  545 +
486 546 }
487 547  
488 548 /**
... ... @@ -1226,7 +1286,10 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1226 1286 if (childTaskPlans.isEmpty()) {
1227 1287 if (scheduleRealInfo.getBcType().equals("in") ||
1228 1288 scheduleRealInfo.getBcType().equals("out")) {
1229   - jcclc += tempJhlc;
  1289 + if(scheduleRealInfo.getStatus() != -1){
  1290 + jcclc += tempJhlc;
  1291 + }
  1292 +
1230 1293 }
1231 1294 //主任务 放空班次属于营运
1232 1295 // else if(scheduleRealInfo.getBcType().equals("venting")){
... ... @@ -2997,7 +3060,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2997 3060 jzl += y.getJzl();
2998 3061 }
2999 3062  
3000   - List<Ylb> listYlb=ylbRepository.queryListYlb( fcrq,s.getClZbh());
  3063 + List<Ylb> listYlb=ylbRepository.queryListYlb( fcrq,s.getClZbh(),s.getjGh());
3001 3064 Double ccyl=0.0;
3002 3065 Double jcyl=0.0;
3003 3066 Double yh=0.0;
... ... @@ -3468,11 +3531,12 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
3468 3531  
3469 3532 try {
3470 3533 ScheduleRealInfo sch = dayOfSchedule.get(id);
3471   - if (sch.getZdsjActual() == null) {
  3534 + if (sch.getZdsjActual() == null && sch.getFcsjActual() == null) {
3472 3535 rs.put("status", ResponseCode.ERROR);
3473   - rs.put("msg", "无实际到达时间,无法撤销!");
  3536 + rs.put("msg", "班次未执行,无法撤销!");
3474 3537 } else {
3475 3538  
  3539 + sch.clearFcsjActual();
3476 3540 sch.clearZdsjActual();
3477 3541 //清除下一个班次的起点到达时间
3478 3542 ScheduleRealInfo next = dayOfSchedule.next(sch);
... ...
src/main/resources/static/pages/forms/statement/waybill.html
... ... @@ -207,7 +207,7 @@
207 207 line = $("#line").val();
208 208 date = $("#date").val();
209 209 $(".hidden").removeClass("hidden");
210   - $get('/realSchedule/queryUserInfoPx',{line:line,date:date,state:"(lpName+1)",type:type},function(result){
  210 + $get('/realSchedule/queryUserInfoPx',{line:line,date:date,state:"lpName",type:type},function(result){
211 211 if(type=="desc"){
212 212 type ="asc";
213 213 }else{
... ...
src/main/resources/static/pages/oil/list_ph.html
... ... @@ -82,7 +82,7 @@
82 82 线路:
83 83 </td>
84 84 <td colspan="3">
85   - <select class="form-control" name="xlbm_eq" id="xlbm" style="width: 120px;"></select>
  85 + <select class="form-control" name="xlbm_like" id="xlbm" style="width: 120px;"></select>
86 86 &nbsp;
87 87 </td>
88 88 <td >
... ... @@ -231,7 +231,9 @@
231 231 }
232 232 }
233 233 });
  234 + var i = layer.load(2);
234 235 $get('/ylb/checkYl', params, function () {
  236 + layer.close(i);
235 237 jsDoQuery(null, true);
236 238 });
237 239 } else {
... ... @@ -255,7 +257,9 @@
255 257 }
256 258 }
257 259 });
  260 + var i = layer.load(2);
258 261 $get('/ylb/outAndIn', params, function () {
  262 + layer.close(i);
259 263 jsDoQuery(null, true);
260 264 });
261 265 } else {
... ... @@ -273,11 +277,12 @@
273 277 //获取输入的进场存油
274 278 var jzyl = $('.in_carpark_jzyl[data-id='+id+']', '#ll_oil_list').html();
275 279 // $("#jzyl" + id).html();
276   - console.log(jzyl);
277 280 var params = {};
278 281 params['jzyl'] = jzyl;
279 282 params['id'] = id;
  283 + var i = layer.load(2);
280 284 $get('/ylb/sort', params, function () {
  285 + layer.close(i);
281 286 jsDoQuery(null, true);
282 287 });
283 288  
... ... @@ -302,7 +307,9 @@
302 307 }
303 308 }
304 309 });
  310 + var i = layer.load(2);
305 311 $get('/ylb/obtain', params, function () {
  312 + layer.close(i);
306 313 jsDoQuery(params, true);
307 314 });
308 315 } else {
... ... @@ -530,7 +537,7 @@
530 537 //搜索线路
531 538 $.get('/basic/lineCode2Name',function(result){
532 539 var data=[];
533   -
  540 + data.push({id: " ", text: "全部线路"});
534 541 for(var code in result){
535 542 data.push({id: code, text: result[code]});
536 543 }
... ...
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/edit.html
... ... @@ -55,17 +55,22 @@
55 55 </div>
56 56 </div>
57 57  
58   - <!-- TODO -->
59 58 <div class="form-group">
60 59 <label class="col-md-2 control-label">分公司:</label>
61 60 <div class="col-md-3">
62   - <select name="brancheCompanyCode" class="form-control">
63   - <option value="">请选择...</option>
64   - <option value="1">分公司1</option>
65   - <option value="2">分公司1</option>
66   - <option value="3">分公司1</option>
67   - <option value="4">分公司1</option>
68   - </select>
  61 + <sa-Select5 name="fgs"
  62 + model="ctrl.employeeInfoForSave"
  63 + cmaps="{'brancheCompanyCode': 'businessCode', 'brancheCompany': 'businessName'}"
  64 + dcname="brancheCompanyCode"
  65 + icname="businessCode"
  66 + dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}"
  67 + iterobjname="item"
  68 + iterobjexp="item.businessName"
  69 + searchph="请选择所属分公司..."
  70 + searchexp="this.businessName"
  71 + >
  72 + </sa-Select5>
  73 +
69 74 </div>
70 75 </div>
71 76  
... ...
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/form.html
... ... @@ -55,17 +55,22 @@
55 55 </div>
56 56 </div>
57 57  
58   - <!-- TODO -->
59 58 <div class="form-group">
60 59 <label class="col-md-2 control-label">分公司:</label>
61 60 <div class="col-md-3">
62   - <select name="brancheCompanyCode" class="form-control">
63   - <option value="">请选择...</option>
64   - <option value="1">分公司1</option>
65   - <option value="2">分公司1</option>
66   - <option value="3">分公司1</option>
67   - <option value="4">分公司1</option>
68   - </select>
  61 + <sa-Select5 name="fgs"
  62 + model="ctrl.employeeInfoForSave"
  63 + cmaps="{'brancheCompanyCode': 'businessCode', 'brancheCompany': 'businessName'}"
  64 + dcname="brancheCompanyCode"
  65 + icname="businessCode"
  66 + dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}"
  67 + iterobjname="item"
  68 + iterobjexp="item.businessName"
  69 + searchph="请选择所属分公司..."
  70 + searchexp="this.businessName"
  71 + >
  72 + </sa-Select5>
  73 +
69 74 </div>
70 75 </div>
71 76  
... ...
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/list.html
... ... @@ -101,6 +101,7 @@
101 101 <!--<a href="edit.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 修改 </a>-->
102 102 <a ui-sref="employeeInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> 详细 </a>
103 103 <a ui-sref="employeeInfoManage_edit({id: info.id})" class="btn btn-info btn-sm"> 修改 </a>
  104 + <a ng-click="ctrl.deleteEmp(info.id)" class="btn btn-danger btn-sm"> 删除 </a>
104 105 </td>
105 106 </tr>
106 107 </tbody>
... ...
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/module.js
... ... @@ -132,48 +132,56 @@ angular.module(&#39;ScheduleApp&#39;).controller(
132 132 ]
133 133 );
134 134  
135   -angular.module('ScheduleApp').controller('EmployInfoManageToolsCtrl', ['$modalInstance', 'FileUploader', function($modalInstance, FileUploader) {
136   - var self = this;
137   -
138   - // 关闭窗口
139   - self.close = function() {
140   - $modalInstance.dismiss("cancel");
141   - };
142   -
143   - self.clearInputFile = function() {
144   - angular.element("input[type='file']").val(null);
145   - };
146   -
147   - // 上传文件组件
148   - self.uploader = new FileUploader({
149   - url: "/ee/uploadAndImportFile",
150   - filters: [] // 用于过滤文件,比如只允许导入excel
151   - });
152   - self.uploader.onAfterAddingFile = function(fileItem)
153   - {
154   - console.info('onAfterAddingFile', fileItem);
155   - console.log(self.uploader.queue.length);
156   - if (self.uploader.queue.length > 1)
157   - self.uploader.removeFromQueue(0);
158   - };
159   - self.uploader.onSuccessItem = function(fileItem, response, status, headers)
160   - {
161   - if (response.status == "SUCCESS") {
162   - console.info('onSuccessItem', fileItem, response, status, headers);
163   - } else {
164   - fileItem.isSuccess = false;
165   - fileItem.isCancel = false;
166   - fileItem.isError = true;
167   -
168   - alert(response.msg);
169   - }
170   - };
171   - self.uploader.onErrorItem = function(fileItem, response, status, headers)
172   - {
173   - console.info('onErrorItem', fileItem, response, status, headers);
174   - };
  135 +// dataImport.html控制
  136 +angular.module('ScheduleApp').controller(
  137 + 'EmployInfoManageToolsCtrl',
  138 + [
  139 + '$modalInstance',
  140 + 'FileUploader',
  141 + function($modalInstance, FileUploader) {
  142 + var self = this;
175 143  
176   -}]);
  144 + // 关闭窗口
  145 + self.close = function() {
  146 + $modalInstance.dismiss("cancel");
  147 + };
  148 +
  149 + self.clearInputFile = function() {
  150 + angular.element("input[type='file']").val(null);
  151 + };
  152 +
  153 + // 上传文件组件
  154 + self.uploader = new FileUploader({
  155 + url: "/ee/uploadAndImportFile",
  156 + filters: [] // 用于过滤文件,比如只允许导入excel
  157 + });
  158 + self.uploader.onAfterAddingFile = function(fileItem)
  159 + {
  160 + console.info('onAfterAddingFile', fileItem);
  161 + console.log(self.uploader.queue.length);
  162 + if (self.uploader.queue.length > 1)
  163 + self.uploader.removeFromQueue(0);
  164 + };
  165 + self.uploader.onSuccessItem = function(fileItem, response, status, headers)
  166 + {
  167 + if (response.status == "SUCCESS") {
  168 + console.info('onSuccessItem', fileItem, response, status, headers);
  169 + } else {
  170 + fileItem.isSuccess = false;
  171 + fileItem.isCancel = false;
  172 + fileItem.isError = true;
  173 +
  174 + alert(response.msg);
  175 + }
  176 + };
  177 + self.uploader.onErrorItem = function(fileItem, response, status, headers)
  178 + {
  179 + console.info('onErrorItem', fileItem, response, status, headers);
  180 + };
  181 +
  182 + }
  183 + ]
  184 +);
177 185  
178 186 // list.html控制器
179 187 angular.module('ScheduleApp').controller(
... ... @@ -208,6 +216,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
208 216 });
209 217 };
210 218  
  219 + self.deleteEmp = function(id) {
  220 + Employee.delete({id: id}, function(result) {
  221 + if (result.msg) { // 暂时这样做,之后全局拦截
  222 + alert("失败:" + result.msg);
  223 + } else {
  224 + self.doPage();
  225 + }
  226 + });
  227 + };
  228 +
211 229 self.doPage();
212 230  
213 231 }
... ...
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/info/list_info.html
... ... @@ -89,7 +89,7 @@
89 89 <span ng-bind="info.ttInfoName"></span>
90 90 </td>
91 91 <td>
92   - <span ng-bind="info.updateBy.name"></span>
  92 + <span ng-bind="info.updateBy.userName"></span>
93 93 </td>
94 94 <td>
95 95 <span ng-bind="info.updateDate | date: 'yyyy-MM-dd'"></span>
... ...
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/list.html
... ... @@ -90,7 +90,7 @@
90 90 <span ng-bind="info.scheduleToTime | date: 'yyyy-MM-dd '"></span>
91 91 </td>
92 92 <td>
93   - <span ng-bind="info.updateBy.name"></span>
  93 + <span ng-bind="info.updateBy.userName"></span>
94 94 /
95 95 <span ng-bind="info.updateDate | date: 'yyyy-MM-dd HH:mm:ss'"></span>
96 96 </td>
... ...
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/report/module.js
... ... @@ -240,6 +240,21 @@ angular.module(&#39;ScheduleApp&#39;).controller(&#39;SchedulePlanReportManageFormCtrl&#39;, [
240 240 update: self.groupInfo
241 241 };
242 242  
  243 + // 处理工号,去除 -,如:55-33333,去除55-
  244 + var reg = /^(.*?)\-(.*?)$/;
  245 + if (self.groupInfo.jsy1Gh) {
  246 + self.groupInfo.jsy1Gh = self.groupInfo.jsy1Gh.replace(reg, '$2');
  247 + }
  248 + if (self.groupInfo.spy1Gh) {
  249 + self.groupInfo.spy1Gh = self.groupInfo.spy1Gh.replace(reg, '$2');
  250 + }
  251 + if (self.groupInfo.jsy2Gh) {
  252 + self.groupInfo.jsy2Gh = self.groupInfo.jsy2Gh.replace(reg, '$2');
  253 + }
  254 + if (self.groupInfo.spy2Gh) {
  255 + self.groupInfo.spy2Gh = self.groupInfo.spy2Gh.replace(reg, '$2');
  256 + }
  257 +
243 258 //console.log($scope);
244 259 //console.log(param);
245 260 schedulePlanReportManageService.updateDetail(param).then(
... ...
src/main/resources/static/pages/scheduleApp/module/core/scheduleRuleManage/list.html
... ... @@ -58,7 +58,7 @@
58 58 <span ng-bind="info.xl.name"></span>
59 59 </td>
60 60 <td>
61   - <span ng-bind="info.updateBy.name"></span>
  61 + <span ng-bind="info.updateBy.userName"></span>
62 62 /
63 63 <span ng-bind="info.updateDate | date: 'yyyy-MM-dd HH:mm:ss'"></span>
64 64 </td>
... ...
src/main/resources/static/real_control_v2/css/main.css
... ... @@ -716,16 +716,16 @@ li.map-panel {
716 716 }
717 717  
718 718 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(1) {
719   - width: 7%;
  719 + width: 5%;
720 720 border-left: 1px solid #dedede;
721 721 }
722 722  
723 723 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(2) {
724   - width: 25%;
  724 + width: 22%;
725 725 }
726 726  
727 727 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(3) {
728   - width: 20%;
  728 + width: 17%;
729 729 }
730 730  
731 731 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(4) {
... ... @@ -733,39 +733,47 @@ li.map-panel {
733 733 }
734 734  
735 735 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(5) {
736   - width: 22%;
  736 + width: 21%;
737 737 }
738 738  
739 739 #schedule-lp_change-modal .sch-list dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(6) {
740   - width: 15%;
  740 + width: 10%;
  741 +}
  742 +
  743 +#schedule-lp_change-modal .sch-list dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list dl dd:nth-of-type(7) {
  744 + width: 14%;
741 745 }
742 746  
743 747  
744 748  
745 749  
746 750 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(1), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(1) {
747   - width: 7%;
  751 + width: 5%;
748 752 border-left: 1px solid #dedede;
749 753 }
750 754  
751 755 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(2), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(2) {
752   - width: 15%;
  756 + width: 14%;
753 757 }
754 758  
755 759 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(3), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(3) {
756   - width: 22%;
  760 + width: 10%;
757 761 }
758 762  
759 763 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(4), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(4) {
760   - width: 10%;
  764 + width: 21%;
761 765 }
762 766  
763 767 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(5), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(5) {
764   - width: 20%;
  768 + width: 10%;
765 769 }
766 770  
767 771 #schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(6), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(6) {
768   - width: 25%;
  772 + width: 17%;
  773 +}
  774 +
  775 +#schedule-lp_change-modal .sch-list.reverse dl dt:nth-of-type(7), #schedule-lp_change-modal .sch-list.reverse dl dd:nth-of-type(7) {
  776 + width: 22%;
769 777 }
770 778  
771 779 #schedule-lp_change-modal .ct_table.sch-list .ct_table_body dl.active {
... ... @@ -838,4 +846,12 @@ svg rect.offline{
838 846 font-size: 12px;
839 847 margin-left: 5px;
840 848 display: none;
  849 +}
  850 +
  851 +.operation-real-text{
  852 + position: absolute;
  853 + top: 10px;
  854 + width: 100%;
  855 + left: 0;
  856 + text-align: center;
841 857 }
842 858 \ No newline at end of file
... ...
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lp_change.html
1 1 <div class="uk-modal" id="schedule-lp_change-modal">
2   - <div class="uk-modal-dialog" style="width: 1200px;">
  2 + <div class="uk-modal-dialog" style="width: 1240px;">
3 3 <a href="" class="uk-modal-close uk-close"></a>
4 4 <div class="uk-modal-header">
5 5 <h2>路牌对调</h2></div>
6 6  
  7 + <!--<div class="operation-real-text">
  8 + <span>
  9 + 不同路牌才能对调
  10 + </span>
  11 + </div>-->
7 12 <div class="uk-grid uk-grid-divider">
8 13 <div class="uk-width-1-2">
9 14 <form class="uk-form uk-form-horizontal">
... ... @@ -23,7 +28,8 @@
23 28 <dt>车辆</dt>
24 29 <dt>路牌</dt>
25 30 <dt>起点站</dt>
26   - <dt>时间</dt>
  31 + <dt>实发</dt>
  32 + <dt>计发</dt>
27 33 </dl>
28 34 </div>
29 35 <div class="ct_table_body">
... ... @@ -45,7 +51,8 @@
45 51 <div class="ct_table_head">
46 52 <dl>
47 53 <dt><input type="checkbox" class="global_box"></dt>
48   - <dt>时间</dt>
  54 + <dt>计发</dt>
  55 + <dt>实发</dt>
49 56 <dt>起点站</dt>
50 57 <dt>路牌</dt>
51 58 <dt>车辆</dt>
... ... @@ -79,6 +86,7 @@
79 86 <dd>{{sch.clZbh}}</dd>
80 87 <dd>{{sch.lpName}}</dd>
81 88 <dd>{{sch.qdzName}}</dd>
  89 + <dd style="color:#07d;">{{sch.fcsjActual}}</dd>
82 90 <dd>{{sch.dfsj}}
83 91 {{if sch.bcType == "out"}}
84 92 <span class="uk-badge uk-badge-success">出</span>
... ... @@ -106,6 +114,7 @@
106 114 <span class="uk-badge uk-badge-danger">放</span>
107 115 {{/if}}
108 116 </dd>
  117 + <dd style="color:#07d;">{{sch.fcsjActual}}</dd>
109 118 <dd>{{sch.qdzName}}</dd>
110 119 <dd>{{sch.lpName}}</dd>
111 120 <dd>{{sch.clZbh}}</dd>
... ... @@ -218,7 +227,7 @@
218 227 var rightSize = $('.sch-list:eq(1) dl.active', modal).length;
219 228 if(leftSize != rightSize)
220 229 $submitBtn.attr('disabled', 'disabled');
221   - else
  230 + else if(leftSize != 0)
222 231 $submitBtn.removeAttr('disabled');
223 232 }
224 233 }
... ...
src/main/resources/static/real_control_v2/js/common.js
... ... @@ -82,7 +82,7 @@ var gb_common = (function () {
82 82 function successHandle(json, handle) {
83 83 var status = json.status;
84 84 if (status == 407) {
85   - location.href = '/real_control_v2/login.html';
  85 + location.href = '/login.html';
86 86 return;
87 87 }
88 88  
... ...
src/main/resources/static/real_control_v2/js/line_schedule/sch_table.js
... ... @@ -197,10 +197,12 @@ var gb_schedule_table = (function () {
197 197  
198 198 var tMaps = {};
199 199 $.each(schArr, function () {
200   - line2Schedule[this.xlBm][this.id] = this;
201   - updateDom(this);
202   - //线路_车辆 过滤重复数据
203   - tMaps[this.xlBm + '_' + this.clZbh] = 1;
  200 + try {
  201 + line2Schedule[this.xlBm][this.id] = this;
  202 + updateDom(this);
  203 + //线路_车辆 过滤重复数据
  204 + tMaps[this.xlBm + '_' + this.clZbh] = 1;
  205 + }catch(e){}
204 206 });
205 207  
206 208 /* //重新标记末班
... ...