Commit d18d6555cf29c5e26c8dced98de1f8d4a053af11
1 parent
069bb424
bf
Showing
18 changed files
with
1571 additions
and
1810 deletions
Too many changes to show.
To preserve performance only 18 of 19 files are displayed.
bsthLineProfiles/pom.xml
| ... | ... | @@ -315,6 +315,10 @@ |
| 315 | 315 | <artifactId>poi-ooxml</artifactId> |
| 316 | 316 | <version>4.1.2</version> |
| 317 | 317 | </dependency> |
| 318 | + <dependency> | |
| 319 | + <groupId>org.springframework.kafka</groupId> | |
| 320 | + <artifactId>spring-kafka</artifactId> | |
| 321 | + </dependency> | |
| 318 | 322 | </dependencies> |
| 319 | 323 | |
| 320 | 324 | <build> | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/framework/config/ShiroConfig.java
| ... | ... | @@ -261,7 +261,8 @@ public class ShiroConfig |
| 261 | 261 | filterChainDefinitionMap.put("/register", "anon,captchaValidate"); |
| 262 | 262 | // 系统权限列表 |
| 263 | 263 | // filterChainDefinitionMap.putAll(SpringUtils.getBean(IMenuService.class).selectPermsAll()); |
| 264 | - | |
| 264 | + //线路全量数据接口 | |
| 265 | + filterChainDefinitionMap.put("/system/line/getLineList", "anon,captchaValidate"); | |
| 265 | 266 | Map<String, Filter> filters = new LinkedHashMap<String, Filter>(); |
| 266 | 267 | filters.put("onlineSession", onlineSessionFilter()); |
| 267 | 268 | filters.put("syncOnlineSession", syncOnlineSessionFilter()); | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/controller/BsthTLineController.java
| ... | ... | @@ -10,6 +10,7 @@ import com.ruoyi.framework.web.page.TableDataInfo; |
| 10 | 10 | import com.ruoyi.project.system.dict.domain.DictData; |
| 11 | 11 | import com.ruoyi.project.system.dict.service.IDictDataService; |
| 12 | 12 | import com.ruoyi.project.system.line.domain.BsthTLine; |
| 13 | +import com.ruoyi.project.system.line.domain.BsthTLineKFK; | |
| 13 | 14 | import com.ruoyi.project.system.line.service.IBsthTLineService; |
| 14 | 15 | import com.ruoyi.project.system.user.domain.User; |
| 15 | 16 | import com.ruoyi.project.system.user.service.IUserService; |
| ... | ... | @@ -293,97 +294,21 @@ public class BsthTLineController extends BaseController |
| 293 | 294 | } |
| 294 | 295 | |
| 295 | 296 | |
| 296 | - | |
| 297 | - | |
| 298 | - /* | |
| 299 | - //查询history整表 | |
| 300 | - //按lineName分组 | |
| 301 | - //createTime倒序 | |
| 302 | - //循环 如果createTime在所选时间内 | |
| 303 | - //相邻2条数据进行比较 | |
| 304 | - //new Bl 吧有差异的数据记录进去 | |
| 305 | - //放入一个list中 | |
| 306 | - //按公司和分公司分组 | |
| 307 | - 循环list统计那些字段有修改进行记录 | |
| 308 | - | |
| 309 | - *//** | |
| 310 | - * 新增弹窗 | |
| 311 | - *//* | |
| 312 | - @GetMapping("/add") | |
| 313 | - public String add() | |
| 314 | - { | |
| 315 | - return prefix + "/add"; | |
| 316 | - } | |
| 317 | - | |
| 318 | - | |
| 319 | - *//** | |
| 320 | - * 线路新增 | |
| 321 | - *//* | |
| 322 | - @RequiresPermissions("system:line:add") | |
| 323 | - @Log(title = "新增线路基本信息", businessType = BusinessType.INSERT) | |
| 324 | - @PostMapping("/add") | |
| 325 | - @ResponseBody | |
| 326 | - public AjaxResult addSave(BsthTLine bsthTLine) | |
| 327 | - { | |
| 328 | - User loginUser = ShiroUtils.getSysUser(); | |
| 329 | - bsthTLine.setCreateBy(loginUser.getUserName()); | |
| 330 | - return toAjax(bsthTLineService.insertBsthTLineExamine(bsthTLine)); | |
| 331 | - } | |
| 332 | - | |
| 333 | - *//** | |
| 334 | - * 线路修改预加载 | |
| 335 | - *//* | |
| 336 | - @GetMapping("/edit/{id}") | |
| 337 | - public String edit(@PathVariable("id") Long id, ModelMap mmap) | |
| 338 | - { | |
| 339 | - BsthTLine bsthTLine = bsthTLineService.selectBsthTLineExamineById(id); | |
| 340 | - mmap.put("bsthTLine", bsthTLine); | |
| 341 | - return prefix + "/edit"; | |
| 342 | - } | |
| 343 | - | |
| 344 | - | |
| 345 | - | |
| 346 | - *//** | |
| 347 | - * 修改保存【请填写功能名称】 | |
| 348 | - *//* | |
| 349 | - @RequiresPermissions("system:line:edit") | |
| 350 | - @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) | |
| 351 | - @PostMapping("/edit") | |
| 352 | - @ResponseBody | |
| 353 | - public AjaxResult editSave(BsthTLine bsthTLine) | |
| 354 | - { | |
| 355 | - | |
| 356 | - User loginUser = ShiroUtils.getSysUser(); | |
| 357 | - | |
| 358 | - bsthTLine.setUpdateBy(loginUser.getUserName()); | |
| 359 | - | |
| 360 | - return toAjax(bsthTLineService.updateBsthTLineExamine(bsthTLine)); | |
| 361 | - } | |
| 362 | - | |
| 363 | - *//** | |
| 364 | - * 删除【请填写功能名称】 | |
| 365 | - *//* | |
| 366 | - @RequiresPermissions("system:line:remove") | |
| 367 | - @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE) | |
| 368 | - @PostMapping( "/remove") | |
| 297 | + @PostMapping("/getLineList") | |
| 369 | 298 | @ResponseBody |
| 370 | - public AjaxResult remove(String ids) | |
| 299 | + public List<BsthTLineKFK> getList() | |
| 371 | 300 | { |
| 372 | - return toAjax(bsthTLineService.deleteBsthTLineExamineById(ids)); | |
| 301 | + BsthTLine bsthTLine=new BsthTLine(); | |
| 302 | + List<BsthTLine> list = bsthTLineService.selectBsthTLineList(bsthTLine); | |
| 303 | + List<Map> companyList = bsthTLineService.selectCompany(); | |
| 304 | + List<BsthTLineKFK> bsthTLineKFKS=new ArrayList<>(); | |
| 305 | + for (BsthTLine tLine : list) { | |
| 306 | + BsthTLineKFK bsthTLineKFK=new BsthTLineKFK(tLine,companyList); | |
| 307 | + bsthTLineKFK.setOperationType("insert"); | |
| 308 | + bsthTLineKFKS.add(bsthTLineKFK); | |
| 309 | + } | |
| 310 | + bsthTLineService.changeCN(bsthTLineKFKS); | |
| 311 | + return bsthTLineKFKS; | |
| 373 | 312 | } |
| 374 | 313 | |
| 375 | - | |
| 376 | - *//** | |
| 377 | - * 导出【请填写功能名称】列表 | |
| 378 | - *//* | |
| 379 | - | |
| 380 | - | |
| 381 | - | |
| 382 | - */ | |
| 383 | - | |
| 384 | - | |
| 385 | - | |
| 386 | - | |
| 387 | - | |
| 388 | - | |
| 389 | 314 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/controller/BsthTLineExamineController.java
| ... | ... | @@ -83,6 +83,8 @@ public class BsthTLineExamineController extends BaseController |
| 83 | 83 | { |
| 84 | 84 | BsthTLine bsthTLine = bsthTLineService.selectBsthTLineExamineById(id); |
| 85 | 85 | mmap.put("bsthTLine", bsthTLine); |
| 86 | + List<Map> companyList=bsthTLineService.selectCompany(); | |
| 87 | + mmap.put("companyList",companyList); | |
| 86 | 88 | return prefix + "/detail"; |
| 87 | 89 | } |
| 88 | 90 | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/controller/BsthTLineHistoryController.java
| ... | ... | @@ -116,21 +116,13 @@ public class BsthTLineHistoryController extends BaseController |
| 116 | 116 | BsthTLine bl=new BsthTLine(); |
| 117 | 117 | bl.setLineName(bsthTLine.getLineName()); |
| 118 | 118 | BsthTLine bsthTLineExamine=bsthTLineService.selectBsthTLineExamineByLineName(bl); |
| 119 | - if(bsthTLineExamine!=null){//有没审核的直接覆盖 | |
| 119 | + if(bsthTLineExamine!=null){//存在申请直接覆盖 | |
| 120 | 120 | bsthTLine.setId(bsthTLineExamine.getId()); |
| 121 | 121 | ajaxResult= toAjax(bsthTLineService.updateBsthTLineExamine(bsthTLine)); |
| 122 | 122 | }else {//没有新增 |
| 123 | 123 | bsthTLine.setExamineType("1"); |
| 124 | 124 | ajaxResult= toAjax(bsthTLineService.insertBsthTLineExamine(bsthTLine)); |
| 125 | 125 | } |
| 126 | - bl.setUpdateStatus("1"); | |
| 127 | - | |
| 128 | - //重复提交删除上一次通过未执行的申请 | |
| 129 | - bl=bsthTLineService.selectHistoryByLineNameAndUpdateStatus(bl); | |
| 130 | - if(bl!=null){ | |
| 131 | - bsthTLineService.deleteBsthTLineHistoryById(bl.getId()); | |
| 132 | - } | |
| 133 | - | |
| 134 | 126 | return ajaxResult; |
| 135 | 127 | } |
| 136 | 128 | |
| ... | ... | @@ -158,134 +150,4 @@ public class BsthTLineHistoryController extends BaseController |
| 158 | 150 | |
| 159 | 151 | |
| 160 | 152 | |
| 161 | - | |
| 162 | - | |
| 163 | - /* | |
| 164 | - @RequiresPermissions("system:lineHistory:export") | |
| 165 | - @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT) | |
| 166 | - @PostMapping("/export") | |
| 167 | - @ResponseBody | |
| 168 | - public AjaxResult export(BsthTLine bsthTLine) | |
| 169 | - { | |
| 170 | - bsthTLine.setExamineStatus("-1"); | |
| 171 | - List<BsthTLine> list = bsthTLineService.selectBsthTLineHistoryList(bsthTLine); | |
| 172 | - | |
| 173 | - List<DictData> dicts = dictDataService.selectDictDataList(null); | |
| 174 | - | |
| 175 | - Map<String,List<DictData>> dictMap = new HashMap(); | |
| 176 | - | |
| 177 | - for(DictData d : dicts) { | |
| 178 | - | |
| 179 | - if(dictMap.get(d.getDictType()) == null) { | |
| 180 | - dictMap.put(d.getDictType(), new ArrayList<DictData>()); | |
| 181 | - } | |
| 182 | - | |
| 183 | - dictMap.get(d.getDictType()).add(d); | |
| 184 | - } | |
| 185 | - | |
| 186 | - for(BsthTLine line:list) { | |
| 187 | - | |
| 188 | - Field[] field = line.getClass().getDeclaredFields(); | |
| 189 | - | |
| 190 | - | |
| 191 | - | |
| 192 | - for(int j=0 ; j<field.length ; j++){ //遍历所有属性 | |
| 193 | - String name = field[j].getName(); //获取属性的名字 | |
| 194 | - | |
| 195 | - String type = name; | |
| 196 | - | |
| 197 | - if(name.equals( "inoutDistrict")|| name.equals( "isMetro") || name.equals( "hasTimelists")) { | |
| 198 | - type = "trueFalse"; | |
| 199 | - } | |
| 200 | - | |
| 201 | - | |
| 202 | - if(dictMap.get(type) != null) { | |
| 203 | - name = name.substring(0,1).toUpperCase() + name.substring(1); | |
| 204 | - | |
| 205 | - | |
| 206 | - try { | |
| 207 | - Method param = line.getClass().getMethod("get"+name); | |
| 208 | - | |
| 209 | - String value = (String) param.invoke(line); | |
| 210 | - | |
| 211 | - if(value != null && value.split(",").length > 0) { | |
| 212 | - String result = ""; | |
| 213 | - for(String str:value.split(",")) { | |
| 214 | - for(DictData d:dictMap.get(type)) { | |
| 215 | - if(d.getDictValue().equals(str)) { | |
| 216 | - result += d.getDictLabel() + ","; | |
| 217 | - } | |
| 218 | - } | |
| 219 | - } | |
| 220 | - | |
| 221 | - Method m = line.getClass().getMethod("set"+name, new Class[] {String.class}); | |
| 222 | - | |
| 223 | - if(!result.isEmpty()) { | |
| 224 | - m.invoke(line,new Object[] {new String(result.substring(0,result.length()-1))}); | |
| 225 | - }else { | |
| 226 | - m.invoke(line,new Object[] {new String(value)}); | |
| 227 | - } | |
| 228 | - } | |
| 229 | - | |
| 230 | - } catch (Exception e) { | |
| 231 | - // TODO Auto-generated catch block | |
| 232 | - e.printStackTrace(); | |
| 233 | - } | |
| 234 | - | |
| 235 | - } | |
| 236 | - | |
| 237 | - | |
| 238 | - | |
| 239 | - } | |
| 240 | - | |
| 241 | - | |
| 242 | - } | |
| 243 | - | |
| 244 | - | |
| 245 | - ExcelUtil<BsthTLine> util = new ExcelUtil<BsthTLine>(BsthTLine.class); | |
| 246 | - return util.exportExcel(list, "line"); | |
| 247 | - } | |
| 248 | -*/ | |
| 249 | - /* *//** | |
| 250 | - * 新增【请填写功能名称】 | |
| 251 | - *//* | |
| 252 | - @GetMapping("/add") | |
| 253 | - public String add() | |
| 254 | - { | |
| 255 | - return prefix + "/add"; | |
| 256 | - } | |
| 257 | - | |
| 258 | - *//** | |
| 259 | - * 新增保存【请填写功能名称】 | |
| 260 | - *//* | |
| 261 | - @RequiresPermissions("system:lineHistory:add") | |
| 262 | - @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT) | |
| 263 | - @PostMapping("/add") | |
| 264 | - @ResponseBody | |
| 265 | - public AjaxResult addSave(BsthTLine bsthTLine) | |
| 266 | - { | |
| 267 | - User loginUser = ShiroUtils.getSysUser(); | |
| 268 | - bsthTLine.setCreateBy(loginUser.getUserName()); | |
| 269 | - return toAjax(bsthTLineService.insertBsthTLineHistory(bsthTLine)); | |
| 270 | - } | |
| 271 | - | |
| 272 | - | |
| 273 | - | |
| 274 | - @GetMapping("/detail/{id}") | |
| 275 | - public String detail(@PathVariable("id") Long id, ModelMap mmap) | |
| 276 | - { | |
| 277 | - mmap.put("bsthTLine", bsthTLineService.selectBsthTLineHistoryById(id)); | |
| 278 | - return prefix + "/detail"; | |
| 279 | - } | |
| 280 | - | |
| 281 | - | |
| 282 | - | |
| 283 | - @PostMapping("/updateToLineInfo") | |
| 284 | - @ResponseBody | |
| 285 | - public AjaxResult updateToLineInfo(String rows) { | |
| 286 | - return toAjax(bsthTLineService.updateToLineInfo(rows)); | |
| 287 | - } | |
| 288 | -*/ | |
| 289 | - | |
| 290 | - | |
| 291 | 153 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/domain/BsthTLine.java
| ... | ... | @@ -195,12 +195,12 @@ public class BsthTLine extends BaseEntity |
| 195 | 195 | @Excel(name = "行驶间隔(低谷)") |
| 196 | 196 | private String travelIntervalDown; |
| 197 | 197 | |
| 198 | - /** 经营权证(大巴) */ | |
| 199 | - @Excel(name = "经营权证(大巴)") | |
| 198 | + /** 经营权证(大) */ | |
| 199 | + @Excel(name = "经营权证(大)") | |
| 200 | 200 | private Long warrantVehiclesLarge; |
| 201 | 201 | |
| 202 | - /** 经营权证(中巴) */ | |
| 203 | - @Excel(name = "经营权证(中巴)") | |
| 202 | + /** 经营权证(中) */ | |
| 203 | + @Excel(name = "经营权证(中)") | |
| 204 | 204 | private Long warrantVehiclesMiddle; |
| 205 | 205 | |
| 206 | 206 | /** 实际配车数 */ |
| ... | ... | @@ -208,11 +208,11 @@ public class BsthTLine extends BaseEntity |
| 208 | 208 | private Long vehiclesNumber; |
| 209 | 209 | |
| 210 | 210 | /** 实际车辆数(大) */ |
| 211 | - @Excel(name = "实际车辆数(大巴)") | |
| 211 | + @Excel(name = "实际车辆数(大)") | |
| 212 | 212 | private Long numberVehiclesLarge; |
| 213 | 213 | |
| 214 | 214 | /** 实际车辆数(中) */ |
| 215 | - @Excel(name = "实际车辆数(中巴)") | |
| 215 | + @Excel(name = "实际车辆数(中)") | |
| 216 | 216 | private Long numberVehiclesMiddle; |
| 217 | 217 | |
| 218 | 218 | /** 车辆自编号(无) */ |
| ... | ... | @@ -285,160 +285,143 @@ public class BsthTLine extends BaseEntity |
| 285 | 285 | private String createTimeEnd; |
| 286 | 286 | |
| 287 | 287 | private Long historyId; |
| 288 | - public void setId(Long id) | |
| 289 | - { | |
| 290 | - this.id = id; | |
| 291 | - } | |
| 292 | 288 | |
| 293 | - public Long getId() | |
| 294 | - { | |
| 289 | + public Long getId() { | |
| 295 | 290 | return id; |
| 296 | 291 | } |
| 297 | - public void setEventId(String eventId) | |
| 298 | - { | |
| 299 | - this.eventId = eventId; | |
| 292 | + | |
| 293 | + public void setId(Long id) { | |
| 294 | + this.id = id; | |
| 300 | 295 | } |
| 301 | 296 | |
| 302 | - public String getEventId() | |
| 303 | - { | |
| 297 | + public String getEventId() { | |
| 304 | 298 | return eventId; |
| 305 | 299 | } |
| 306 | - public void setLineId(Long lineId) | |
| 307 | - { | |
| 308 | - this.lineId = lineId; | |
| 300 | + | |
| 301 | + public void setEventId(String eventId) { | |
| 302 | + this.eventId = eventId; | |
| 309 | 303 | } |
| 310 | 304 | |
| 311 | - public Long getLineId() | |
| 312 | - { | |
| 305 | + public Long getLineId() { | |
| 313 | 306 | return lineId; |
| 314 | 307 | } |
| 315 | - public void setLineName(String lineName) | |
| 316 | - { | |
| 317 | - this.lineName = lineName; | |
| 308 | + | |
| 309 | + public void setLineId(Long lineId) { | |
| 310 | + this.lineId = lineId; | |
| 318 | 311 | } |
| 319 | 312 | |
| 320 | - public String getLineName() | |
| 321 | - { | |
| 313 | + public String getLineName() { | |
| 322 | 314 | return lineName; |
| 323 | 315 | } |
| 324 | - public void setCompany(String company) | |
| 325 | - { | |
| 326 | - this.company = company; | |
| 316 | + | |
| 317 | + public void setLineName(String lineName) { | |
| 318 | + this.lineName = lineName; | |
| 327 | 319 | } |
| 328 | 320 | |
| 329 | - public String getCompany() | |
| 330 | - { | |
| 321 | + public String getCompany() { | |
| 331 | 322 | return company; |
| 332 | 323 | } |
| 333 | - public void setFCompany(String fCompany) | |
| 334 | - { | |
| 335 | - this.fCompany = fCompany; | |
| 324 | + | |
| 325 | + public void setCompany(String company) { | |
| 326 | + this.company = company; | |
| 336 | 327 | } |
| 337 | 328 | |
| 338 | - public String getFCompany() | |
| 339 | - { | |
| 329 | + public String getfCompany() { | |
| 340 | 330 | return fCompany; |
| 341 | 331 | } |
| 342 | - public void setPLineId(Long pLineId) | |
| 343 | - { | |
| 344 | - this.pLineId = pLineId; | |
| 332 | + | |
| 333 | + public void setfCompany(String fCompany) { | |
| 334 | + this.fCompany = fCompany; | |
| 345 | 335 | } |
| 346 | 336 | |
| 347 | - public Long getPLineId() | |
| 348 | - { | |
| 337 | + public Long getpLineId() { | |
| 349 | 338 | return pLineId; |
| 350 | 339 | } |
| 351 | - public void setServiceType(String serviceType) | |
| 352 | - { | |
| 353 | - this.serviceType = serviceType; | |
| 340 | + | |
| 341 | + public void setpLineId(Long pLineId) { | |
| 342 | + this.pLineId = pLineId; | |
| 354 | 343 | } |
| 355 | 344 | |
| 356 | - public String getServiceType() | |
| 357 | - { | |
| 345 | + public String getServiceType() { | |
| 358 | 346 | return serviceType; |
| 359 | 347 | } |
| 360 | - public void setLineLevel(String lineLevel) | |
| 361 | - { | |
| 362 | - this.lineLevel = lineLevel; | |
| 348 | + | |
| 349 | + public void setServiceType(String serviceType) { | |
| 350 | + this.serviceType = serviceType; | |
| 363 | 351 | } |
| 364 | 352 | |
| 365 | - public String getLineLevel() | |
| 366 | - { | |
| 353 | + public String getLineLevel() { | |
| 367 | 354 | return lineLevel; |
| 368 | 355 | } |
| 369 | - public void setLineType(String lineType) | |
| 370 | - { | |
| 371 | - this.lineType = lineType; | |
| 356 | + | |
| 357 | + public void setLineLevel(String lineLevel) { | |
| 358 | + this.lineLevel = lineLevel; | |
| 372 | 359 | } |
| 373 | 360 | |
| 374 | - public String getLineType() | |
| 375 | - { | |
| 361 | + public String getLineType() { | |
| 376 | 362 | return lineType; |
| 377 | 363 | } |
| 378 | - public void setDistrict(String district) | |
| 379 | - { | |
| 380 | - this.district = district; | |
| 364 | + | |
| 365 | + public void setLineType(String lineType) { | |
| 366 | + this.lineType = lineType; | |
| 381 | 367 | } |
| 382 | 368 | |
| 383 | - public String getDistrict() | |
| 384 | - { | |
| 369 | + public String getDistrict() { | |
| 385 | 370 | return district; |
| 386 | 371 | } |
| 387 | - public void setInoutDistrict(String inoutDistrict) | |
| 388 | - { | |
| 389 | - this.inoutDistrict = inoutDistrict; | |
| 372 | + | |
| 373 | + public void setDistrict(String district) { | |
| 374 | + this.district = district; | |
| 390 | 375 | } |
| 391 | 376 | |
| 392 | - public String getInoutDistrict() | |
| 393 | - { | |
| 377 | + public String getInoutDistrict() { | |
| 394 | 378 | return inoutDistrict; |
| 395 | 379 | } |
| 396 | - public void setServiceState(String serviceState) | |
| 397 | - { | |
| 398 | - this.serviceState = serviceState; | |
| 380 | + | |
| 381 | + public void setInoutDistrict(String inoutDistrict) { | |
| 382 | + this.inoutDistrict = inoutDistrict; | |
| 399 | 383 | } |
| 400 | 384 | |
| 401 | - public String getServiceState() | |
| 402 | - { | |
| 385 | + public String getServiceState() { | |
| 403 | 386 | return serviceState; |
| 404 | 387 | } |
| 405 | - public void setBusType(String busType) | |
| 406 | - { | |
| 407 | - this.busType = busType; | |
| 388 | + | |
| 389 | + public void setServiceState(String serviceState) { | |
| 390 | + this.serviceState = serviceState; | |
| 408 | 391 | } |
| 409 | 392 | |
| 410 | - public String getBusType() | |
| 411 | - { | |
| 393 | + public String getBusType() { | |
| 412 | 394 | return busType; |
| 413 | 395 | } |
| 414 | - public void setAirConditionerType(String airConditionerType) | |
| 415 | - { | |
| 416 | - this.airConditionerType = airConditionerType; | |
| 396 | + | |
| 397 | + public void setBusType(String busType) { | |
| 398 | + this.busType = busType; | |
| 417 | 399 | } |
| 418 | 400 | |
| 419 | - public String getAirConditionerType() | |
| 420 | - { | |
| 401 | + public String getAirConditionerType() { | |
| 421 | 402 | return airConditionerType; |
| 422 | 403 | } |
| 423 | - public void setSellTicketType(String sellTicketType) | |
| 424 | - { | |
| 425 | - this.sellTicketType = sellTicketType; | |
| 404 | + | |
| 405 | + public void setAirConditionerType(String airConditionerType) { | |
| 406 | + this.airConditionerType = airConditionerType; | |
| 426 | 407 | } |
| 427 | 408 | |
| 428 | - public String getSellTicketType() | |
| 429 | - { | |
| 409 | + public String getSellTicketType() { | |
| 430 | 410 | return sellTicketType; |
| 431 | 411 | } |
| 432 | - public void setServiceTime(String serviceTime) | |
| 433 | - { | |
| 434 | - this.serviceTime = serviceTime; | |
| 412 | + | |
| 413 | + public void setSellTicketType(String sellTicketType) { | |
| 414 | + this.sellTicketType = sellTicketType; | |
| 435 | 415 | } |
| 436 | 416 | |
| 437 | - public String getServiceTime() | |
| 438 | - { | |
| 417 | + public String getServiceTime() { | |
| 439 | 418 | return serviceTime; |
| 440 | 419 | } |
| 441 | 420 | |
| 421 | + public void setServiceTime(String serviceTime) { | |
| 422 | + this.serviceTime = serviceTime; | |
| 423 | + } | |
| 424 | + | |
| 442 | 425 | public String getLineDistance() { |
| 443 | 426 | return lineDistance; |
| 444 | 427 | } |
| ... | ... | @@ -447,421 +430,384 @@ public class BsthTLine extends BaseEntity |
| 447 | 430 | this.lineDistance = lineDistance; |
| 448 | 431 | } |
| 449 | 432 | |
| 450 | - public void setLineCode(String lineCode) | |
| 451 | - { | |
| 433 | + public String getLineCode() { | |
| 434 | + return lineCode; | |
| 435 | + } | |
| 436 | + | |
| 437 | + public void setLineCode(String lineCode) { | |
| 452 | 438 | this.lineCode = lineCode; |
| 453 | 439 | } |
| 454 | 440 | |
| 455 | - public String getLineCode() | |
| 456 | - { | |
| 457 | - return lineCode; | |
| 441 | + public Long getWarrantYear() { | |
| 442 | + return warrantYear; | |
| 458 | 443 | } |
| 459 | - public void setWarrantYear(Long warrantYear) | |
| 460 | - { | |
| 444 | + | |
| 445 | + public void setWarrantYear(Long warrantYear) { | |
| 461 | 446 | this.warrantYear = warrantYear; |
| 462 | 447 | } |
| 463 | 448 | |
| 464 | - public Long getWarrantYear() | |
| 465 | - { | |
| 466 | - return warrantYear; | |
| 449 | + public Date getWarrantStartTime() { | |
| 450 | + return warrantStartTime; | |
| 467 | 451 | } |
| 468 | - public void setWarrantStartTime(Date warrantStartTime) | |
| 469 | - { | |
| 452 | + | |
| 453 | + public void setWarrantStartTime(Date warrantStartTime) { | |
| 470 | 454 | this.warrantStartTime = warrantStartTime; |
| 471 | 455 | } |
| 472 | 456 | |
| 473 | - public Date getWarrantStartTime() | |
| 474 | - { | |
| 475 | - return warrantStartTime; | |
| 457 | + public Date getWarrantEndTime() { | |
| 458 | + return warrantEndTime; | |
| 476 | 459 | } |
| 477 | - public void setWarrantEndTime(Date warrantEndTime) | |
| 478 | - { | |
| 460 | + | |
| 461 | + public void setWarrantEndTime(Date warrantEndTime) { | |
| 479 | 462 | this.warrantEndTime = warrantEndTime; |
| 480 | 463 | } |
| 481 | 464 | |
| 482 | - public Date getWarrantEndTime() | |
| 483 | - { | |
| 484 | - return warrantEndTime; | |
| 465 | + public Date getPlanCancelTime() { | |
| 466 | + return planCancelTime; | |
| 485 | 467 | } |
| 486 | - public void setPlanCancelTime(Date planCancelTime) | |
| 487 | - { | |
| 468 | + | |
| 469 | + public void setPlanCancelTime(Date planCancelTime) { | |
| 488 | 470 | this.planCancelTime = planCancelTime; |
| 489 | 471 | } |
| 490 | 472 | |
| 491 | - public Date getPlanCancelTime() | |
| 492 | - { | |
| 493 | - return planCancelTime; | |
| 473 | + public Date getCancelTime() { | |
| 474 | + return cancelTime; | |
| 494 | 475 | } |
| 495 | - public void setCancelTime(Date cancelTime) | |
| 496 | - { | |
| 476 | + | |
| 477 | + public void setCancelTime(Date cancelTime) { | |
| 497 | 478 | this.cancelTime = cancelTime; |
| 498 | 479 | } |
| 499 | 480 | |
| 500 | - public Date getCancelTime() | |
| 501 | - { | |
| 502 | - return cancelTime; | |
| 481 | + @Override | |
| 482 | + public String getUpdateBy() { | |
| 483 | + return updateBy; | |
| 484 | + } | |
| 485 | + | |
| 486 | + @Override | |
| 487 | + public void setUpdateBy(String updateBy) { | |
| 488 | + this.updateBy = updateBy; | |
| 503 | 489 | } |
| 504 | 490 | |
| 491 | + @Override | |
| 492 | + public Date getUpdateTime() { | |
| 493 | + return updateTime; | |
| 494 | + } | |
| 505 | 495 | |
| 506 | - public void setTimeSchedule(Date timeSchedule) | |
| 507 | - { | |
| 508 | - this.timeSchedule = timeSchedule; | |
| 496 | + @Override | |
| 497 | + public void setUpdateTime(Date updateTime) { | |
| 498 | + this.updateTime = updateTime; | |
| 509 | 499 | } |
| 510 | 500 | |
| 511 | - public Date getTimeSchedule() | |
| 512 | - { | |
| 501 | + public Date getTimeSchedule() { | |
| 513 | 502 | return timeSchedule; |
| 514 | 503 | } |
| 515 | - public void setPark(String park) | |
| 516 | - { | |
| 517 | - this.park = park; | |
| 504 | + | |
| 505 | + public void setTimeSchedule(Date timeSchedule) { | |
| 506 | + this.timeSchedule = timeSchedule; | |
| 518 | 507 | } |
| 519 | 508 | |
| 520 | - public String getPark() | |
| 521 | - { | |
| 509 | + public String getPark() { | |
| 522 | 510 | return park; |
| 523 | 511 | } |
| 524 | - public void setIsWarrant(String isWarrant) | |
| 525 | - { | |
| 526 | - this.isWarrant = isWarrant; | |
| 512 | + | |
| 513 | + public void setPark(String park) { | |
| 514 | + this.park = park; | |
| 527 | 515 | } |
| 528 | 516 | |
| 529 | - public String getIsWarrant() | |
| 530 | - { | |
| 517 | + public String getIsWarrant() { | |
| 531 | 518 | return isWarrant; |
| 532 | 519 | } |
| 533 | - public void setRoadType(String roadType) | |
| 534 | - { | |
| 535 | - this.roadType = roadType; | |
| 520 | + | |
| 521 | + public void setIsWarrant(String isWarrant) { | |
| 522 | + this.isWarrant = isWarrant; | |
| 523 | + } | |
| 524 | + | |
| 525 | + public Date getIsWarrantEndTime() { | |
| 526 | + return isWarrantEndTime; | |
| 527 | + } | |
| 528 | + | |
| 529 | + public void setIsWarrantEndTime(Date isWarrantEndTime) { | |
| 530 | + this.isWarrantEndTime = isWarrantEndTime; | |
| 536 | 531 | } |
| 537 | 532 | |
| 538 | - public String getRoadType() | |
| 539 | - { | |
| 533 | + public String getRoadType() { | |
| 540 | 534 | return roadType; |
| 541 | 535 | } |
| 542 | - public void setTicketPrice(String ticketPrice) | |
| 543 | - { | |
| 544 | - this.ticketPrice = ticketPrice; | |
| 536 | + | |
| 537 | + public void setRoadType(String roadType) { | |
| 538 | + this.roadType = roadType; | |
| 545 | 539 | } |
| 546 | 540 | |
| 547 | - public String getTicketPrice() | |
| 548 | - { | |
| 541 | + public String getTicketPrice() { | |
| 549 | 542 | return ticketPrice; |
| 550 | 543 | } |
| 551 | - public void setFirstStation(String firstStation) | |
| 552 | - { | |
| 553 | - this.firstStation = firstStation; | |
| 544 | + | |
| 545 | + public void setTicketPrice(String ticketPrice) { | |
| 546 | + this.ticketPrice = ticketPrice; | |
| 554 | 547 | } |
| 555 | 548 | |
| 556 | - public String getFirstStation() | |
| 557 | - { | |
| 549 | + public String getFirstStation() { | |
| 558 | 550 | return firstStation; |
| 559 | 551 | } |
| 560 | 552 | |
| 561 | - public void setFirstTime(String firstTime) | |
| 562 | - { | |
| 563 | - this.firstTime = firstTime; | |
| 553 | + public void setFirstStation(String firstStation) { | |
| 554 | + this.firstStation = firstStation; | |
| 564 | 555 | } |
| 565 | 556 | |
| 566 | - public String getFirstTime() | |
| 567 | - { | |
| 557 | + public String getFirstTime() { | |
| 568 | 558 | return firstTime; |
| 569 | 559 | } |
| 570 | - public void setLastStation(String lastStation) | |
| 571 | - { | |
| 572 | - this.lastStation = lastStation; | |
| 560 | + | |
| 561 | + public void setFirstTime(String firstTime) { | |
| 562 | + this.firstTime = firstTime; | |
| 573 | 563 | } |
| 574 | 564 | |
| 575 | - public String getLastStation() | |
| 576 | - { | |
| 565 | + public String getLastStation() { | |
| 577 | 566 | return lastStation; |
| 578 | 567 | } |
| 579 | - public void setLastTime(String lastTime) | |
| 580 | - { | |
| 581 | - this.lastTime = lastTime; | |
| 568 | + | |
| 569 | + public void setLastStation(String lastStation) { | |
| 570 | + this.lastStation = lastStation; | |
| 582 | 571 | } |
| 583 | 572 | |
| 584 | - public String getLastTime() | |
| 585 | - { | |
| 573 | + public String getLastTime() { | |
| 586 | 574 | return lastTime; |
| 587 | 575 | } |
| 588 | - public void setMileageUp(String mileageUp) | |
| 589 | - { | |
| 590 | - this.mileageUp = mileageUp; | |
| 576 | + | |
| 577 | + public void setLastTime(String lastTime) { | |
| 578 | + this.lastTime = lastTime; | |
| 591 | 579 | } |
| 592 | 580 | |
| 593 | - public String getMileageUp() | |
| 594 | - { | |
| 581 | + public String getMileageUp() { | |
| 595 | 582 | return mileageUp; |
| 596 | 583 | } |
| 597 | - public void setMileageDown(String mileageDown) | |
| 598 | - { | |
| 599 | - this.mileageDown = mileageDown; | |
| 584 | + | |
| 585 | + public void setMileageUp(String mileageUp) { | |
| 586 | + this.mileageUp = mileageUp; | |
| 600 | 587 | } |
| 601 | 588 | |
| 602 | - public String getMileageDown() | |
| 603 | - { | |
| 589 | + public String getMileageDown() { | |
| 604 | 590 | return mileageDown; |
| 605 | 591 | } |
| 606 | - public void setStationUp(String stationUp) | |
| 607 | - { | |
| 608 | - this.stationUp = stationUp; | |
| 592 | + | |
| 593 | + public void setMileageDown(String mileageDown) { | |
| 594 | + this.mileageDown = mileageDown; | |
| 609 | 595 | } |
| 610 | 596 | |
| 611 | - public String getStationUp() | |
| 612 | - { | |
| 597 | + public String getStationUp() { | |
| 613 | 598 | return stationUp; |
| 614 | 599 | } |
| 615 | - public void setStationDown(String stationDown) | |
| 616 | - { | |
| 617 | - this.stationDown = stationDown; | |
| 600 | + | |
| 601 | + public void setStationUp(String stationUp) { | |
| 602 | + this.stationUp = stationUp; | |
| 618 | 603 | } |
| 619 | 604 | |
| 620 | - public String getStationDown() | |
| 621 | - { | |
| 605 | + public String getStationDown() { | |
| 622 | 606 | return stationDown; |
| 623 | 607 | } |
| 624 | - public void setTravelTimeUp(String travelTimeUp) | |
| 625 | - { | |
| 626 | - this.travelTimeUp = travelTimeUp; | |
| 608 | + | |
| 609 | + public void setStationDown(String stationDown) { | |
| 610 | + this.stationDown = stationDown; | |
| 627 | 611 | } |
| 628 | 612 | |
| 629 | - public String getTravelTimeUp() | |
| 630 | - { | |
| 613 | + public String getTravelTimeUp() { | |
| 631 | 614 | return travelTimeUp; |
| 632 | 615 | } |
| 633 | - public void setTravelTimeDown(String travelTimeDown) | |
| 634 | - { | |
| 635 | - this.travelTimeDown = travelTimeDown; | |
| 616 | + | |
| 617 | + public void setTravelTimeUp(String travelTimeUp) { | |
| 618 | + this.travelTimeUp = travelTimeUp; | |
| 636 | 619 | } |
| 637 | 620 | |
| 638 | - public String getTravelTimeDown() | |
| 639 | - { | |
| 621 | + public String getTravelTimeDown() { | |
| 640 | 622 | return travelTimeDown; |
| 641 | 623 | } |
| 642 | - public void setTravelIntervalUp(String travelIntervalUp) | |
| 643 | - { | |
| 644 | - this.travelIntervalUp = travelIntervalUp; | |
| 624 | + | |
| 625 | + public void setTravelTimeDown(String travelTimeDown) { | |
| 626 | + this.travelTimeDown = travelTimeDown; | |
| 645 | 627 | } |
| 646 | 628 | |
| 647 | - public String getTravelIntervalUp() | |
| 648 | - { | |
| 629 | + public String getTravelIntervalUp() { | |
| 649 | 630 | return travelIntervalUp; |
| 650 | 631 | } |
| 651 | - public void setTravelIntervalDown(String travelIntervalDown) | |
| 652 | - { | |
| 653 | - this.travelIntervalDown = travelIntervalDown; | |
| 632 | + | |
| 633 | + public void setTravelIntervalUp(String travelIntervalUp) { | |
| 634 | + this.travelIntervalUp = travelIntervalUp; | |
| 654 | 635 | } |
| 655 | 636 | |
| 656 | - public String getTravelIntervalDown() | |
| 657 | - { | |
| 637 | + public String getTravelIntervalDown() { | |
| 658 | 638 | return travelIntervalDown; |
| 659 | 639 | } |
| 660 | - public void setWarrantVehiclesLarge(Long warrantVehiclesLarge) | |
| 661 | - { | |
| 662 | - this.warrantVehiclesLarge = warrantVehiclesLarge; | |
| 640 | + | |
| 641 | + public void setTravelIntervalDown(String travelIntervalDown) { | |
| 642 | + this.travelIntervalDown = travelIntervalDown; | |
| 663 | 643 | } |
| 664 | 644 | |
| 665 | - public Long getWarrantVehiclesLarge() | |
| 666 | - { | |
| 645 | + public Long getWarrantVehiclesLarge() { | |
| 667 | 646 | return warrantVehiclesLarge; |
| 668 | 647 | } |
| 669 | - public void setWarrantVehiclesMiddle(Long warrantVehiclesMiddle) | |
| 670 | - { | |
| 671 | - this.warrantVehiclesMiddle = warrantVehiclesMiddle; | |
| 648 | + | |
| 649 | + public void setWarrantVehiclesLarge(Long warrantVehiclesLarge) { | |
| 650 | + this.warrantVehiclesLarge = warrantVehiclesLarge; | |
| 672 | 651 | } |
| 673 | 652 | |
| 674 | - public Long getWarrantVehiclesMiddle() | |
| 675 | - { | |
| 653 | + public Long getWarrantVehiclesMiddle() { | |
| 676 | 654 | return warrantVehiclesMiddle; |
| 677 | 655 | } |
| 678 | - public void setVehiclesNumber(Long vehiclesNumber) | |
| 679 | - { | |
| 680 | - this.vehiclesNumber = vehiclesNumber; | |
| 656 | + | |
| 657 | + public void setWarrantVehiclesMiddle(Long warrantVehiclesMiddle) { | |
| 658 | + this.warrantVehiclesMiddle = warrantVehiclesMiddle; | |
| 681 | 659 | } |
| 682 | 660 | |
| 683 | - public Long getVehiclesNumber() | |
| 684 | - { | |
| 661 | + public Long getVehiclesNumber() { | |
| 685 | 662 | return vehiclesNumber; |
| 686 | 663 | } |
| 687 | - public void setNumberVehiclesLarge(Long numberVehiclesLarge) | |
| 688 | - { | |
| 689 | - this.numberVehiclesLarge = numberVehiclesLarge; | |
| 664 | + | |
| 665 | + public void setVehiclesNumber(Long vehiclesNumber) { | |
| 666 | + this.vehiclesNumber = vehiclesNumber; | |
| 690 | 667 | } |
| 691 | 668 | |
| 692 | - public Long getNumberVehiclesLarge() | |
| 693 | - { | |
| 669 | + public Long getNumberVehiclesLarge() { | |
| 694 | 670 | return numberVehiclesLarge; |
| 695 | 671 | } |
| 696 | - public void setNumberVehiclesMiddle(Long numberVehiclesMiddle) | |
| 697 | - { | |
| 698 | - this.numberVehiclesMiddle = numberVehiclesMiddle; | |
| 672 | + | |
| 673 | + public void setNumberVehiclesLarge(Long numberVehiclesLarge) { | |
| 674 | + this.numberVehiclesLarge = numberVehiclesLarge; | |
| 699 | 675 | } |
| 700 | 676 | |
| 701 | - public Long getNumberVehiclesMiddle() | |
| 702 | - { | |
| 677 | + public Long getNumberVehiclesMiddle() { | |
| 703 | 678 | return numberVehiclesMiddle; |
| 704 | 679 | } |
| 705 | - public void setCarPlate(String carPlate) | |
| 706 | - { | |
| 707 | - this.carPlate = carPlate; | |
| 680 | + | |
| 681 | + public void setNumberVehiclesMiddle(Long numberVehiclesMiddle) { | |
| 682 | + this.numberVehiclesMiddle = numberVehiclesMiddle; | |
| 708 | 683 | } |
| 709 | 684 | |
| 710 | - public String getCarPlate() | |
| 711 | - { | |
| 685 | + public String getCarPlate() { | |
| 712 | 686 | return carPlate; |
| 713 | 687 | } |
| 714 | - public void setNumberPerson(Long numberPerson) | |
| 715 | - { | |
| 716 | - this.numberPerson = numberPerson; | |
| 688 | + | |
| 689 | + public void setCarPlate(String carPlate) { | |
| 690 | + this.carPlate = carPlate; | |
| 717 | 691 | } |
| 718 | 692 | |
| 719 | - public Long getNumberPerson() | |
| 720 | - { | |
| 693 | + public Long getNumberPerson() { | |
| 721 | 694 | return numberPerson; |
| 722 | 695 | } |
| 723 | - public void setNumberPersonDriver(Long numberPersonDriver) | |
| 724 | - { | |
| 725 | - this.numberPersonDriver = numberPersonDriver; | |
| 696 | + | |
| 697 | + public void setNumberPerson(Long numberPerson) { | |
| 698 | + this.numberPerson = numberPerson; | |
| 726 | 699 | } |
| 727 | 700 | |
| 728 | - public Long getNumberPersonDriver() | |
| 729 | - { | |
| 701 | + public Long getNumberPersonDriver() { | |
| 730 | 702 | return numberPersonDriver; |
| 731 | 703 | } |
| 732 | - public void setNumberPersonSales(Long numberPersonSales) | |
| 733 | - { | |
| 734 | - this.numberPersonSales = numberPersonSales; | |
| 704 | + | |
| 705 | + public void setNumberPersonDriver(Long numberPersonDriver) { | |
| 706 | + this.numberPersonDriver = numberPersonDriver; | |
| 735 | 707 | } |
| 736 | 708 | |
| 737 | - public Long getNumberPersonSales() | |
| 738 | - { | |
| 709 | + public Long getNumberPersonSales() { | |
| 739 | 710 | return numberPersonSales; |
| 740 | 711 | } |
| 741 | - public void setBusEvNumber(Long busEvNumber) | |
| 742 | - { | |
| 743 | - this.busEvNumber = busEvNumber; | |
| 712 | + | |
| 713 | + public void setNumberPersonSales(Long numberPersonSales) { | |
| 714 | + this.numberPersonSales = numberPersonSales; | |
| 744 | 715 | } |
| 745 | 716 | |
| 746 | - public Long getBusEvNumber() | |
| 747 | - { | |
| 717 | + public Long getBusEvNumber() { | |
| 748 | 718 | return busEvNumber; |
| 749 | 719 | } |
| 750 | - public void setDirections(String directions) | |
| 751 | - { | |
| 752 | - this.directions = directions; | |
| 720 | + | |
| 721 | + public void setBusEvNumber(Long busEvNumber) { | |
| 722 | + this.busEvNumber = busEvNumber; | |
| 753 | 723 | } |
| 754 | 724 | |
| 755 | - public String getDirections() | |
| 756 | - { | |
| 725 | + public String getDirections() { | |
| 757 | 726 | return directions; |
| 758 | 727 | } |
| 759 | - public void setHalfwayStation(String halfwayStation) | |
| 760 | - { | |
| 761 | - this.halfwayStation = halfwayStation; | |
| 728 | + | |
| 729 | + public void setDirections(String directions) { | |
| 730 | + this.directions = directions; | |
| 762 | 731 | } |
| 763 | 732 | |
| 764 | - public String getHalfwayStation() | |
| 765 | - { | |
| 733 | + public String getHalfwayStation() { | |
| 766 | 734 | return halfwayStation; |
| 767 | 735 | } |
| 768 | 736 | |
| 769 | - public void setDivideLevel(String divideLevel) | |
| 770 | - { | |
| 771 | - this.divideLevel = divideLevel; | |
| 737 | + public void setHalfwayStation(String halfwayStation) { | |
| 738 | + this.halfwayStation = halfwayStation; | |
| 772 | 739 | } |
| 773 | 740 | |
| 774 | - public String getDivideLevel() | |
| 775 | - { | |
| 741 | + public String getDivideLevel() { | |
| 776 | 742 | return divideLevel; |
| 777 | 743 | } |
| 778 | - public void setHasTimelists(String hasTimelists) | |
| 779 | - { | |
| 780 | - this.hasTimelists = hasTimelists; | |
| 744 | + | |
| 745 | + public void setDivideLevel(String divideLevel) { | |
| 746 | + this.divideLevel = divideLevel; | |
| 781 | 747 | } |
| 782 | 748 | |
| 783 | - public String getHasTimelists() | |
| 784 | - { | |
| 749 | + public String getHasTimelists() { | |
| 785 | 750 | return hasTimelists; |
| 786 | 751 | } |
| 787 | - public void setIsMetro(String isMetro) | |
| 788 | - { | |
| 789 | - this.isMetro = isMetro; | |
| 752 | + | |
| 753 | + public void setHasTimelists(String hasTimelists) { | |
| 754 | + this.hasTimelists = hasTimelists; | |
| 790 | 755 | } |
| 791 | 756 | |
| 792 | - public String getIsMetro() | |
| 793 | - { | |
| 757 | + public String getIsMetro() { | |
| 794 | 758 | return isMetro; |
| 795 | 759 | } |
| 796 | - public void setMetroTime(String metroTime) | |
| 797 | - { | |
| 798 | - this.metroTime = metroTime; | |
| 760 | + | |
| 761 | + public void setIsMetro(String isMetro) { | |
| 762 | + this.isMetro = isMetro; | |
| 799 | 763 | } |
| 800 | 764 | |
| 801 | - public String getMetroTime() | |
| 802 | - { | |
| 765 | + public String getMetroTime() { | |
| 803 | 766 | return metroTime; |
| 804 | 767 | } |
| 805 | - public void setColdBonusType(String coldBonusType) | |
| 806 | - { | |
| 807 | - this.coldBonusType = coldBonusType; | |
| 768 | + | |
| 769 | + public void setMetroTime(String metroTime) { | |
| 770 | + this.metroTime = metroTime; | |
| 808 | 771 | } |
| 809 | 772 | |
| 810 | - public String getColdBonusType() | |
| 811 | - { | |
| 773 | + public String getColdBonusType() { | |
| 812 | 774 | return coldBonusType; |
| 813 | 775 | } |
| 814 | 776 | |
| 815 | - | |
| 816 | - public void setNightParking(String nightParking) | |
| 817 | - { | |
| 818 | - this.nightParking = nightParking; | |
| 777 | + public void setColdBonusType(String coldBonusType) { | |
| 778 | + this.coldBonusType = coldBonusType; | |
| 819 | 779 | } |
| 820 | 780 | |
| 821 | - public String getNightParking() | |
| 822 | - { | |
| 823 | - return nightParking; | |
| 781 | + public String getLineUpdateType() { | |
| 782 | + return lineUpdateType; | |
| 824 | 783 | } |
| 825 | 784 | |
| 826 | - | |
| 827 | - | |
| 828 | - public static long getSerialVersionUID() { | |
| 829 | - return serialVersionUID; | |
| 830 | - } | |
| 831 | - | |
| 832 | - public String getUpdateStatus() { | |
| 833 | - return updateStatus; | |
| 834 | - } | |
| 835 | - | |
| 836 | - public void setUpdateStatus(String updateStatus) { | |
| 837 | - this.updateStatus = updateStatus; | |
| 838 | - } | |
| 839 | - | |
| 840 | - public String getLineUpdateType() { | |
| 841 | - return lineUpdateType; | |
| 842 | - } | |
| 785 | + public void setLineUpdateType(String lineUpdateType) { | |
| 786 | + this.lineUpdateType = lineUpdateType; | |
| 787 | + } | |
| 843 | 788 | |
| 844 | - public void setLineUpdateType(String lineUpdateType) { | |
| 845 | - this.lineUpdateType = lineUpdateType; | |
| 846 | - } | |
| 847 | - | |
| 848 | - | |
| 789 | + public String getUpdateStatus() { | |
| 790 | + return updateStatus; | |
| 791 | + } | |
| 849 | 792 | |
| 850 | - public String getFiles() { | |
| 851 | - return files; | |
| 852 | - } | |
| 793 | + public void setUpdateStatus(String updateStatus) { | |
| 794 | + this.updateStatus = updateStatus; | |
| 795 | + } | |
| 853 | 796 | |
| 854 | - public void setFiles(String files) { | |
| 855 | - this.files = files; | |
| 856 | - } | |
| 797 | + public String getNightParking() { | |
| 798 | + return nightParking; | |
| 799 | + } | |
| 857 | 800 | |
| 801 | + public void setNightParking(String nightParking) { | |
| 802 | + this.nightParking = nightParking; | |
| 803 | + } | |
| 858 | 804 | |
| 859 | - public Date getIsWarrantEndTime() { | |
| 860 | - return isWarrantEndTime; | |
| 805 | + public String getFiles() { | |
| 806 | + return files; | |
| 861 | 807 | } |
| 862 | 808 | |
| 863 | - public void setIsWarrantEndTime(Date isWarrantEndTime) { | |
| 864 | - this.isWarrantEndTime = isWarrantEndTime; | |
| 809 | + public void setFiles(String files) { | |
| 810 | + this.files = files; | |
| 865 | 811 | } |
| 866 | 812 | |
| 867 | 813 | public String getExamineStatus() { |
| ... | ... | @@ -880,42 +826,6 @@ public class BsthTLine extends BaseEntity |
| 880 | 826 | this.examineType = examineType; |
| 881 | 827 | } |
| 882 | 828 | |
| 883 | - public String getfCompany() { | |
| 884 | - return fCompany; | |
| 885 | - } | |
| 886 | - | |
| 887 | - public void setfCompany(String fCompany) { | |
| 888 | - this.fCompany = fCompany; | |
| 889 | - } | |
| 890 | - | |
| 891 | - public Long getpLineId() { | |
| 892 | - return pLineId; | |
| 893 | - } | |
| 894 | - | |
| 895 | - public void setpLineId(Long pLineId) { | |
| 896 | - this.pLineId = pLineId; | |
| 897 | - } | |
| 898 | - | |
| 899 | - @Override | |
| 900 | - public String getUpdateBy() { | |
| 901 | - return updateBy; | |
| 902 | - } | |
| 903 | - | |
| 904 | - @Override | |
| 905 | - public void setUpdateBy(String updateBy) { | |
| 906 | - this.updateBy = updateBy; | |
| 907 | - } | |
| 908 | - | |
| 909 | - @Override | |
| 910 | - public Date getUpdateTime() { | |
| 911 | - return updateTime; | |
| 912 | - } | |
| 913 | - | |
| 914 | - @Override | |
| 915 | - public void setUpdateTime(Date updateTime) { | |
| 916 | - this.updateTime = updateTime; | |
| 917 | - } | |
| 918 | - | |
| 919 | 829 | public String getRevenueType() { |
| 920 | 830 | return revenueType; |
| 921 | 831 | } |
| ... | ... | @@ -947,77 +857,4 @@ public class BsthTLine extends BaseEntity |
| 947 | 857 | public void setHistoryId(Long historyId) { |
| 948 | 858 | this.historyId = historyId; |
| 949 | 859 | } |
| 950 | - | |
| 951 | - @Override | |
| 952 | - public String toString() { | |
| 953 | - return "BsthTLine{" + | |
| 954 | - "id=" + id + | |
| 955 | - ", eventId='" + eventId + '\'' + | |
| 956 | - ", lineId=" + lineId + | |
| 957 | - ", lineName='" + lineName + '\'' + | |
| 958 | - ", company='" + company + '\'' + | |
| 959 | - ", fCompany='" + fCompany + '\'' + | |
| 960 | - ", pLineId=" + pLineId + | |
| 961 | - ", serviceType='" + serviceType + '\'' + | |
| 962 | - ", lineLevel='" + lineLevel + '\'' + | |
| 963 | - ", lineType='" + lineType + '\'' + | |
| 964 | - ", district='" + district + '\'' + | |
| 965 | - ", inoutDistrict='" + inoutDistrict + '\'' + | |
| 966 | - ", serviceState='" + serviceState + '\'' + | |
| 967 | - ", busType='" + busType + '\'' + | |
| 968 | - ", airConditionerType='" + airConditionerType + '\'' + | |
| 969 | - ", sellTicketType='" + sellTicketType + '\'' + | |
| 970 | - ", serviceTime='" + serviceTime + '\'' + | |
| 971 | - ", lineDistance=" + lineDistance + | |
| 972 | - ", lineCode='" + lineCode + '\'' + | |
| 973 | - ", warrantYear=" + warrantYear + | |
| 974 | - ", warrantStartTime=" + warrantStartTime + | |
| 975 | - ", warrantEndTime=" + warrantEndTime + | |
| 976 | - ", planCancelTime=" + planCancelTime + | |
| 977 | - ", cancelTime=" + cancelTime + | |
| 978 | - ", updateBy='" + updateBy + '\'' + | |
| 979 | - ", updateTime=" + updateTime + | |
| 980 | - ", timeSchedule=" + timeSchedule + | |
| 981 | - ", park='" + park + '\'' + | |
| 982 | - ", isWarrant='" + isWarrant + '\'' + | |
| 983 | - ", roadType='" + roadType + '\'' + | |
| 984 | - ", ticketPrice='" + ticketPrice + '\'' + | |
| 985 | - ", firstStation='" + firstStation + '\'' + | |
| 986 | - ", firstTime='" + firstTime + '\'' + | |
| 987 | - ", lastStation='" + lastStation + '\'' + | |
| 988 | - ", lastTime='" + lastTime + '\'' + | |
| 989 | - ", mileageUp='" + mileageUp + '\'' + | |
| 990 | - ", mileageDown='" + mileageDown + '\'' + | |
| 991 | - ", stationUp='" + stationUp + '\'' + | |
| 992 | - ", stationDown='" + stationDown + '\'' + | |
| 993 | - ", travelTimeUp='" + travelTimeUp + '\'' + | |
| 994 | - ", travelTimeDown='" + travelTimeDown + '\'' + | |
| 995 | - ", travelIntervalUp='" + travelIntervalUp + '\'' + | |
| 996 | - ", travelIntervalDown='" + travelIntervalDown + '\'' + | |
| 997 | - ", warrantVehiclesLarge=" + warrantVehiclesLarge + | |
| 998 | - ", warrantVehiclesMiddle=" + warrantVehiclesMiddle + | |
| 999 | - ", vehiclesNumber=" + vehiclesNumber + | |
| 1000 | - ", numberVehiclesLarge=" + numberVehiclesLarge + | |
| 1001 | - ", numberVehiclesMiddle=" + numberVehiclesMiddle + | |
| 1002 | - ", carPlate='" + carPlate + '\'' + | |
| 1003 | - ", numberPerson=" + numberPerson + | |
| 1004 | - ", numberPersonDriver=" + numberPersonDriver + | |
| 1005 | - ", numberPersonSales=" + numberPersonSales + | |
| 1006 | - ", busEvNumber=" + busEvNumber + | |
| 1007 | - ", directions='" + directions + '\'' + | |
| 1008 | - ", halfwayStation='" + halfwayStation + '\'' + | |
| 1009 | - ", divideLevel='" + divideLevel + '\'' + | |
| 1010 | - ", hasTimelists='" + hasTimelists + '\'' + | |
| 1011 | - ", isMetro='" + isMetro + '\'' + | |
| 1012 | - ", metroTime='" + metroTime + '\'' + | |
| 1013 | - ", coldBonusType='" + coldBonusType + '\'' + | |
| 1014 | - ", lineUpdateType='" + lineUpdateType + '\'' + | |
| 1015 | - ", updateStatus='" + updateStatus + '\'' + | |
| 1016 | - ", nightParking='" + nightParking + '\'' + | |
| 1017 | - ", files='" + files + '\'' + | |
| 1018 | - ", examineStatus='" + examineStatus + '\'' + | |
| 1019 | - ", examineType='" + examineType + '\'' + | |
| 1020 | - ", revenueType='" + revenueType + '\'' + | |
| 1021 | - '}'; | |
| 1022 | - } | |
| 1023 | 860 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/domain/BsthTLineKFK.java
| ... | ... | @@ -4,7 +4,12 @@ import com.fasterxml.jackson.annotation.JsonFormat; |
| 4 | 4 | import com.ruoyi.framework.aspectj.lang.annotation.Excel; |
| 5 | 5 | import com.ruoyi.framework.web.domain.BaseEntity; |
| 6 | 6 | |
| 7 | +import java.beans.PropertyDescriptor; | |
| 8 | +import java.lang.reflect.Field; | |
| 9 | +import java.lang.reflect.Method; | |
| 7 | 10 | import java.util.Date; |
| 11 | +import java.util.List; | |
| 12 | +import java.util.Map; | |
| 8 | 13 | |
| 9 | 14 | /** |
| 10 | 15 | * 【请填写功能名称】对象 bsth_t_line |
| ... | ... | @@ -12,7 +17,7 @@ import java.util.Date; |
| 12 | 17 | * @author ruoyi |
| 13 | 18 | * @date 2021-08-17 |
| 14 | 19 | */ |
| 15 | -public class BsthTLineKFK extends BaseEntity | |
| 20 | +public class BsthTLineKFK | |
| 16 | 21 | { |
| 17 | 22 | /** 线路名称 */ |
| 18 | 23 | private String lineName; |
| ... | ... | @@ -109,10 +114,10 @@ public class BsthTLineKFK extends BaseEntity |
| 109 | 114 | @JsonFormat(pattern = "yyyy-MM-dd") |
| 110 | 115 | private Date timeSchedule; |
| 111 | 116 | |
| 112 | - /** 经营权证(大巴) */ | |
| 117 | + /** 经营权证(大) */ | |
| 113 | 118 | private Long warrantVehiclesLarge; |
| 114 | 119 | |
| 115 | - /** 经营权证(中巴) */ | |
| 120 | + /** 经营权证(中) */ | |
| 116 | 121 | private Long warrantVehiclesMiddle; |
| 117 | 122 | |
| 118 | 123 | /** 实际配车数 */ |
| ... | ... | @@ -184,6 +189,39 @@ public class BsthTLineKFK extends BaseEntity |
| 184 | 189 | /** 类型 */ |
| 185 | 190 | private String operationType; |
| 186 | 191 | |
| 192 | + | |
| 193 | + public BsthTLineKFK(){ | |
| 194 | + | |
| 195 | + } | |
| 196 | + public BsthTLineKFK(BsthTLine bsthTLine, List<Map> companyList) { | |
| 197 | + try { | |
| 198 | + Field[] fields=BsthTLineKFK.class.getDeclaredFields(); | |
| 199 | + for(Field f : fields) { | |
| 200 | + if(!"companyID".equals(f.getName())&&!"fCompanyID".equals(f.getName())&&!"operationType".equals(f.getName())&&!"fCompany".equals(f.getName())){ | |
| 201 | + PropertyDescriptor pd = new PropertyDescriptor(f.getName(), BsthTLine.class); | |
| 202 | + Method rM = pd.getReadMethod();//获得读方法 | |
| 203 | + Object v = rM.invoke(bsthTLine); | |
| 204 | + pd = new PropertyDescriptor(f.getName(), BsthTLineKFK.class); | |
| 205 | + Method wM = pd.getWriteMethod();//获得写方法 | |
| 206 | + wM.invoke(this, v); | |
| 207 | + } | |
| 208 | + } | |
| 209 | + this.fCompany=bsthTLine.getfCompany(); | |
| 210 | + for (Map map : companyList) { | |
| 211 | + String fc=map.get("fCompany").toString(); | |
| 212 | + String id=map.get("companyID").toString(); | |
| 213 | + if (fc.equals(this.company+"本部")){ | |
| 214 | + this.companyID=id; | |
| 215 | + }if(fc.equals(this.fCompany)){ | |
| 216 | + this.fCompanyID=id; | |
| 217 | + } | |
| 218 | + } | |
| 219 | + } catch (Exception e) { | |
| 220 | + e.printStackTrace(); | |
| 221 | + } | |
| 222 | + } | |
| 223 | + | |
| 224 | + | |
| 187 | 225 | public String getLineName() { |
| 188 | 226 | return lineName; |
| 189 | 227 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/domain/LineHistoryReport.java
| ... | ... | @@ -244,14 +244,14 @@ public class LineHistoryReport extends BaseEntity |
| 244 | 244 | @Excel(name = "原行驶间隔(低谷)") |
| 245 | 245 | private String travelIntervalDownOld; |
| 246 | 246 | |
| 247 | - @Excel(name = "经营权证(大巴)") | |
| 247 | + @Excel(name = "经营权证(大)") | |
| 248 | 248 | private Long warrantVehiclesLarge; |
| 249 | - @Excel(name = "原经营权证(大巴)") | |
| 249 | + @Excel(name = "原经营权证(大)") | |
| 250 | 250 | private Long warrantVehiclesLargeOld; |
| 251 | 251 | |
| 252 | - @Excel(name = "经营权证(中巴)") | |
| 252 | + @Excel(name = "经营权证(中)") | |
| 253 | 253 | private Long warrantVehiclesMiddle; |
| 254 | - @Excel(name = "原经营权证(中巴)") | |
| 254 | + @Excel(name = "原经营权证(中)") | |
| 255 | 255 | private Long warrantVehiclesMiddleOld; |
| 256 | 256 | |
| 257 | 257 | @Excel(name = "实际配车数") |
| ... | ... | @@ -259,14 +259,14 @@ public class LineHistoryReport extends BaseEntity |
| 259 | 259 | @Excel(name = "原实际配车数") |
| 260 | 260 | private Long vehiclesNumberOld; |
| 261 | 261 | |
| 262 | - @Excel(name = "实际车辆数(大巴)") | |
| 262 | + @Excel(name = "实际车辆数(大)") | |
| 263 | 263 | private Long numberVehiclesLarge; |
| 264 | - @Excel(name = "原实际车辆数(大巴)") | |
| 264 | + @Excel(name = "原实际车辆数(大)") | |
| 265 | 265 | private Long numberVehiclesLargeOld; |
| 266 | 266 | |
| 267 | - @Excel(name = "实际车辆数(中巴)") | |
| 267 | + @Excel(name = "实际车辆数(中)") | |
| 268 | 268 | private Long numberVehiclesMiddle; |
| 269 | - @Excel(name = "原实际车辆数(中巴)") | |
| 269 | + @Excel(name = "原实际车辆数(中)") | |
| 270 | 270 | private Long numberVehiclesMiddleOld; |
| 271 | 271 | |
| 272 | 272 | @Excel(name = "车辆自编号") | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/service/IBsthTLineService.java
| ... | ... | @@ -4,6 +4,7 @@ import java.util.List; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | |
| 6 | 6 | import com.ruoyi.project.system.line.domain.BsthTLine; |
| 7 | +import com.ruoyi.project.system.line.domain.BsthTLineKFK; | |
| 7 | 8 | import com.ruoyi.project.system.line.domain.LineHistoryReport; |
| 8 | 9 | |
| 9 | 10 | /** |
| ... | ... | @@ -68,4 +69,7 @@ public interface IBsthTLineService |
| 68 | 69 | |
| 69 | 70 | List<LineHistoryReport>getLineHistoryReport(BsthTLine bsthTLine); |
| 70 | 71 | |
| 72 | + void sendKFK(BsthTLineKFK bsthTLine); | |
| 73 | + | |
| 74 | + List<BsthTLineKFK> changeCN(List<BsthTLineKFK> list); | |
| 71 | 75 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/line/service/impl/BsthTLineServiceImpl.java
| 1 | 1 | package com.ruoyi.project.system.line.service.impl; |
| 2 | 2 | |
| 3 | +import java.lang.reflect.Field; | |
| 3 | 4 | import java.util.*; |
| 4 | 5 | import java.util.stream.Collectors; |
| 5 | 6 | |
| 7 | +import cn.hutool.json.JSON; | |
| 8 | +import com.ruoyi.project.system.dict.domain.DictData; | |
| 9 | +import com.ruoyi.project.system.dict.service.IDictDataService; | |
| 10 | +import com.ruoyi.project.system.line.domain.BsthTLineKFK; | |
| 6 | 11 | import com.ruoyi.project.system.line.domain.LineHistoryReport; |
| 12 | +import org.slf4j.Logger; | |
| 13 | +import org.slf4j.LoggerFactory; | |
| 7 | 14 | import org.springframework.beans.factory.annotation.Autowired; |
| 15 | +import org.springframework.kafka.core.KafkaTemplate; | |
| 16 | +import org.springframework.kafka.support.SendResult; | |
| 8 | 17 | import org.springframework.stereotype.Service; |
| 9 | 18 | import org.springframework.transaction.annotation.Transactional; |
| 10 | 19 | |
| ... | ... | @@ -12,6 +21,8 @@ import com.ruoyi.project.system.line.mapper.BsthTLineMapper; |
| 12 | 21 | import com.ruoyi.project.system.line.domain.BsthTLine; |
| 13 | 22 | import com.ruoyi.project.system.line.service.IBsthTLineService; |
| 14 | 23 | import com.ruoyi.common.utils.text.Convert; |
| 24 | +import org.springframework.util.concurrent.ListenableFuture; | |
| 25 | +import org.springframework.util.concurrent.ListenableFutureCallback; | |
| 15 | 26 | |
| 16 | 27 | /** |
| 17 | 28 | * 【请填写功能名称】Service业务层处理 |
| ... | ... | @@ -25,6 +36,14 @@ public class BsthTLineServiceImpl implements IBsthTLineService |
| 25 | 36 | @Autowired |
| 26 | 37 | private BsthTLineMapper bsthTLineMapper; |
| 27 | 38 | |
| 39 | + @Autowired | |
| 40 | + private KafkaTemplate kafkaTemplate; | |
| 41 | + | |
| 42 | + Logger logger = LoggerFactory.getLogger(BsthTLineServiceImpl.class); | |
| 43 | + | |
| 44 | + @Autowired | |
| 45 | + IDictDataService dictDataService; | |
| 46 | + | |
| 28 | 47 | /** |
| 29 | 48 | * 查询【请填写功能名称】 |
| 30 | 49 | * |
| ... | ... | @@ -159,6 +178,12 @@ public class BsthTLineServiceImpl implements IBsthTLineService |
| 159 | 178 | i=bsthTLineMapper.insertBsthTLine(bl); |
| 160 | 179 | //删除审核表 |
| 161 | 180 | bsthTLineMapper.deleteBsthTLineExamineById(new String[]{bsthTLine.getId().toString()}); |
| 181 | + | |
| 182 | + //kafka | |
| 183 | + List<Map> companyList=this.selectCompany(); | |
| 184 | + BsthTLineKFK bsthTLineKFK=new BsthTLineKFK(bl,companyList); | |
| 185 | + bsthTLineKFK.setOperationType("insert"); | |
| 186 | + this.sendKFK(bsthTLineKFK); | |
| 162 | 187 | }else{//未通过 |
| 163 | 188 | //修改审核表状态 |
| 164 | 189 | bl=new BsthTLine(); |
| ... | ... | @@ -196,6 +221,11 @@ public class BsthTLineServiceImpl implements IBsthTLineService |
| 196 | 221 | i=bsthTLineMapper.updateBsthTLine(bl); |
| 197 | 222 | //删除审核表记录 |
| 198 | 223 | bsthTLineMapper.deleteBsthTLineExamineById(new String[]{String.valueOf(id)}); |
| 224 | + //kafka | |
| 225 | + List<Map> companyList=this.selectCompany(); | |
| 226 | + BsthTLineKFK bsthTLineKFK=new BsthTLineKFK(bl,companyList); | |
| 227 | + bsthTLineKFK.setOperationType("update"); | |
| 228 | + this.sendKFK(bsthTLineKFK); | |
| 199 | 229 | }else{//未通过 |
| 200 | 230 | //修改审核表状态 |
| 201 | 231 | bl=new BsthTLine(); |
| ... | ... | @@ -276,4 +306,79 @@ public class BsthTLineServiceImpl implements IBsthTLineService |
| 276 | 306 | return bsthTLineMapper.getLineHistoryReport(bsthTLine); |
| 277 | 307 | } |
| 278 | 308 | |
| 309 | + @Override | |
| 310 | + public void sendKFK(BsthTLineKFK bsthTLine){ | |
| 311 | + Map<String, Object> map = new HashMap<>(); | |
| 312 | + map.put("datatype", "PDGJ_XLDA"); | |
| 313 | + map.put("datas", bsthTLine); | |
| 314 | + JSON j=new cn.hutool.json.JSONObject(map); | |
| 315 | + String json =j.toString(); | |
| 316 | + ListenableFuture<SendResult<String, String>> future = kafkaTemplate.send("XLJC", json); | |
| 317 | + future.addCallback(new ListenableFutureCallback<SendResult<String, String>>() { | |
| 318 | + @Override | |
| 319 | + public void onSuccess(SendResult<String, String> result) { | |
| 320 | + } | |
| 321 | + @Override | |
| 322 | + public void onFailure(Throwable ex) { | |
| 323 | + logger.error("kafka发送线路数据异常", ex); | |
| 324 | + } | |
| 325 | + }); | |
| 326 | + } | |
| 327 | + | |
| 328 | + @Override | |
| 329 | + public List<BsthTLineKFK> changeCN(List<BsthTLineKFK> list){ | |
| 330 | + List<DictData> dicts = dictDataService.selectDictDataList(null); | |
| 331 | + Map<String,List<DictData>> dictMap = new HashMap(); | |
| 332 | + for(DictData d : dicts) { | |
| 333 | + if(dictMap.get(d.getDictType()) == null) { | |
| 334 | + dictMap.put(d.getDictType(), new ArrayList<DictData>()); | |
| 335 | + } | |
| 336 | + dictMap.get(d.getDictType()).add(d); | |
| 337 | + } | |
| 338 | + try { | |
| 339 | + for(BsthTLineKFK line:list) { | |
| 340 | + Field[] field = line.getClass().getDeclaredFields(); | |
| 341 | + for(int j=0 ; j<field.length ; j++){ //遍历所有属性 | |
| 342 | + String name = field[j].getName(); //获取属性的名字 | |
| 343 | + if(name.length()>3&&!"Old".equals(name.substring(name.length()-3))&&!"lineName".equals(name)){ | |
| 344 | + //获取变更前后的值 | |
| 345 | + Field f = line.getClass().getDeclaredField(name); | |
| 346 | + f.setAccessible(true); | |
| 347 | + f.get(line); | |
| 348 | + String v =f.get(line)==null?"":f.get(line).toString(); | |
| 349 | + //编码转换 | |
| 350 | + if(dictMap.get(name) != null) { | |
| 351 | + if(v != null && v.split(",").length > 0) { | |
| 352 | + String result = ""; | |
| 353 | + for(String str:v.split(",")) { | |
| 354 | + for(DictData d:dictMap.get(name)) { | |
| 355 | + if(d.getDictValue().equals(str)) { | |
| 356 | + result += d.getDictLabel() + ","; | |
| 357 | + } | |
| 358 | + } | |
| 359 | + } | |
| 360 | + if(!result.isEmpty()) { | |
| 361 | + f.set(line, result.substring(0,result.length()-1)); | |
| 362 | + }else { | |
| 363 | + f.set(line, v); | |
| 364 | + } | |
| 365 | + } | |
| 366 | + } | |
| 367 | + if("inoutDistrict".equals(name)||"isWarrant".equals(name)||"isMetro".equals(name)||"hasTimelists".equals(name)){ | |
| 368 | + if(!"".equals(v)){ | |
| 369 | + for(DictData d:dictMap.get("trueFalse")) { | |
| 370 | + if(d.getDictValue().equals(v)) { | |
| 371 | + f.set(line, d.getDictLabel()); | |
| 372 | + } | |
| 373 | + } | |
| 374 | + } | |
| 375 | + } | |
| 376 | + } | |
| 377 | + } | |
| 378 | + } | |
| 379 | + } catch (Exception e) { | |
| 380 | + e.printStackTrace(); | |
| 381 | + } | |
| 382 | + return list; | |
| 383 | + } | |
| 279 | 384 | } | ... | ... |
bsthLineProfiles/src/main/java/com/ruoyi/project/system/notice/controller/NoticeController.java
| 1 | 1 | package com.ruoyi.project.system.notice.controller; |
| 2 | 2 | |
| 3 | +import java.util.ArrayList; | |
| 3 | 4 | import java.util.List; |
| 5 | + | |
| 6 | +import com.ruoyi.project.system.line.domain.BsthTLineKFK; | |
| 4 | 7 | import org.apache.shiro.authz.annotation.RequiresPermissions; |
| 5 | 8 | import org.springframework.beans.factory.annotation.Autowired; |
| 6 | 9 | import org.springframework.stereotype.Controller; |
| ... | ... | @@ -106,4 +109,14 @@ public class NoticeController extends BaseController |
| 106 | 109 | { |
| 107 | 110 | return toAjax(noticeService.deleteNoticeByIds(ids)); |
| 108 | 111 | } |
| 112 | + | |
| 113 | + @PostMapping("/getLineList") | |
| 114 | + @ResponseBody | |
| 115 | + public List<BsthTLineKFK> getList() | |
| 116 | + { | |
| 117 | + List list=new ArrayList(); | |
| 118 | + BsthTLineKFK kfk=new BsthTLineKFK(); | |
| 119 | + list.add(kfk); | |
| 120 | + return list; | |
| 121 | + } | |
| 109 | 122 | } | ... | ... |
bsthLineProfiles/src/main/resources/application.yml
| ... | ... | @@ -60,18 +60,18 @@ spring: |
| 60 | 60 | active: druid |
| 61 | 61 | # 文件上传 |
| 62 | 62 | servlet: |
| 63 | - multipart: | |
| 64 | - # 单个文件大小 | |
| 65 | - max-file-size: 10MB | |
| 66 | - # 设置总上传的文件大小 | |
| 67 | - max-request-size: 20MB | |
| 63 | + multipart: | |
| 64 | + # 单个文件大小 | |
| 65 | + max-file-size: 10MB | |
| 66 | + # 设置总上传的文件大小 | |
| 67 | + max-request-size: 20MB | |
| 68 | 68 | # 服务模块 |
| 69 | 69 | devtools: |
| 70 | 70 | restart: |
| 71 | 71 | # 热部署开关 |
| 72 | 72 | enabled: true |
| 73 | 73 | |
| 74 | -# redis 配置 | |
| 74 | + # redis 配置 | |
| 75 | 75 | redis: |
| 76 | 76 | # 地址 |
| 77 | 77 | host: 127.0.0.1 |
| ... | ... | @@ -104,12 +104,12 @@ spring: |
| 104 | 104 | |
| 105 | 105 | # MyBatis |
| 106 | 106 | mybatis: |
| 107 | - # 搜索指定包别名 | |
| 108 | - typeAliasesPackage: com.ruoyi.project.**.domain | |
| 109 | - # 配置mapper的扫描,找到所有的mapper.xml映射文件 | |
| 110 | - mapperLocations: classpath:mybatis/**/*Mapper.xml | |
| 111 | - # 加载全局的配置文件 | |
| 112 | - configLocation: classpath:mybatis/mybatis-config.xml | |
| 107 | + # 搜索指定包别名 | |
| 108 | + typeAliasesPackage: com.ruoyi.project.**.domain | |
| 109 | + # 配置mapper的扫描,找到所有的mapper.xml映射文件 | |
| 110 | + mapperLocations: classpath:mybatis/**/*Mapper.xml | |
| 111 | + # 加载全局的配置文件 | |
| 112 | + configLocation: classpath:mybatis/mybatis-config.xml | |
| 113 | 113 | |
| 114 | 114 | # PageHelper分页插件 |
| 115 | 115 | pagehelper: |
| ... | ... | @@ -177,4 +177,17 @@ gen: |
| 177 | 177 | # 自动去除表前缀,默认是true |
| 178 | 178 | autoRemovePre: true |
| 179 | 179 | # 表前缀(生成类名不会包含表前缀,多个用逗号分隔) |
| 180 | - tablePrefix: sys_ | |
| 181 | 180 | \ No newline at end of file |
| 181 | + tablePrefix: sys_ | |
| 182 | + | |
| 183 | +kafka: | |
| 184 | + bootstrap-servers: 47.106.82.232:9092 | |
| 185 | + producer: | |
| 186 | + key-serializer: org.apache.kafka.common.serialization.StringSerializer | |
| 187 | + value-serializer: org.apache.kafka.common.serialization.StringSerializer | |
| 188 | + buffer-memory: 33554432 | |
| 189 | + acks: all | |
| 190 | + consumer: | |
| 191 | + enable-auto-commit: true | |
| 192 | + group-id: test | |
| 193 | + key-serializer: org.apache.kafka.common.serialization.StringSerializer | |
| 194 | + value-serializer: org.apache.kafka.common.serialization.StringSerializer | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/line/detail.html
| ... | ... | @@ -5,6 +5,7 @@ |
| 5 | 5 | <th:block th:include="include :: datetimepicker-css"/> |
| 6 | 6 | <th:block th:include="include :: bootstrap-fileinput-css"/> |
| 7 | 7 | <th:block th:include="include :: bootstrap-select-css"/> |
| 8 | + <th:block th:include="include :: select2-css"/> | |
| 8 | 9 | </head> |
| 9 | 10 | <style> |
| 10 | 11 | .select-list li { |
| ... | ... | @@ -121,10 +122,8 @@ |
| 121 | 122 | <!----------------------------------> |
| 122 | 123 | <li id="ticketPrice"> |
| 123 | 124 | <label>票价:</label> |
| 124 | - <!--data-max-options="2" 限制多选数量--> | |
| 125 | - <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" class="selectpicker" | |
| 126 | - multiple title="" disabled> | |
| 127 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 125 | + <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" class="selectpicker" disabled multiple title="" > | |
| 126 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 128 | 127 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.ticketPrice== null ? '' : bsthTLine.ticketPrice),#strings.toString(dict.dictValue))}"> |
| 129 | 128 | </option> |
| 130 | 129 | </select> |
| ... | ... | @@ -209,12 +208,12 @@ |
| 209 | 208 | </li> |
| 210 | 209 | <!----------------------------------> |
| 211 | 210 | <li id="warrantVehiclesLarge"> |
| 212 | - <label>经营权证(大巴):</label><input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" | |
| 211 | + <label>经营权证(大):</label><input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" | |
| 213 | 212 | type="text" disabled> |
| 214 | 213 | </li> |
| 215 | 214 | <!----------------------------------> |
| 216 | 215 | <li id="warrantVehiclesMiddle"> |
| 217 | - <label>经营权证(中巴):</label><input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" | |
| 216 | + <label>经营权证(中):</label><input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" | |
| 218 | 217 | type="text" disabled> |
| 219 | 218 | </li> |
| 220 | 219 | <!----------------------------------> |
| ... | ... | @@ -223,12 +222,12 @@ |
| 223 | 222 | </li> |
| 224 | 223 | <!----------------------------------> |
| 225 | 224 | <li id="numberVehiclesLarge"> |
| 226 | - <label>实际车辆数(大巴):</label> | |
| 225 | + <label>实际车辆数(大):</label> | |
| 227 | 226 | <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" type="text" disabled> |
| 228 | 227 | </li> |
| 229 | 228 | <!----------------------------------> |
| 230 | 229 | <li id="numberVehiclesMiddle"> |
| 231 | - <label>实际车辆数(中巴):</label> | |
| 230 | + <label>实际车辆数(中):</label> | |
| 232 | 231 | <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" type="text" disabled> |
| 233 | 232 | </li> |
| 234 | 233 | <!----------------------------------> |
| ... | ... | @@ -385,6 +384,7 @@ |
| 385 | 384 | <th:block th:include="include :: datetimepicker-js"/> |
| 386 | 385 | <th:block th:include="include :: bootstrap-fileinput-js"/> |
| 387 | 386 | <th:block th:include="include :: bootstrap-select-js"/> |
| 387 | +<th:block th:include="include :: select2-js"/> | |
| 388 | 388 | <script th:inline="javascript"> |
| 389 | 389 | var prefix = ctx + "system/line"; |
| 390 | 390 | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/line/line.html
| ... | ... | @@ -154,15 +154,15 @@ |
| 154 | 154 | <!----------------------------------> |
| 155 | 155 | <li><label>行驶间隔(低谷):</label> <input type="text" name="travelIntervalDown" /></li> |
| 156 | 156 | <!----------------------------------> |
| 157 | - <li><label>经营权证(大巴):</label> <input type="text" name="warrantVehiclesLarge" /></li> | |
| 157 | + <li><label>经营权证(大):</label> <input type="text" name="warrantVehiclesLarge" /></li> | |
| 158 | 158 | <!----------------------------------> |
| 159 | - <li><label>经营权证(中巴):</label> <input type="text" name="warrantVehiclesMiddle" /></li> | |
| 159 | + <li><label>经营权证(中):</label> <input type="text" name="warrantVehiclesMiddle" /></li> | |
| 160 | 160 | <!----------------------------------> |
| 161 | 161 | <li><label>实际配车数:</label> <input type="text" name="vehiclesNumber" /></li> |
| 162 | 162 | <!----------------------------------> |
| 163 | - <li><label>实际车辆数(大巴):</label> <input type="text" name="numberVehiclesLarge" /></li> | |
| 163 | + <li><label>实际车辆数(大):</label> <input type="text" name="numberVehiclesLarge" /></li> | |
| 164 | 164 | <!----------------------------------> |
| 165 | - <li><label>实际车辆数(中巴):</label> <input type="text" name="numberVehiclesMiddle" /></li> | |
| 165 | + <li><label>实际车辆数(中):</label> <input type="text" name="numberVehiclesMiddle" /></li> | |
| 166 | 166 | <!----------------------------------> |
| 167 | 167 | <li><label>车辆自编号:</label> <input type="text" name="carPlate" /></li> |
| 168 | 168 | <!----------------------------------> |
| ... | ... | @@ -527,78 +527,97 @@ |
| 527 | 527 | { |
| 528 | 528 | field: 'company', |
| 529 | 529 | title: '公司' |
| 530 | - }, | |
| 531 | - { | |
| 530 | + },{ | |
| 532 | 531 | field: 'fCompany', |
| 533 | 532 | title: '分公司' |
| 534 | - }, | |
| 535 | - { | |
| 533 | + },{ | |
| 536 | 534 | field: 'lineName', |
| 537 | 535 | title: '线路名称' |
| 538 | - }, | |
| 539 | - /*{ | |
| 540 | - field: 'pLineId', | |
| 541 | - title: '主线路id' | |
| 542 | - },*/ | |
| 543 | - { | |
| 544 | - field: 'serviceType', | |
| 545 | - title: '营运方式' | |
| 546 | - }, | |
| 547 | - { | |
| 548 | - field: 'lineLevel', | |
| 549 | - title: '线路属性' | |
| 550 | - }, | |
| 551 | - { | |
| 536 | + },{ | |
| 552 | 537 | field: 'lineType', |
| 538 | + title: '线路类型' | |
| 539 | + },{ | |
| 540 | + field: 'lineLevel', | |
| 553 | 541 | title: '线路属性' |
| 554 | - }, | |
| 555 | - { | |
| 542 | + },{ | |
| 543 | + field: 'serviceType', | |
| 544 | + title: '营运方式' | |
| 545 | + },{ | |
| 546 | + field: 'revenueType', | |
| 547 | + title: '营收类型' | |
| 548 | + },{ | |
| 556 | 549 | field: 'district', |
| 557 | 550 | title: '区属' |
| 558 | - }, | |
| 559 | - { | |
| 551 | + },{ | |
| 560 | 552 | field: 'inoutDistrict', |
| 561 | 553 | title: '是否区内' |
| 562 | - }, | |
| 563 | - { | |
| 564 | - field: 'serviceState', | |
| 565 | - title: '营运状态' | |
| 566 | - }, | |
| 567 | - { | |
| 568 | - field: 'busType', | |
| 569 | - title: '车辆类型' | |
| 570 | - }, | |
| 571 | - { | |
| 554 | + },{ | |
| 555 | + field: 'roadType', | |
| 556 | + title: '道路类型' | |
| 557 | + },{ | |
| 558 | + field: 'serviceTime', | |
| 559 | + title: '运营时间' | |
| 560 | + },{ | |
| 572 | 561 | field: 'airConditionerType', |
| 573 | 562 | title: '是否空调' |
| 574 | - }, | |
| 575 | - { | |
| 563 | + },{ | |
| 576 | 564 | field: 'sellTicketType', |
| 577 | 565 | title: '售票类型' |
| 578 | - }, | |
| 579 | - { | |
| 580 | - field: 'serviceTime', | |
| 581 | - title: '运营时间' | |
| 582 | - }, | |
| 583 | - { | |
| 566 | + },{ | |
| 567 | + field: 'ticketPrice', | |
| 568 | + title: '票价' | |
| 569 | + },{ | |
| 570 | + field: 'halfwayStation', | |
| 571 | + title: '站点名称' | |
| 572 | + },{ | |
| 573 | + field: 'directions', | |
| 574 | + title: '线路走向' | |
| 575 | + },{ | |
| 576 | + field: 'stationUp', | |
| 577 | + title: '站级数(上行)' | |
| 578 | + },{ | |
| 579 | + field: 'stationDown', | |
| 580 | + title: '站级数(下行)' | |
| 581 | + },{ | |
| 582 | + field: 'firstStation', | |
| 583 | + title: '首站' | |
| 584 | + },{ | |
| 585 | + field: 'lastStation', | |
| 586 | + title: '末站' | |
| 587 | + },{ | |
| 588 | + field: 'firstTime', | |
| 589 | + title: '起点站首末班' | |
| 590 | + },{ | |
| 591 | + field: 'lastTime', | |
| 592 | + title: '终点站首末班' | |
| 593 | + },{ | |
| 594 | + field: 'mileageUp', | |
| 595 | + title: '上行里程数' | |
| 596 | + },{ | |
| 597 | + field: 'mileageDown', | |
| 598 | + title: '下行里程数' | |
| 599 | + },{ | |
| 584 | 600 | field: 'lineDistance', |
| 585 | 601 | title: '线路长度' |
| 586 | - }, | |
| 587 | - { | |
| 588 | - field: 'lineCode', | |
| 589 | - title: '线路编码' | |
| 590 | - }, | |
| 591 | - { | |
| 592 | - field: 'warrantYear', | |
| 593 | - title: '授权年限' | |
| 594 | - }, | |
| 595 | - { | |
| 602 | + },{ | |
| 603 | + field: 'isWarrant', | |
| 604 | + title: '是否权证' | |
| 605 | + },{ | |
| 596 | 606 | field: 'warrantStartTime', |
| 597 | 607 | title: '授权起始日期' |
| 598 | - }, | |
| 599 | - { | |
| 608 | + },{ | |
| 600 | 609 | field: 'warrantEndTime', |
| 601 | 610 | title: '授权结束日期' |
| 611 | + },{ | |
| 612 | + field: 'warrantYear', | |
| 613 | + title: '授权年限' | |
| 614 | + },{ | |
| 615 | + field: 'serviceState', | |
| 616 | + title: '营运状态' | |
| 617 | + }, | |
| 618 | + { | |
| 619 | + field: 'busType', | |
| 620 | + title: '车辆类型' | |
| 602 | 621 | }, |
| 603 | 622 | { |
| 604 | 623 | field: 'planCancelTime', |
| ... | ... | @@ -623,54 +642,6 @@ |
| 623 | 642 | { |
| 624 | 643 | field: 'timeSchedule', |
| 625 | 644 | title: '实施时间' |
| 626 | - }, | |
| 627 | - /*{ | |
| 628 | - field: 'park', | |
| 629 | - title: '停车场' | |
| 630 | - },*/ | |
| 631 | - { | |
| 632 | - field: 'isWarrant', | |
| 633 | - title: '是否权证' | |
| 634 | - }, | |
| 635 | - { | |
| 636 | - field: 'roadType', | |
| 637 | - title: '道路类型' | |
| 638 | - }, | |
| 639 | - { | |
| 640 | - field: 'ticketPrice', | |
| 641 | - title: '票价' | |
| 642 | - }, | |
| 643 | - { | |
| 644 | - field: 'firstStation', | |
| 645 | - title: '首站' | |
| 646 | - }, | |
| 647 | - { | |
| 648 | - field: 'firstTime', | |
| 649 | - title: '起点站首末班' | |
| 650 | - }, | |
| 651 | - { | |
| 652 | - field: 'lastStation', | |
| 653 | - title: '末站' | |
| 654 | - }, | |
| 655 | - { | |
| 656 | - field: 'lastTime', | |
| 657 | - title: '终点站首末班' | |
| 658 | - }, | |
| 659 | - { | |
| 660 | - field: 'mileageUp', | |
| 661 | - title: '上行里程数' | |
| 662 | - }, | |
| 663 | - { | |
| 664 | - field: 'mileageDown', | |
| 665 | - title: '下行里程数' | |
| 666 | - }, | |
| 667 | - { | |
| 668 | - field: 'stationUp', | |
| 669 | - title: '站级数(上行)' | |
| 670 | - }, | |
| 671 | - { | |
| 672 | - field: 'stationDown', | |
| 673 | - title: '站级数(下行)' | |
| 674 | 645 | },{ |
| 675 | 646 | field: 'travelTimeUp', |
| 676 | 647 | title: '行驶时间(上行)' |
| ... | ... | @@ -685,19 +656,19 @@ |
| 685 | 656 | title: '行驶间隔(低谷)' |
| 686 | 657 | },{ |
| 687 | 658 | field: 'warrantVehiclesLarge', |
| 688 | - title: '经营权证(大巴)' | |
| 659 | + title: '经营权证(大)' | |
| 689 | 660 | }, { |
| 690 | 661 | field: 'warrantVehiclesMiddle', |
| 691 | - title: '经营权证(中巴)' | |
| 662 | + title: '经营权证(中)' | |
| 692 | 663 | },{ |
| 693 | 664 | field: 'vehiclesNumber', |
| 694 | 665 | title: '实际配车数' |
| 695 | 666 | }, { |
| 696 | 667 | field: 'numberVehiclesLarge', |
| 697 | - title: '实际车辆数(大巴)' | |
| 668 | + title: '实际车辆数(大)' | |
| 698 | 669 | }, { |
| 699 | 670 | field: 'numberVehiclesMiddle', |
| 700 | - title: '实际车辆数(中巴)' | |
| 671 | + title: '实际车辆数(中)' | |
| 701 | 672 | },{ |
| 702 | 673 | field: 'carPlate', |
| 703 | 674 | title: '车辆自编号' |
| ... | ... | @@ -714,12 +685,6 @@ |
| 714 | 685 | field: 'busEvNumber', |
| 715 | 686 | title: '新能源车数' |
| 716 | 687 | },{ |
| 717 | - field: 'directions', | |
| 718 | - title: '线路走向' | |
| 719 | - },{ | |
| 720 | - field: 'halfwayStation', | |
| 721 | - title: '站点名称' | |
| 722 | - },{ | |
| 723 | 688 | field: 'divideLevel', |
| 724 | 689 | title: '间隔等级' |
| 725 | 690 | },{ |
| ... | ... | @@ -735,9 +700,6 @@ |
| 735 | 700 | field: 'coldBonusType', |
| 736 | 701 | title: '冷僻线路补贴类型' |
| 737 | 702 | },{ |
| 738 | - field: 'revenueType', | |
| 739 | - title: '营收类型' | |
| 740 | - },{ | |
| 741 | 703 | field: 'lineUpdateType', |
| 742 | 704 | title: '性质' |
| 743 | 705 | }]; | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/lineAdd/add.html
| ... | ... | @@ -245,12 +245,12 @@ |
| 245 | 245 | </div> |
| 246 | 246 | </div> |
| 247 | 247 | <!----------------------------------> |
| 248 | - <label class="col-sm-1 control-label">经营权证(大巴):</label> | |
| 248 | + <label class="col-sm-1 control-label">经营权证(大):</label> | |
| 249 | 249 | <div class="col-sm-2"> |
| 250 | 250 | <input name="warrantVehiclesLarge" class="form-control" type="text"> |
| 251 | 251 | </div> |
| 252 | 252 | <!----------------------------------> |
| 253 | - <label class="col-sm-1 control-label">经营权证(中巴):</label> | |
| 253 | + <label class="col-sm-1 control-label">经营权证(中):</label> | |
| 254 | 254 | <div class="col-sm-2"> |
| 255 | 255 | <input name="warrantVehiclesMiddle" class="form-control" type="text"> |
| 256 | 256 | </div> | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/lineAdd/edit.html
| ... | ... | @@ -257,14 +257,14 @@ |
| 257 | 257 | </select> |
| 258 | 258 | </div> |
| 259 | 259 | <!----------------------------------> |
| 260 | - <label class="col-sm-1 control-label">经营权证(大巴):</label> | |
| 260 | + <label class="col-sm-1 control-label">经营权证(大):</label> | |
| 261 | 261 | <div class="col-sm-2"> |
| 262 | 262 | <input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" class="form-control" type="text"> |
| 263 | 263 | </div> |
| 264 | 264 | </div> |
| 265 | 265 | |
| 266 | 266 | <div class="form-group"> |
| 267 | - <label class="col-sm-1 control-label">经营权证(中巴):</label> | |
| 267 | + <label class="col-sm-1 control-label">经营权证(中):</label> | |
| 268 | 268 | <div class="col-sm-2"> |
| 269 | 269 | <input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" class="form-control" type="text"> |
| 270 | 270 | </div> |
| ... | ... | @@ -274,12 +274,12 @@ |
| 274 | 274 | <input name="vehiclesNumber" th:field="*{vehiclesNumber}" class="form-control" type="text"> |
| 275 | 275 | </div> |
| 276 | 276 | <!----------------------------------> |
| 277 | - <label class="col-sm-1 control-label">实际车辆数(大巴):</label> | |
| 277 | + <label class="col-sm-1 control-label">实际车辆数(大):</label> | |
| 278 | 278 | <div class="col-sm-2"> |
| 279 | 279 | <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" class="form-control" type="text"> |
| 280 | 280 | </div> |
| 281 | 281 | <!----------------------------------> |
| 282 | - <label class="col-sm-1 control-label">实际车辆数(中巴):</label> | |
| 282 | + <label class="col-sm-1 control-label">实际车辆数(中):</label> | |
| 283 | 283 | <div class="col-sm-2"> |
| 284 | 284 | <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" class="form-control" type="text"> |
| 285 | 285 | </div> | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/lineExamine/detail.html
| ... | ... | @@ -5,444 +5,438 @@ |
| 5 | 5 | <th:block th:include="include :: datetimepicker-css" /> |
| 6 | 6 | <th:block th:include="include :: bootstrap-fileinput-css" /> |
| 7 | 7 | <th:block th:include="include :: bootstrap-select-css" /> |
| 8 | +<th:block th:include="include :: select2-css"/> | |
| 8 | 9 | </head> |
| 10 | +<style> | |
| 11 | + .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice { | |
| 12 | + color: #606266; | |
| 13 | + background: #1AB394; | |
| 14 | + border: 1px solid #ebeef5; | |
| 15 | + border-radius: 4px; | |
| 16 | + cursor: default; | |
| 17 | + float: left; | |
| 18 | + margin: 5px 0 0 6px; | |
| 19 | + padding: 0 6px; | |
| 20 | + } | |
| 21 | +</style> | |
| 9 | 22 | <body class="white-bg"> |
| 10 | 23 | <div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
| 11 | 24 | <form class="form-horizontal m" id="form-line-edit" th:object="${bsthTLine}"> |
| 12 | 25 | <input name="id" th:field="*{id}" type="hidden"> |
| 26 | + <h3>路务</h3> | |
| 13 | 27 | <div class="form-group"> |
| 14 | - <label class="col-sm-1 control-label">线路名称:</label> | |
| 15 | - <div class="col-sm-2"> | |
| 16 | - <input name="lineName" th:field="*{lineName}" class="form-control" type="text" disabled> | |
| 28 | + <label class="col-sm-1 control-label" name="lineName">线路名称:</label> | |
| 29 | + <div class="col-sm-2" > | |
| 30 | + <input th:field="*{lineName}" class="form-control" type="text" readonly> | |
| 17 | 31 | </div> |
| 18 | 32 | <!----------------------------------> |
| 19 | - <label class="col-sm-1 control-label">主线路id:</label> | |
| 20 | - <div class="col-sm-2"> | |
| 21 | - <input name="pLineId" th:field="*{pLineId}" class="form-control" type="text" disabled> | |
| 33 | + <label class="col-sm-1 control-label" name="company">公司:</label> | |
| 34 | + <div class="col-sm-2" > | |
| 35 | + <select id='company' ></select> | |
| 22 | 36 | </div> |
| 23 | 37 | <!----------------------------------> |
| 24 | - <label class="col-sm-1 control-label">公司:</label> | |
| 38 | + <label class="col-sm-1 control-label" name="fCompany">分公司:</label> | |
| 25 | 39 | <div class="col-sm-2"> |
| 26 | - <input name="company" th:field="*{company}" class="form-control" type="text" disabled> | |
| 40 | + <select id='fCompany'></select> | |
| 27 | 41 | </div> |
| 28 | 42 | <!----------------------------------> |
| 29 | - <label class="col-sm-1 control-label">分公司:</label> | |
| 43 | + <label class="col-sm-1 control-label" name="lineType">线路类型:</label> | |
| 30 | 44 | <div class="col-sm-2"> |
| 31 | - <input name="fCompany" th:field="*{fCompany}" class="form-control" type="text" disabled> | |
| 45 | + <select name="lineType" th:with="type=${@dict.getType('lineType')}" class="form-control m-b"> | |
| 46 | + <option value=""></option> | |
| 47 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 48 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineType== null ? '' : bsthTLine.lineType),#strings.toString(dict.dictValue))}"> | |
| 49 | + </option> | |
| 50 | + </select> | |
| 32 | 51 | </div> |
| 33 | 52 | </div> |
| 34 | - | |
| 53 | + <!----------------------------------> | |
| 35 | 54 | <div class="form-group"> |
| 36 | - <label class="col-sm-1 control-label">营运方式:</label> | |
| 55 | + <label class="col-sm-1 control-label" name="lineLevel">线路属性:</label> | |
| 37 | 56 | <div class="col-sm-2"> |
| 38 | - <select name="serviceType" th:with="type=${@dict.getType('serviceType')}" class="form-control m-b" disabled> | |
| 57 | + <select name="lineLevel" th:with="type=${@dict.getType('lineLevel')}" class="form-control m-b"> | |
| 39 | 58 | <option value=""></option> |
| 40 | 59 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 41 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceType== null ? '' : bsthTLine.serviceType),#strings.toString(dict.dictValue))}"> | |
| 60 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineLevel== null ? '' : bsthTLine.lineLevel),#strings.toString(dict.dictValue))}"> | |
| 42 | 61 | </option> |
| 43 | 62 | </select> |
| 44 | 63 | </div> |
| 45 | 64 | <!----------------------------------> |
| 46 | - <label class="col-sm-1 control-label">线路属性:</label> | |
| 65 | + <label class="col-sm-1 control-label" name="serviceType">营运方式:</label> | |
| 47 | 66 | <div class="col-sm-2"> |
| 48 | - <select name="lineLevel" th:with="type=${@dict.getType('lineLevel')}" class="form-control m-b" disabled> | |
| 67 | + <select name="serviceType" th:with="type=${@dict.getType('serviceType')}" class="form-control m-b"> | |
| 49 | 68 | <option value=""></option> |
| 50 | 69 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 51 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineLevel== null ? '' : bsthTLine.lineLevel),#strings.toString(dict.dictValue))}"> | |
| 70 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceType== null ? '' : bsthTLine.serviceType),#strings.toString(dict.dictValue))}"> | |
| 52 | 71 | </option> |
| 53 | 72 | </select> |
| 54 | 73 | </div> |
| 55 | 74 | <!----------------------------------> |
| 56 | - <label class="col-sm-1 control-label">线路类型:</label> | |
| 75 | + <label class="col-sm-1 control-label" name="revenueType">营收类型:</label> | |
| 57 | 76 | <div class="col-sm-2"> |
| 58 | - <select name="lineType" th:with="type=${@dict.getType('lineType')}" class="form-control m-b" disabled> | |
| 77 | + <select name="revenueType" th:with="type=${@dict.getType('revenueType')}" class="form-control m-b"> | |
| 59 | 78 | <option value=""></option> |
| 60 | 79 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 61 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineType== null ? '' : bsthTLine.lineType),#strings.toString(dict.dictValue))}"> | |
| 62 | - </option> | |
| 80 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.revenueType== null ? '' : bsthTLine.revenueType),#strings.toString(dict.dictValue))}"></option>></option>></option> | |
| 63 | 81 | </select> |
| 64 | 82 | </div> |
| 65 | 83 | <!----------------------------------> |
| 66 | - <label class="col-sm-1 control-label">道路类型:</label> | |
| 67 | - <div class="col-sm-2" > | |
| 68 | - <!--data-max-options="2" 限制多选数量--> | |
| 69 | - <select name="roadType" th:with="type=${@dict.getType('roadType')}" class="selectpicker form-control" multiple title="" disabled> | |
| 70 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 71 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.roadType== null ? '' : bsthTLine.roadType),#strings.toString(dict.dictValue))}"> | |
| 72 | - </option> | |
| 73 | - </select> | |
| 74 | - </div> | |
| 75 | - </div> | |
| 76 | - | |
| 77 | - <div class="form-group"> | |
| 78 | - <label class="col-sm-1 control-label">区属:</label> | |
| 84 | + <label class="col-sm-1 control-label" name="district">区属:</label> | |
| 79 | 85 | <div class="col-sm-2"> |
| 80 | - <select name="district" th:with="type=${@dict.getType('district')}" class="form-control m-b" disabled> | |
| 81 | - <option value=""></option> | |
| 86 | + <select name="district" th:with="type=${@dict.getType('district')}"class="selectpicker form-control" multiple title=""> | |
| 82 | 87 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 83 | 88 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.district== null ? '' : bsthTLine.district),#strings.toString(dict.dictValue))}"></option> |
| 84 | 89 | </select> |
| 85 | 90 | </div> |
| 86 | - <!----------------------------------> | |
| 87 | - <label class="col-sm-1 control-label">是否区内:</label> | |
| 91 | + </div> | |
| 92 | + <!----------------------------------> | |
| 93 | + <div class="form-group"> | |
| 94 | + <label class="col-sm-1 control-label" name="inoutDistrict">是否区内:</label> | |
| 88 | 95 | <div class="col-sm-2"> |
| 89 | - <select name="inoutDistrict" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b" disabled> | |
| 96 | + <select name="inoutDistrict" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 90 | 97 | <option value=""></option> |
| 91 | 98 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 92 | 99 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.inoutDistrict== null ? '' : bsthTLine.inoutDistrict),#strings.toString(dict.dictValue))}"></option> |
| 93 | 100 | </select> |
| 94 | 101 | </div> |
| 95 | 102 | <!----------------------------------> |
| 96 | - <label class="col-sm-1 control-label">车辆类型:</label> | |
| 97 | - <div class="col-sm-2" th:with="type=${@dict.getType('busType')}"> | |
| 103 | + <label class="col-sm-1 control-label" name="roadType">道路类型:</label> | |
| 104 | + <div class="col-sm-2" > | |
| 98 | 105 | <!--data-max-options="2" 限制多选数量--> |
| 99 | - <select name="busType" th:with="type=${@dict.getType('busType')}" class="selectpicker form-control" multiple title="" disabled > | |
| 106 | + <select name="roadType" th:with="type=${@dict.getType('roadType')}" class="selectpicker form-control" multiple title="" > | |
| 100 | 107 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 101 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.busType== null ? '' : bsthTLine.busType),#strings.toString(dict.dictValue))}"> | |
| 108 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.roadType== null ? '' : bsthTLine.roadType),#strings.toString(dict.dictValue))}"> | |
| 102 | 109 | </option> |
| 103 | 110 | </select> |
| 104 | 111 | </div> |
| 105 | 112 | <!----------------------------------> |
| 106 | - <label class="col-sm-1 control-label">是否空调:</label> | |
| 113 | + <label class="col-sm-1 control-label" name="serviceTime">运营时间:</label> | |
| 114 | + <div class="col-sm-2"> | |
| 115 | + <select name="serviceTime" th:with="type=${@dict.getType('serviceTime')}" class="form-control m-b"> | |
| 116 | + <option value=""></option> | |
| 117 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 118 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceTime== null ? '' : bsthTLine.serviceTime),#strings.toString(dict.dictValue))}"></option> | |
| 119 | + </select> | |
| 120 | + </div> | |
| 121 | + <!----------------------------------> | |
| 122 | + <label class="col-sm-1 control-label" name="airConditionerType">是否空调:</label> | |
| 107 | 123 | <div class="col-sm-2"> |
| 108 | - <select name="airConditionerType" th:with="type=${@dict.getType('airConditionerType')}" class="form-control m-b" disabled> | |
| 124 | + <select name="airConditionerType" th:with="type=${@dict.getType('airConditionerType')}" class="form-control m-b"> | |
| 109 | 125 | <option value=""></option> |
| 110 | 126 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 111 | 127 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.airConditionerType == null ? '' : bsthTLine.airConditionerType ),#strings.toString(dict.dictValue))}"></option> |
| 112 | 128 | </select> |
| 113 | 129 | </div> |
| 114 | 130 | </div> |
| 115 | - | |
| 131 | + <!----------------------------------> | |
| 116 | 132 | <div class="form-group"> |
| 117 | - <label class="col-sm-1 control-label">售票类型:</label> | |
| 118 | - <div class="col-sm-2"> | |
| 119 | - <select name="sellTicketType" th:with="type=${@dict.getType('sellTicketType')}" class="form-control m-b" disabled> | |
| 133 | + <label class="col-sm-1 control-label" name="sellTicketType">售票类型:</label> | |
| 134 | + <div class="col-sm-2" > | |
| 135 | + <select name="sellTicketType" th:with="type=${@dict.getType('sellTicketType')}" class="form-control m-b"> | |
| 120 | 136 | <option value=""></option> |
| 121 | 137 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 122 | 138 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.sellTicketType == null ? '' : bsthTLine.sellTicketType),#strings.toString(dict.dictValue))}"></option> |
| 123 | 139 | </select> |
| 124 | 140 | </div> |
| 125 | 141 | <!----------------------------------> |
| 126 | - <label class="col-sm-1 control-label">票价:</label> | |
| 127 | - <div class="col-sm-2" th:with="type=${@dict.getType('ticketPrice')}"> | |
| 142 | + <label class="col-sm-1 control-label"name="ticketPrice">票价:</label> | |
| 143 | + <div class="col-sm-2" > | |
| 128 | 144 | <!--data-max-options="2" 限制多选数量--> |
| 129 | - <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" class="selectpicker form-control" multiple title="" disabled > | |
| 145 | + <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" class="selectpicker form-control" multiple title="" > | |
| 130 | 146 | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" |
| 131 | 147 | th:selected="${#arrays.contains(#strings.toString(bsthTLine.ticketPrice== null ? '' : bsthTLine.ticketPrice),#strings.toString(dict.dictValue))}"> |
| 132 | 148 | </option> |
| 133 | 149 | </select> |
| 134 | 150 | </div> |
| 135 | 151 | <!----------------------------------> |
| 136 | - <label class="col-sm-1 control-label">运营时间:</label> | |
| 152 | + <label class="col-sm-1 control-label" name="halfwayStation">站点名称:</label> | |
| 137 | 153 | <div class="col-sm-2"> |
| 138 | - <select name="serviceTime" th:with="type=${@dict.getType('serviceTime')}" class="form-control m-b" disabled> | |
| 139 | - <option value=""></option> | |
| 140 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 141 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceTime== null ? '' : bsthTLine.serviceTime),#strings.toString(dict.dictValue))}"></option> | |
| 142 | - </select> | |
| 154 | + <textarea name="halfwayStation" class="form-control">[[*{halfwayStation}]]</textarea> | |
| 143 | 155 | </div> |
| 144 | 156 | <!----------------------------------> |
| 145 | - <!--<label class="col-sm-1 control-label">线路编码:</label> | |
| 157 | + <label class="col-sm-1 control-label" name="directions">线路走向:</label> | |
| 146 | 158 | <div class="col-sm-2"> |
| 147 | - <input name="lineCode" th:field="*{lineCode}" class="form-control" type="text" disabled> | |
| 148 | - </div>--> | |
| 159 | + <textarea name="directions" class="form-control">[[*{directions}]]</textarea> | |
| 160 | + </div> | |
| 149 | 161 | </div> |
| 150 | - | |
| 162 | + <!----------------------------------> | |
| 151 | 163 | <div class="form-group"> |
| 152 | - <label class="col-sm-1 control-label">线路长度:</label> | |
| 164 | + <label class="col-sm-1 control-label"name="stationUp">站级数(上行):</label> | |
| 165 | + <div class="col-sm-2"> | |
| 166 | + <input name="stationUp" th:field="*{stationUp}" class="form-control" type="text"> | |
| 167 | + </div> | |
| 168 | + <!----------------------------------> | |
| 169 | + <label class="col-sm-1 control-label"name="stationDown">站级数(下行):</label> | |
| 153 | 170 | <div class="col-sm-2"> |
| 154 | - <input name="lineDistance" th:field="*{lineDistance}" class="form-control" type="text" disabled> | |
| 171 | + <input name="stationDown" th:field="*{stationDown}" class="form-control" type="text"> | |
| 155 | 172 | </div> |
| 156 | 173 | <!----------------------------------> |
| 157 | - <label class="col-sm-1 control-label">首站:</label> | |
| 174 | + <label class="col-sm-1 control-label"name="firstStation">首站:</label> | |
| 158 | 175 | <div class="col-sm-2"> |
| 159 | - <input name="firstStation" th:field="*{firstStation}" class="form-control" type="text" disabled> | |
| 176 | + <input name="firstStation" th:field="*{firstStation}" class="form-control" type="text"> | |
| 160 | 177 | </div> |
| 161 | 178 | <!----------------------------------> |
| 162 | - <label class="col-sm-1 control-label">末站:</label> | |
| 179 | + <label class="col-sm-1 control-label"name="lastStation" >末站:</label> | |
| 163 | 180 | <div class="col-sm-2"> |
| 164 | - <input name="lastStation" th:field="*{lastStation}" class="form-control" type="text" disabled> | |
| 181 | + <input name="lastStation" th:field="*{lastStation}" class="form-control" type="text"> | |
| 165 | 182 | </div> |
| 166 | 183 | </div> |
| 167 | - | |
| 184 | + <!----------------------------------> | |
| 168 | 185 | <div class="form-group"> |
| 169 | - <label class="col-sm-1 control-label">站点名称:</label> | |
| 186 | + <label class="col-sm-1 control-label"name="firstTime">起点站首末班:</label> | |
| 170 | 187 | <div class="col-sm-2"> |
| 171 | - <textarea name="halfwayStation" class="form-control" disabled>[[*{halfwayStation}]]</textarea> | |
| 188 | + <input name="firstTime" th:field="*{firstTime}" class="form-control" type="text"> | |
| 172 | 189 | </div> |
| 173 | 190 | <!----------------------------------> |
| 174 | - <label class="col-sm-1 control-label">线路走向:</label> | |
| 191 | + <label class="col-sm-1 control-label"name="lastTime">终点站首末班:</label> | |
| 175 | 192 | <div class="col-sm-2"> |
| 176 | - <textarea name="directions" class="form-control" disabled>[[*{directions}]]</textarea> | |
| 193 | + <input name="lastTime" th:field="*{lastTime}" class="form-control" type="text"> | |
| 177 | 194 | </div> |
| 178 | 195 | <!----------------------------------> |
| 179 | - <label class="col-sm-1 control-label">起点站首末班:</label> | |
| 196 | + <label class="col-sm-1 control-label"name="mileageUp">上行里程数:</label> | |
| 180 | 197 | <div class="col-sm-2"> |
| 181 | - <input name="firstTime" th:field="*{firstTime}" class="form-control" type="text" disabled> | |
| 198 | + <input name="mileageUp" th:field="*{mileageUp}" class="form-control" type="text"> | |
| 182 | 199 | </div> |
| 183 | 200 | <!----------------------------------> |
| 184 | - <label class="col-sm-1 control-label">终点站首末班:</label> | |
| 201 | + <label class="col-sm-1 control-label"name="mileageDown">下行里程数:</label> | |
| 185 | 202 | <div class="col-sm-2"> |
| 186 | - <input name="lastTime" th:field="*{lastTime}" class="form-control" type="text" disabled> | |
| 203 | + <input name="mileageDown" th:field="*{mileageDown}" class="form-control" type="text"> | |
| 187 | 204 | </div> |
| 188 | 205 | </div> |
| 189 | - | |
| 206 | + <!----------------------------------> | |
| 190 | 207 | <div class="form-group"> |
| 191 | -<!-- <label class="col-sm-1 control-label">停车场:</label>--> | |
| 192 | -<!-- <div class="col-sm-2">--> | |
| 193 | -<!-- <input name="park" th:field="*{park}" class="form-control" type="text" disabled>--> | |
| 194 | -<!-- </div>--> | |
| 208 | + <label class="col-sm-1 control-label" name="lineDistance">线路长度:</label> | |
| 209 | + <div class="col-sm-2"> | |
| 210 | + <input name="lineDistance" th:field="*{lineDistance}" class="form-control" type="text"> | |
| 211 | + </div> | |
| 195 | 212 | <!----------------------------------> |
| 196 | - <label class="col-sm-1 control-label">授权年限:</label> | |
| 213 | + <label class="col-sm-1 control-label"name="isWarrant">是否权证:</label> | |
| 197 | 214 | <div class="col-sm-2"> |
| 198 | - <input name="warrantYear" th:field="*{warrantYear}" class="form-control" type="text" disabled> | |
| 215 | + <select name="isWarrant" id="isWarrant" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 216 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 217 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.isWarrant== null ? '' : bsthTLine.isWarrant),#strings.toString(dict.dictValue))}"></option> | |
| 218 | + </select> | |
| 199 | 219 | </div> |
| 200 | 220 | <!----------------------------------> |
| 201 | - <label class="col-sm-1 control-label">授权起始日期:</label> | |
| 221 | + <label class="col-sm-1 control-label"name="warrantStartTime">授权起始日期:</label> | |
| 202 | 222 | <div class="col-sm-2"> |
| 203 | 223 | <div class="input-group date"> |
| 204 | 224 | <input name="warrantStartTime" th:value="${#dates.format(bsthTLine.warrantStartTime, 'yyyy-MM-dd')}" |
| 205 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off" disabled> | |
| 225 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 206 | 226 | <span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
| 207 | 227 | </div> |
| 208 | 228 | </div> |
| 209 | 229 | <!----------------------------------> |
| 210 | - <label class="col-sm-1 control-label">授权结束日期:</label> | |
| 230 | + <label class="col-sm-1 control-label"name="warrantEndTime">授权结束日期:</label> | |
| 211 | 231 | <div class="col-sm-2"> |
| 212 | 232 | <div class="input-group date"> |
| 213 | 233 | <input name="warrantEndTime" th:value="${#dates.format(bsthTLine.warrantEndTime, 'yyyy-MM-dd')}" |
| 214 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off" disabled> | |
| 234 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 215 | 235 | <span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
| 216 | 236 | </div> |
| 217 | 237 | </div> |
| 218 | 238 | </div> |
| 219 | - | |
| 239 | + <!----------------------------------> | |
| 220 | 240 | <div class="form-group"> |
| 221 | - <label class="col-sm-1 control-label">线路暂停日期:</label> | |
| 241 | + <label class="col-sm-1 control-label"name="warrantYear">授权年限:</label> | |
| 222 | 242 | <div class="col-sm-2"> |
| 223 | - <div class="input-group date"> | |
| 224 | - <input name="planCancelTime" th:value="${#dates.format(bsthTLine.planCancelTime, 'yyyy-MM-dd')}" | |
| 225 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off" disabled> | |
| 226 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 227 | - </div> | |
| 243 | + <input name="warrantYear" th:field="*{warrantYear}" class="form-control" type="text"> | |
| 228 | 244 | </div> |
| 229 | 245 | <!----------------------------------> |
| 230 | - <label class="col-sm-1 control-label">实际撤销日期:</label> | |
| 246 | + <label class="col-sm-1 control-label"name="timeSchedule">实施时间:</label> | |
| 231 | 247 | <div class="col-sm-2"> |
| 232 | 248 | <div class="input-group date"> |
| 233 | - <input name="cancelTime" th:value="${#dates.format(bsthTLine.cancelTime, 'yyyy-MM-dd')}" | |
| 234 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off" disabled> | |
| 235 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 249 | + <input name="timeSchedule" | |
| 250 | + th:value="${#dates.format(bsthTLine.timeSchedule, 'yyyy-MM-dd')}" | |
| 251 | + class="form-control" placeholder="yyyy-MM-dd" type="text" | |
| 252 | + autocomplete="off"> <span class="input-group-addon"><i | |
| 253 | + class="fa fa-calendar"></i></span> | |
| 236 | 254 | </div> |
| 237 | 255 | </div> |
| 238 | 256 | <!----------------------------------> |
| 239 | - <label class="col-sm-1 control-label">实施时间:</label> | |
| 257 | + <label class="col-sm-1 control-label"name="warrantVehiclesLarge">经营权证(大):</label> | |
| 240 | 258 | <div class="col-sm-2"> |
| 241 | - <div class="input-group date"> | |
| 242 | - <input name="timeSchedule" th:value="${#dates.format(bsthTLine.timeSchedule, 'yyyy-MM-dd')}" | |
| 243 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off" disabled> | |
| 244 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 245 | - </div> | |
| 246 | - </div> | |
| 247 | - </div> | |
| 248 | - | |
| 249 | - <div class="form-group"> | |
| 250 | - <label class="col-sm-1 control-label">是否权证:</label> | |
| 251 | - <div class="col-sm-2"> | |
| 252 | - <select name="isWarrant" id="isWarrant" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b" disabled> | |
| 253 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 254 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.isWarrant== null ? '' : bsthTLine.isWarrant),#strings.toString(dict.dictValue))}"></option> | |
| 255 | - </select> | |
| 259 | + <input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" class="form-control" type="text"> | |
| 256 | 260 | </div> |
| 257 | 261 | <!----------------------------------> |
| 258 | - <label class="col-sm-1 control-label">经营权证(大巴):</label> | |
| 262 | + <label class="col-sm-1 control-label" name="warrantVehiclesMiddle">经营权证(中):</label> | |
| 259 | 263 | <div class="col-sm-2"> |
| 260 | - <input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" class="form-control" type="text" disabled> | |
| 264 | + <input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" class="form-control" type="text"> | |
| 261 | 265 | </div> |
| 262 | - </div> | |
| 263 | 266 | |
| 267 | + </div> | |
| 268 | + <!----------------------------------> | |
| 264 | 269 | <div class="form-group"> |
| 265 | - <label class="col-sm-1 control-label">经营权证(中巴):</label> | |
| 270 | + <label class="col-sm-1 control-label"name="isMetro">是否轨交末班车衔接:</label> | |
| 266 | 271 | <div class="col-sm-2"> |
| 267 | - <input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" class="form-control" type="text" disabled> | |
| 268 | - </div> | |
| 269 | - <!----------------------------------> | |
| 270 | - <label class="col-sm-1 control-label">实际配车数:</label> | |
| 271 | - <div class="col-sm-2"> | |
| 272 | - <input name="vehiclesNumber" th:field="*{vehiclesNumber}" class="form-control" type="text" disabled> | |
| 273 | - </div> | |
| 274 | - <!----------------------------------> | |
| 275 | - <label class="col-sm-1 control-label">实际车辆数(大巴):</label> | |
| 276 | - <div class="col-sm-2"> | |
| 277 | - <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" class="form-control" type="text" disabled> | |
| 272 | + <select name="isMetro" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 273 | + <option value=""></option> | |
| 274 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 275 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.isMetro== null ? '' : bsthTLine.isMetro),#strings.toString(dict.dictValue))}"></option> | |
| 276 | + </select> | |
| 278 | 277 | </div> |
| 279 | 278 | <!----------------------------------> |
| 280 | - <label class="col-sm-1 control-label">实际车辆数(中巴):</label> | |
| 281 | - <div class="col-sm-2"> | |
| 282 | - <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" class="form-control" type="text" disabled> | |
| 283 | - </div> | |
| 284 | - </div> | |
| 285 | - | |
| 286 | - <div class="form-group"> | |
| 287 | - <label class="col-sm-1 control-label">上行里程数:</label> | |
| 279 | + <label class="col-sm-1 control-label"name="metroTime">轨交时间:</label> | |
| 288 | 280 | <div class="col-sm-2"> |
| 289 | - <input name="mileageUp" th:field="*{mileageUp}" class="form-control" type="text" disabled> | |
| 281 | + <div class="input-group date"> | |
| 282 | + <input name="metroTime" class="form-control" placeholder="HH:mm:ss" th:value="*{metroTime}"> | |
| 283 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 284 | + </div> | |
| 290 | 285 | </div> |
| 291 | 286 | <!----------------------------------> |
| 292 | - <label class="col-sm-1 control-label">下行里程数:</label> | |
| 287 | + <label class="col-sm-1 control-label"name="coldBonusType">冷僻线路补贴类型:</label> | |
| 293 | 288 | <div class="col-sm-2"> |
| 294 | - <input name="mileageDown" th:field="*{mileageDown}" class="form-control" type="text"disabled> | |
| 289 | + <input name="coldBonusType" th:field="*{coldBonusType}" class="form-control" type="text"> | |
| 295 | 290 | </div> |
| 296 | 291 | <!----------------------------------> |
| 297 | - <label class="col-sm-1 control-label">站级数(上行):</label> | |
| 292 | + <label class="col-sm-1 control-label"name="serviceState">营运状态:</label> | |
| 298 | 293 | <div class="col-sm-2"> |
| 299 | - <input name="stationUp" th:field="*{stationUp}" class="form-control" type="text" disabled> | |
| 294 | + <select name="serviceState" th:with="type=${@dict.getType('serviceState')}" class="form-control m-b"> | |
| 295 | + <option value=""></option> | |
| 296 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 297 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceState== null ? '' : bsthTLine.serviceState),#strings.toString(dict.dictValue))}"></option> | |
| 298 | + </select> | |
| 300 | 299 | </div> |
| 301 | 300 | </div> |
| 302 | - | |
| 301 | + <!----------------------------------> | |
| 303 | 302 | <div class="form-group"> |
| 304 | - <label class="col-sm-1 control-label">站级数(下行):</label> | |
| 303 | + <label class="col-sm-1 control-label"name="planCancelTime">线路暂停日期:</label> | |
| 305 | 304 | <div class="col-sm-2"> |
| 306 | - <input name="stationDown" th:field="*{stationDown}" class="form-control" type="text" disabled> | |
| 305 | + <div class="input-group date"> | |
| 306 | + <input name="planCancelTime" th:value="${#dates.format(bsthTLine.planCancelTime, 'yyyy-MM-dd')}" | |
| 307 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 308 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 309 | + </div> | |
| 307 | 310 | </div> |
| 308 | 311 | <!----------------------------------> |
| 309 | - <label class="col-sm-1 control-label">行驶时间(上行):</label> | |
| 312 | + <label class="col-sm-1 control-label"name="cancelTime">实际撤销日期:</label> | |
| 310 | 313 | <div class="col-sm-2"> |
| 311 | - <input name="travelTimeUp" th:field="*{travelTimeUp}" class="form-control" type="text" disabled> | |
| 314 | + <div class="input-group date"> | |
| 315 | + <input name="cancelTime" th:value="${#dates.format(bsthTLine.cancelTime, 'yyyy-MM-dd')}" | |
| 316 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 317 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 318 | + </div> | |
| 312 | 319 | </div> |
| 313 | 320 | <!----------------------------------> |
| 314 | - <label class="col-sm-1 control-label">行驶时间(下行):</label> | |
| 321 | + <label class="col-sm-1 control-label"name="lineUpdateType">性质:</label> | |
| 315 | 322 | <div class="col-sm-2"> |
| 316 | - <input name="travelTimeDown" th:field="*{travelTimeDown}" class="form-control" type="text" disabled> | |
| 323 | + <select name="lineUpdateType" | |
| 324 | + th:with="type=${@dict.getType('lineUpdateType')}" | |
| 325 | + class="form-control m-b"> | |
| 326 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 327 | + th:value="${dict.dictValue}" | |
| 328 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineUpdateType== null||bsthTLine.lineUpdateType=='3' ? '' : bsthTLine.lineUpdateType),#strings.toString(dict.dictValue))}"></option>></option> | |
| 329 | + </select> | |
| 317 | 330 | </div> |
| 318 | 331 | <!----------------------------------> |
| 319 | - <label class="col-sm-1 control-label">行驶间隔(高峰):</label> | |
| 332 | + <label class="col-sm-1 control-label"name="remark">备注:</label> | |
| 320 | 333 | <div class="col-sm-2"> |
| 321 | - <input name="travelIntervalUp" th:field="*{travelIntervalUp}" class="form-control" type="text" disabled> | |
| 334 | + <textarea name="remark" class="form-control">[[*{remark}]]</textarea> | |
| 322 | 335 | </div> |
| 323 | 336 | </div> |
| 324 | - | |
| 337 | + <!----------------------------------> | |
| 325 | 338 | <div class="form-group"> |
| 326 | - <label class="col-sm-1 control-label">行驶间隔(低谷):</label> | |
| 327 | - <div class="col-sm-2"> | |
| 328 | - <input name="travelIntervalDown" th:field="*{travelIntervalDown}" class="form-control" type="text" disabled> | |
| 329 | - </div> | |
| 330 | - <!----------------------------------> | |
| 331 | - <label class="col-sm-1 control-label">间隔等级:</label> | |
| 332 | - <div class="col-sm-2"> | |
| 333 | - <input name="divideLevel" th:field="*{divideLevel}" class="form-control" type="text" disabled> | |
| 339 | + <div class="form-group"> | |
| 340 | + <label class="col-sm-1 control-label" name="files">附件:</label> | |
| 341 | + <div class="col-sm-5"> | |
| 342 | + <div th:each="path: ${#strings.arraySplit(bsthTLine.files,',')}" > | |
| 343 | + <input name="files" type="hidden" th:value="${path}" > | |
| 344 | + <a th:href="${#strings.replace(path,#strings.arraySplit(path,':')[0]+':','')}" th:text="${#strings.arraySplit(path,':')[0]}"> | |
| 345 | + </a> | |
| 346 | + <button onclick="deleteFile(this);">删除</button> | |
| 347 | + </div> | |
| 348 | + <div class="file-loading" id="uploadDiv"> | |
| 349 | + <input id="fileinput" type="file" multiple > | |
| 350 | + </div> | |
| 351 | + </div> | |
| 334 | 352 | </div> |
| 335 | 353 | </div> |
| 336 | - | |
| 354 | + <!----------------------------------> | |
| 355 | + <div class="hr-line-dashed"></div> | |
| 356 | + <h3>调度</h3> | |
| 357 | + <!----------------------------------> | |
| 337 | 358 | <div class="form-group"> |
| 338 | - <label class="col-sm-1 control-label">车辆自编号:</label> | |
| 359 | + <label class="col-sm-1 control-label"name="carPlate">车辆自编号:</label> | |
| 339 | 360 | <div class="col-sm-2"> |
| 340 | - <input name="carPlate" th:field="*{carPlate}" class="form-control" type="text" disabled> | |
| 361 | + <input name="carPlate" th:field="*{carPlate}" class="form-control" type="text"> | |
| 341 | 362 | </div> |
| 342 | 363 | <!----------------------------------> |
| 343 | - <label class="col-sm-1 control-label">线路配档数:</label> | |
| 364 | + <label class="col-sm-1 control-label"name="hasTimelists">是否挂牌:</label> | |
| 344 | 365 | <div class="col-sm-2"> |
| 345 | - <input name="numberPerson" th:field="*{numberPerson}" class="form-control" type="text" disabled> | |
| 366 | + <select name="hasTimelists" | |
| 367 | + th:with="type=${@dict.getType('trueFalse')}" | |
| 368 | + class="form-control m-b"> | |
| 369 | + <option value=""></option> | |
| 370 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 371 | + th:value="${dict.dictValue}" | |
| 372 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.hasTimelists== null ? '' : bsthTLine.hasTimelists),#strings.toString(dict.dictValue))}"></option> | |
| 373 | + </select> | |
| 346 | 374 | </div> |
| 347 | 375 | <!----------------------------------> |
| 348 | - <label class="col-sm-1 control-label">司机人数:</label> | |
| 376 | + <label class="col-sm-1 control-label"name="travelTimeUp">行驶时间(上行):</label> | |
| 349 | 377 | <div class="col-sm-2"> |
| 350 | - <input name="numberPersonDriver" th:field="*{numberPersonDriver}" class="form-control" type="text" disabled> | |
| 378 | + <input name="travelTimeUp" th:field="*{travelTimeUp}" class="form-control" type="text"> | |
| 351 | 379 | </div> |
| 352 | 380 | <!----------------------------------> |
| 353 | - <label class="col-sm-1 control-label">售票员数:</label> | |
| 381 | + <label class="col-sm-1 control-label"name="travelTimeDown">行驶时间(下行):</label> | |
| 354 | 382 | <div class="col-sm-2"> |
| 355 | - <input name="numberPersonSales" th:field="*{numberPersonSales}" class="form-control" type="text" disabled> | |
| 383 | + <input name="travelTimeDown" th:field="*{travelTimeDown}" class="form-control" type="text"> | |
| 356 | 384 | </div> |
| 357 | 385 | </div> |
| 358 | - | |
| 386 | + <!----------------------------------> | |
| 359 | 387 | <div class="form-group"> |
| 360 | - <label class="col-sm-1 control-label">新能源车数:</label> | |
| 388 | + <label class="col-sm-1 control-label"name="travelIntervalUp">行驶间隔(高峰):</label> | |
| 361 | 389 | <div class="col-sm-2"> |
| 362 | - <input name="busEvNumber" th:field="*{busEvNumber}" class="form-control" type="text" disabled> | |
| 390 | + <input name="travelIntervalUp" th:field="*{travelIntervalUp}" class="form-control" type="text"> | |
| 363 | 391 | </div> |
| 364 | 392 | <!----------------------------------> |
| 365 | - <label class="col-sm-1 control-label">是否轨交末班车衔接:</label> | |
| 393 | + <label class="col-sm-1 control-label"name="travelIntervalDown">行驶间隔(低谷):</label> | |
| 366 | 394 | <div class="col-sm-2"> |
| 367 | - <select name="isMetro" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b" disabled> | |
| 368 | - <option value=""></option> | |
| 369 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 370 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.isMetro== null ? '' : bsthTLine.isMetro),#strings.toString(dict.dictValue))}"></option> | |
| 371 | - </select> | |
| 395 | + <input name="travelIntervalDown" th:field="*{travelIntervalDown}" class="form-control" type="text"> | |
| 372 | 396 | </div> |
| 373 | 397 | <!----------------------------------> |
| 374 | - <label class="col-sm-1 control-label">轨交时间:</label> | |
| 398 | + <label class="col-sm-1 control-label"name="divideLevel">间隔等级:</label> | |
| 375 | 399 | <div class="col-sm-2"> |
| 376 | - <div class="input-group date"> | |
| 377 | - <input name="metroTime" class="form-control" placeholder="HH:mm:ss" th:value="*{metroTime}" disabled> | |
| 378 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 379 | - </div> | |
| 400 | + <input name="divideLevel" th:field="*{divideLevel}" class="form-control" type="text"> | |
| 380 | 401 | </div> |
| 381 | 402 | <!----------------------------------> |
| 382 | - <label class="col-sm-1 control-label">是否挂牌:</label> | |
| 403 | + <label class="col-sm-1 control-label"name="vehiclesNumber">实际配车数:</label> | |
| 383 | 404 | <div class="col-sm-2"> |
| 384 | - <select name="hasTimelists" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b" disabled> | |
| 385 | - <option value=""></option> | |
| 386 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 387 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.hasTimelists== null ? '' : bsthTLine.hasTimelists),#strings.toString(dict.dictValue))}"></option> | |
| 388 | - </select> | |
| 405 | + <input name="vehiclesNumber" th:field="*{vehiclesNumber}" class="form-control" type="text"> | |
| 389 | 406 | </div> |
| 390 | 407 | </div> |
| 391 | - | |
| 408 | + <!----------------------------------> | |
| 392 | 409 | <div class="form-group"> |
| 410 | + <label class="col-sm-1 control-label"name="numberVehiclesLarge">实际车辆数(大):</label> | |
| 411 | + <div class="col-sm-2"> | |
| 412 | + <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" class="form-control" type="text"> | |
| 413 | + </div> | |
| 393 | 414 | <!----------------------------------> |
| 394 | - <label class="col-sm-1 control-label">营运状态:</label> | |
| 415 | + <label class="col-sm-1 control-label"name="numberVehiclesMiddle">实际车辆数(中):</label> | |
| 395 | 416 | <div class="col-sm-2"> |
| 396 | - <select name="serviceState" th:with="type=${@dict.getType('serviceState')}" class="form-control m-b" disabled> | |
| 397 | - <option value=""></option> | |
| 398 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 399 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceState== null ? '' : bsthTLine.serviceState),#strings.toString(dict.dictValue))}"></option> | |
| 400 | - </select> | |
| 417 | + <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" class="form-control" type="text"> | |
| 401 | 418 | </div> |
| 402 | 419 | <!----------------------------------> |
| 403 | - <label class="col-sm-1 control-label">冷僻线路补贴类型:</label> | |
| 420 | + <label class="col-sm-1 control-label"name="busEvNumber">新能源车数:</label> | |
| 404 | 421 | <div class="col-sm-2"> |
| 405 | - <input name="coldBonusType" th:field="*{coldBonusType}" class="form-control" type="text" disabled> | |
| 422 | + <input name="busEvNumber" th:field="*{busEvNumber}" class="form-control" type="text"> | |
| 406 | 423 | </div> |
| 407 | 424 | <!----------------------------------> |
| 408 | - <label class="col-sm-1 control-label">营收类型:</label> | |
| 425 | + <label class="col-sm-1 control-label"name="numberPerson">线路配档数:</label> | |
| 409 | 426 | <div class="col-sm-2"> |
| 410 | - <select name="revenueType" th:with="type=${@dict.getType('revenueType')}" class="form-control m-b" disabled> | |
| 411 | - <option value=""></option> | |
| 412 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 413 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.revenueType== null ? '' : bsthTLine.revenueType),#strings.toString(dict.dictValue))}"></option>></option>></option> | |
| 414 | - </select> | |
| 427 | + <input name="numberPerson" th:field="*{numberPerson}" class="form-control" type="text"> | |
| 415 | 428 | </div> |
| 416 | 429 | </div> |
| 417 | - | |
| 430 | + <!----------------------------------> | |
| 418 | 431 | <div class="form-group"> |
| 419 | - <label class="col-sm-1 control-label">性质:</label> | |
| 432 | + <label class="col-sm-1 control-label"name="numberPersonDriver">司机人数:</label> | |
| 420 | 433 | <div class="col-sm-2"> |
| 421 | - <select name="lineUpdateType" th:with="type=${@dict.getType('lineUpdateType')}" class="form-control m-b" disabled> | |
| 422 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 423 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineUpdateType== null ? '' : bsthTLine.lineUpdateType),#strings.toString(dict.dictValue))}"></option>></option> | |
| 424 | - </select> | |
| 434 | + <input name="numberPersonDriver" th:field="*{numberPersonDriver}" class="form-control" type="text"> | |
| 425 | 435 | </div> |
| 426 | 436 | <!----------------------------------> |
| 427 | - <label class="col-sm-1 control-label">备注:</label> | |
| 437 | + <label class="col-sm-1 control-label"name="numberPersonSales">售票员数:</label> | |
| 428 | 438 | <div class="col-sm-2"> |
| 429 | - <textarea name="remark" class="form-control" disabled>[[*{remark}]]</textarea> | |
| 430 | - </div> | |
| 431 | - </div> | |
| 432 | - | |
| 433 | - <div class="form-group"> | |
| 434 | - <div class="form-group"> | |
| 435 | - <label class="col-sm-1 control-label">附件:</label> | |
| 436 | - <div class="col-sm-5" > | |
| 437 | - <div th:each="path: ${#strings.arraySplit(bsthTLine.files,',')}" > | |
| 438 | - <input name="files" type="hidden" th:value="${path}" > | |
| 439 | - <a th:href="${#strings.replace(path,#strings.arraySplit(path,':')[0]+':','')}" th:text="${#strings.arraySplit(path,':')[0]}"></a> | |
| 440 | - <button onclick="deleteFile(this);" disabled>删除</button> | |
| 441 | - </div> | |
| 442 | - <div class="file-loading" id="uploadDiv"> | |
| 443 | - <input id="fileinput" type="file" multiple disabled> | |
| 444 | - </div> | |
| 445 | - </div> | |
| 439 | + <input name="numberPersonSales" th:field="*{numberPersonSales}" class="form-control" type="text"> | |
| 446 | 440 | </div> |
| 447 | 441 | </div> |
| 448 | 442 | </form> |
| ... | ... | @@ -451,12 +445,93 @@ |
| 451 | 445 | <th:block th:include="include :: datetimepicker-js" /> |
| 452 | 446 | <th:block th:include="include :: bootstrap-fileinput-js" /> |
| 453 | 447 | <th:block th:include="include :: bootstrap-select-js" /> |
| 448 | + <th:block th:include="include :: select2-js"/> | |
| 454 | 449 | <script th:inline="javascript"> |
| 455 | 450 | var prefix = ctx + "system/line"; |
| 456 | 451 | function deleteFile(obj){ |
| 457 | 452 | $(obj).parent().remove(); |
| 458 | 453 | } |
| 459 | - | |
| 454 | + //公司分公司联动 | |
| 455 | + var companyList = [[${companyList}]]; | |
| 456 | + var companies = new Array(); | |
| 457 | + var fCompanies = new Array(); | |
| 458 | + var bsthTLine = [[${bsthTLine}]]; | |
| 459 | + $(function () { | |
| 460 | + for (let i in companyList) { | |
| 461 | + companies[i] = companyList[i].company; | |
| 462 | + fCompanies[i] = companyList[i].fCompany; | |
| 463 | + } | |
| 464 | + companies = Array.from(new Set(companies)); | |
| 465 | + companySelect(); | |
| 466 | + fCompanySelect(); | |
| 467 | + $('#company').on('change.select2', function (e) { | |
| 468 | + fCompanySelect() | |
| 469 | + }); | |
| 470 | + //初始选中 | |
| 471 | + $("#company").val(bsthTLine.company).trigger("change"); | |
| 472 | + $("#fCompany").val(bsthTLine.fCompany).trigger("change"); | |
| 473 | + $("div *").attr("disabled",true); | |
| 474 | + }); | |
| 475 | + | |
| 476 | + function companySelect() { | |
| 477 | + var arr = new Array(); | |
| 478 | + var company = new Object(); | |
| 479 | + company.id = ''; | |
| 480 | + company.text = ''; | |
| 481 | + company.value = ''; | |
| 482 | + arr.push(company) | |
| 483 | + for (var i = 0; i < companies.length; i++) { | |
| 484 | + company = new Object(); | |
| 485 | + company.id = companies[i]; | |
| 486 | + company.text = companies[i]; | |
| 487 | + company.value = companies[i]; | |
| 488 | + arr.push(company); | |
| 489 | + } | |
| 490 | + $("#company").select2({ | |
| 491 | + data: arr, | |
| 492 | + placeholder: '请选择', | |
| 493 | + allowClear: true | |
| 494 | + }) | |
| 495 | + } | |
| 496 | + | |
| 497 | + function fCompanySelect() { | |
| 498 | + $('#fCompany').empty(); | |
| 499 | + var company = $('#company').select2('val'); | |
| 500 | + var arr = new Array(); | |
| 501 | + var fCompany = new Object(); | |
| 502 | + fCompany.id = ''; | |
| 503 | + fCompany.text = ''; | |
| 504 | + fCompany.value = ''; | |
| 505 | + arr.push(fCompany) | |
| 506 | + if (company == '') { | |
| 507 | + for (let i in companyList) { | |
| 508 | + var companyName = companyList[i].company; | |
| 509 | + var fCompanyName = companyList[i].fCompany; | |
| 510 | + fCompany = new Object(); | |
| 511 | + fCompany.id = fCompanyName; | |
| 512 | + fCompany.text = fCompanyName; | |
| 513 | + fCompany.value = fCompanyName; | |
| 514 | + arr.push(fCompany); | |
| 515 | + } | |
| 516 | + } else { | |
| 517 | + for (let i in companyList) { | |
| 518 | + var companyName = companyList[i].company; | |
| 519 | + var fCompanyName = companyList[i].fCompany; | |
| 520 | + if (companyName == company) { | |
| 521 | + fCompany = new Object(); | |
| 522 | + fCompany.id = fCompanyName; | |
| 523 | + fCompany.text = fCompanyName; | |
| 524 | + fCompany.value = fCompanyName; | |
| 525 | + arr.push(fCompany); | |
| 526 | + } | |
| 527 | + } | |
| 528 | + } | |
| 529 | + $("#fCompany").select2({ | |
| 530 | + data: arr, | |
| 531 | + placeholder: '请选择', | |
| 532 | + allowClear: true | |
| 533 | + }); | |
| 534 | + } | |
| 460 | 535 | $(function() { |
| 461 | 536 | |
| 462 | 537 | $("#fileinput").fileinput({ |
| ... | ... | @@ -468,78 +543,37 @@ |
| 468 | 543 | |
| 469 | 544 | $("#fileinput").on("fileuploaded", |
| 470 | 545 | function(event, data, proviewId, index) { |
| 471 | - | |
| 472 | - | |
| 473 | 546 | var obj = '<div><input name="files" type="hidden" value='+data.files[index].name + ':' + data.response.url + '>'+ |
| 474 | 547 | '<a href='+data.response.url+'>'+ data.files[index].name + |
| 475 | 548 | '</a><button onclick="deleteFile(this);">删除</button></div>'; |
| 476 | - | |
| 477 | - | |
| 478 | 549 | $(".file-input").before(obj); |
| 479 | - | |
| 480 | 550 | }); |
| 481 | 551 | |
| 482 | - /*$.get("/system/line/getUserLineInfo", | |
| 483 | - function(data) { | |
| 484 | - if (data.msg != null) { | |
| 485 | - var objs = JSON.parse(data.msg); | |
| 486 | - | |
| 487 | - for (var i = 0; i < objs.length; i++) { | |
| 488 | - | |
| 489 | - if ($($("input[name=" + objs[i].name | |
| 490 | - + "]"))) { | |
| 491 | - if (objs[i].checked) { | |
| 492 | - getParent( | |
| 493 | - $($("input[name=" | |
| 494 | - + objs[i].name | |
| 495 | - + "]")), | |
| 496 | - "form-group").show(); | |
| 497 | - } else { | |
| 498 | - getParent( | |
| 499 | - $($("input[name=" | |
| 500 | - + objs[i].name | |
| 501 | - + "]")), | |
| 502 | - "form-group").hide(); | |
| 503 | - } | |
| 504 | - } | |
| 505 | - | |
| 506 | - if ($($("select[name=" + objs[i].name | |
| 507 | - + "]"))) { | |
| 508 | - if (objs[i].checked) { | |
| 509 | - getParent( | |
| 510 | - $($("select[name=" | |
| 511 | - + objs[i].name | |
| 512 | - + "]")), | |
| 513 | - "form-group").show(); | |
| 514 | - } else { | |
| 515 | - getParent( | |
| 516 | - $($("select[name=" | |
| 517 | - + objs[i].name | |
| 518 | - + "]")), | |
| 519 | - "form-group").hide(); | |
| 520 | - } | |
| 521 | - } | |
| 522 | - | |
| 523 | - if ($($("textarea[name=" + objs[i].name | |
| 524 | - + "]"))) { | |
| 525 | - if (objs[i].checked) { | |
| 526 | - getParent( | |
| 527 | - $($("textarea[name=" | |
| 528 | - + objs[i].name | |
| 529 | - + "]")), | |
| 530 | - "form-group").show(); | |
| 531 | - } else { | |
| 532 | - getParent( | |
| 533 | - $($("textarea[name=" | |
| 534 | - + objs[i].name | |
| 535 | - + "]")), | |
| 536 | - "form-group").hide(); | |
| 537 | - } | |
| 538 | - } | |
| 539 | - | |
| 552 | + $.post("/system/line/findByName", | |
| 553 | + { | |
| 554 | + name: $("#lineName").val() | |
| 555 | + }, | |
| 556 | + function (data) { | |
| 557 | + var bsthTLineOld = data[0]; | |
| 558 | + console.log(bsthTLineOld) | |
| 559 | + | |
| 560 | + var bsthTLineNew = data[1]; | |
| 561 | + console.log(bsthTLineNew) | |
| 562 | + if (bsthTLineNew != null) { | |
| 563 | + for (let i in bsthTLineOld) { | |
| 564 | + var o = bsthTLineOld[i] == null ? '' : bsthTLineOld[i]; | |
| 565 | + var n = bsthTLineNew[i] == null ? '' : bsthTLineNew[i]; | |
| 566 | + if (o != n) { | |
| 567 | + i = i == 'fcompany' ? 'fCompany' : i; | |
| 568 | + i = i == 'plineId' ? 'pLineId' : i; | |
| 569 | + var input = document.getElementsByName(i)[0]; | |
| 570 | + if (input != undefined) { | |
| 571 | + input.style.color = 'red' | |
| 540 | 572 | } |
| 541 | 573 | } |
| 542 | - });*/ | |
| 574 | + } | |
| 575 | + } | |
| 576 | + }); | |
| 543 | 577 | }) |
| 544 | 578 | |
| 545 | 579 | function getParent(obj, className) { | ... | ... |
bsthLineProfiles/src/main/resources/templates/system/lineHistory/edit.html
| 1 | 1 | <!DOCTYPE html> |
| 2 | 2 | <html lang="zh" xmlns:th="http://www.thymeleaf.org"> |
| 3 | 3 | <head> |
| 4 | -<th:block th:include="include :: header('修改【请填写功能名称】')" /> | |
| 5 | -<th:block th:include="include :: datetimepicker-css" /> | |
| 6 | -<th:block th:include="include :: bootstrap-fileinput-css" /> | |
| 7 | -<th:block th:include="include :: bootstrap-select-css" /> | |
| 8 | -<th:block th:include="include :: select2-css"/> | |
| 4 | + <th:block th:include="include :: header('修改【请填写功能名称】')"/> | |
| 5 | + <th:block th:include="include :: datetimepicker-css"/> | |
| 6 | + <th:block th:include="include :: bootstrap-fileinput-css"/> | |
| 7 | + <th:block th:include="include :: bootstrap-select-css"/> | |
| 8 | + <th:block th:include="include :: select2-css"/> | |
| 9 | 9 | </head> |
| 10 | 10 | <body class="white-bg"> |
| 11 | - <div class="wrapper wrapper-content animated fadeInRight ibox-content"> | |
| 12 | - <form class="form-horizontal m" id="form-line-edit" th:object="${bsthTLine}"> | |
| 13 | - <input name="id" th:field="*{id}" type="hidden"> | |
| 14 | - <h3>路务</h3> | |
| 15 | - <div class="form-group"> | |
| 16 | - <label class="col-sm-1 control-label">线路名称:</label> | |
| 17 | - <div class="col-sm-2"> | |
| 18 | - <input name="lineName" th:field="*{lineName}" class="form-control" type="text" readonly> | |
| 19 | - </div> | |
| 20 | - <!----------------------------------> | |
| 21 | - <label class="col-sm-1 control-label">公司:</label> | |
| 22 | - <div class="col-sm-2"> | |
| 23 | - <select id='company' name="company" th:field="*{company}"></select> | |
| 24 | - </div> | |
| 25 | - <!----------------------------------> | |
| 26 | - <label class="col-sm-1 control-label">分公司:</label> | |
| 27 | - <div class="col-sm-2"> | |
| 28 | - <select id='fCompany' name="fCompany" th:field="*{fCompany}"></select> | |
| 29 | - </div> | |
| 30 | - <!----------------------------------> | |
| 31 | - <label class="col-sm-1 control-label">线路类型:</label> | |
| 32 | - <div class="col-sm-2"> | |
| 33 | - <select name="lineType" th:with="type=${@dict.getType('lineType')}" class="form-control m-b"> | |
| 34 | - <option value=""></option> | |
| 35 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 36 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineType== null ? '' : bsthTLine.lineType),#strings.toString(dict.dictValue))}"> | |
| 37 | - </option> | |
| 38 | - </select> | |
| 39 | - </div> | |
| 40 | - </div> | |
| 41 | - <!----------------------------------> | |
| 42 | - <div class="form-group"> | |
| 43 | - <label class="col-sm-1 control-label">线路属性:</label> | |
| 44 | - <div class="col-sm-2"> | |
| 45 | - <select name="lineLevel" th:with="type=${@dict.getType('lineLevel')}" class="form-control m-b"> | |
| 46 | - <option value=""></option> | |
| 47 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 48 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineLevel== null ? '' : bsthTLine.lineLevel),#strings.toString(dict.dictValue))}"> | |
| 49 | - </option> | |
| 50 | - </select> | |
| 51 | - </div> | |
| 52 | - <!----------------------------------> | |
| 53 | - <label class="col-sm-1 control-label">营运方式:</label> | |
| 54 | - <div class="col-sm-2"> | |
| 55 | - <select name="serviceType" th:with="type=${@dict.getType('serviceType')}" class="form-control m-b"> | |
| 56 | - <option value=""></option> | |
| 57 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 58 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceType== null ? '' : bsthTLine.serviceType),#strings.toString(dict.dictValue))}"> | |
| 59 | - </option> | |
| 60 | - </select> | |
| 61 | - </div> | |
| 62 | - <!----------------------------------> | |
| 63 | - <label class="col-sm-1 control-label">营收类型:</label> | |
| 64 | - <div class="col-sm-2"> | |
| 65 | - <select name="revenueType" th:with="type=${@dict.getType('revenueType')}" class="form-control m-b"> | |
| 66 | - <option value=""></option> | |
| 67 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 68 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.revenueType== null ? '' : bsthTLine.revenueType),#strings.toString(dict.dictValue))}"></option>></option>></option> | |
| 69 | - </select> | |
| 70 | - </div> | |
| 71 | - <!----------------------------------> | |
| 72 | - <label class="col-sm-1 control-label">区属:</label> | |
| 73 | - <div class="col-sm-2"> | |
| 74 | - <select name="district" th:with="type=${@dict.getType('district')}"class="selectpicker form-control" multiple title=""> | |
| 75 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 76 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.district== null ? '' : bsthTLine.district),#strings.toString(dict.dictValue))}"></option> | |
| 77 | - </select> | |
| 78 | - </div> | |
| 79 | - </div> | |
| 80 | - <!----------------------------------> | |
| 81 | - <div class="form-group"> | |
| 82 | - <label class="col-sm-1 control-label">是否区内:</label> | |
| 83 | - <div class="col-sm-2"> | |
| 84 | - <select name="inoutDistrict" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 85 | - <option value=""></option> | |
| 86 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 87 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.inoutDistrict== null ? '' : bsthTLine.inoutDistrict),#strings.toString(dict.dictValue))}"></option> | |
| 88 | - </select> | |
| 89 | - </div> | |
| 90 | - <!----------------------------------> | |
| 91 | - <label class="col-sm-1 control-label">道路类型:</label> | |
| 92 | - <div class="col-sm-2" name="roadType"> | |
| 93 | - <!--data-max-options="2" 限制多选数量--> | |
| 94 | - <select name="roadType" th:with="type=${@dict.getType('roadType')}" class="selectpicker form-control" multiple title="" > | |
| 95 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 96 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.roadType== null ? '' : bsthTLine.roadType),#strings.toString(dict.dictValue))}"> | |
| 97 | - </option> | |
| 98 | - </select> | |
| 99 | - </div> | |
| 100 | - <!----------------------------------> | |
| 101 | - <label class="col-sm-1 control-label">运营时间:</label> | |
| 102 | - <div class="col-sm-2"> | |
| 103 | - <select name="serviceTime" th:with="type=${@dict.getType('serviceTime')}" class="form-control m-b"> | |
| 104 | - <option value=""></option> | |
| 105 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 106 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceTime== null ? '' : bsthTLine.serviceTime),#strings.toString(dict.dictValue))}"></option> | |
| 107 | - </select> | |
| 108 | - </div> | |
| 109 | - <!----------------------------------> | |
| 110 | - <label class="col-sm-1 control-label">是否空调:</label> | |
| 111 | - <div class="col-sm-2"> | |
| 112 | - <select name="airConditionerType" th:with="type=${@dict.getType('airConditionerType')}" class="form-control m-b"> | |
| 113 | - <option value=""></option> | |
| 114 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 115 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.airConditionerType == null ? '' : bsthTLine.airConditionerType ),#strings.toString(dict.dictValue))}"></option> | |
| 116 | - </select> | |
| 117 | - </div> | |
| 118 | - </div> | |
| 119 | - <!----------------------------------> | |
| 120 | - <div class="form-group"> | |
| 121 | - <label class="col-sm-1 control-label">售票类型:</label> | |
| 122 | - <div class="col-sm-2" > | |
| 123 | - <select name="sellTicketType" th:with="type=${@dict.getType('sellTicketType')}" class="form-control m-b"> | |
| 124 | - <option value=""></option> | |
| 125 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 126 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.sellTicketType == null ? '' : bsthTLine.sellTicketType),#strings.toString(dict.dictValue))}"></option> | |
| 127 | - </select> | |
| 128 | - </div> | |
| 129 | - <!----------------------------------> | |
| 130 | - <label class="col-sm-1 control-label">票价:</label> | |
| 131 | - <div class="col-sm-2" name="ticketPrice"> | |
| 132 | - <!--data-max-options="2" 限制多选数量--> | |
| 133 | - <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" class="selectpicker form-control" multiple title="" > | |
| 134 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 135 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.ticketPrice== null ? '' : bsthTLine.ticketPrice),#strings.toString(dict.dictValue))}"> | |
| 136 | - </option> | |
| 137 | - </select> | |
| 138 | - </div> | |
| 139 | - <!----------------------------------> | |
| 140 | - <label class="col-sm-1 control-label">站点名称:</label> | |
| 141 | - <div class="col-sm-2"> | |
| 142 | - <textarea name="halfwayStation" class="form-control">[[*{halfwayStation}]]</textarea> | |
| 143 | - </div> | |
| 144 | - <!----------------------------------> | |
| 145 | - <label class="col-sm-1 control-label">线路走向:</label> | |
| 146 | - <div class="col-sm-2"> | |
| 147 | - <textarea name="directions" class="form-control">[[*{directions}]]</textarea> | |
| 148 | - </div> | |
| 149 | - </div> | |
| 150 | - <!----------------------------------> | |
| 151 | - <div class="form-group"> | |
| 152 | - <label class="col-sm-1 control-label">站级数(上行):</label> | |
| 153 | - <div class="col-sm-2"> | |
| 154 | - <input name="stationUp" th:field="*{stationUp}" class="form-control" type="text"> | |
| 155 | - </div> | |
| 156 | - <!----------------------------------> | |
| 157 | - <label class="col-sm-1 control-label">站级数(下行):</label> | |
| 158 | - <div class="col-sm-2"> | |
| 159 | - <input name="stationDown" th:field="*{stationDown}" class="form-control" type="text"> | |
| 160 | - </div> | |
| 161 | - <!----------------------------------> | |
| 162 | - <label class="col-sm-1 control-label">首站:</label> | |
| 163 | - <div class="col-sm-2"> | |
| 164 | - <input name="firstStation" th:field="*{firstStation}" class="form-control" type="text"> | |
| 165 | - </div> | |
| 166 | - <!----------------------------------> | |
| 167 | - <label class="col-sm-1 control-label">末站:</label> | |
| 168 | - <div class="col-sm-2"> | |
| 169 | - <input name="lastStation" th:field="*{lastStation}" class="form-control" type="text"> | |
| 170 | - </div> | |
| 171 | - </div> | |
| 172 | - <!----------------------------------> | |
| 173 | - <div class="form-group"> | |
| 174 | - <label class="col-sm-1 control-label">起点站首末班:</label> | |
| 175 | - <div class="col-sm-2"> | |
| 176 | - <input name="firstTime" th:field="*{firstTime}" class="form-control" type="text"> | |
| 177 | - </div> | |
| 178 | - <!----------------------------------> | |
| 179 | - <label class="col-sm-1 control-label">终点站首末班:</label> | |
| 180 | - <div class="col-sm-2"> | |
| 181 | - <input name="lastTime" th:field="*{lastTime}" class="form-control" type="text"> | |
| 182 | - </div> | |
| 183 | - <!----------------------------------> | |
| 184 | - <label class="col-sm-1 control-label">上行里程数:</label> | |
| 185 | - <div class="col-sm-2"> | |
| 186 | - <input name="mileageUp" th:field="*{mileageUp}" class="form-control" type="text"> | |
| 187 | - </div> | |
| 188 | - <!----------------------------------> | |
| 189 | - <label class="col-sm-1 control-label">下行里程数:</label> | |
| 190 | - <div class="col-sm-2"> | |
| 191 | - <input name="mileageDown" th:field="*{mileageDown}" class="form-control" type="text"> | |
| 192 | - </div> | |
| 193 | - </div> | |
| 194 | - <!----------------------------------> | |
| 195 | - <div class="form-group"> | |
| 196 | - <label class="col-sm-1 control-label">线路长度:</label> | |
| 197 | - <div class="col-sm-2"> | |
| 198 | - <input name="lineDistance" th:field="*{lineDistance}" class="form-control" type="text"> | |
| 199 | - </div> | |
| 200 | - <!----------------------------------> | |
| 201 | - <label class="col-sm-1 control-label">是否权证:</label> | |
| 202 | - <div class="col-sm-2"> | |
| 203 | - <select name="isWarrant" id="isWarrant" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 204 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 205 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.isWarrant== null ? '' : bsthTLine.isWarrant),#strings.toString(dict.dictValue))}"></option> | |
| 206 | - </select> | |
| 207 | - </div> | |
| 208 | - <!----------------------------------> | |
| 209 | - <label class="col-sm-1 control-label">授权起始日期:</label> | |
| 210 | - <div class="col-sm-2"> | |
| 211 | - <div class="input-group date"> | |
| 212 | - <input name="warrantStartTime" th:value="${#dates.format(bsthTLine.warrantStartTime, 'yyyy-MM-dd')}" | |
| 213 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 214 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 215 | - </div> | |
| 216 | - </div> | |
| 217 | - <!----------------------------------> | |
| 218 | - <label class="col-sm-1 control-label">授权结束日期:</label> | |
| 219 | - <div class="col-sm-2"> | |
| 220 | - <div class="input-group date"> | |
| 221 | - <input name="warrantEndTime" th:value="${#dates.format(bsthTLine.warrantEndTime, 'yyyy-MM-dd')}" | |
| 222 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 223 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 224 | - </div> | |
| 225 | - </div> | |
| 226 | - </div> | |
| 227 | - <!----------------------------------> | |
| 228 | - <div class="form-group"> | |
| 229 | - <label class="col-sm-1 control-label">授权年限:</label> | |
| 230 | - <div class="col-sm-2"> | |
| 231 | - <input name="warrantYear" th:field="*{warrantYear}" class="form-control" type="text"> | |
| 232 | - </div> | |
| 233 | - <!----------------------------------> | |
| 234 | - <label class="col-sm-1 control-label">实施时间:</label> | |
| 235 | - <div class="col-sm-2"> | |
| 236 | - <div class="input-group date"> | |
| 237 | - <input name="timeSchedule" | |
| 238 | - th:value="${#dates.format(bsthTLine.timeSchedule, 'yyyy-MM-dd')}" | |
| 239 | - class="form-control" placeholder="yyyy-MM-dd" type="text" | |
| 240 | - autocomplete="off"> <span class="input-group-addon"><i | |
| 241 | - class="fa fa-calendar"></i></span> | |
| 242 | - </div> | |
| 243 | - </div> | |
| 244 | - <!----------------------------------> | |
| 245 | - <label class="col-sm-1 control-label">经营权证(大巴):</label> | |
| 246 | - <div class="col-sm-2"> | |
| 247 | - <input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" class="form-control" type="text"> | |
| 248 | - </div> | |
| 249 | - <!----------------------------------> | |
| 250 | - <label class="col-sm-1 control-label">经营权证(中巴):</label> | |
| 251 | - <div class="col-sm-2"> | |
| 252 | - <input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" class="form-control" type="text"> | |
| 253 | - </div> | |
| 254 | - | |
| 255 | - </div> | |
| 256 | - <!----------------------------------> | |
| 257 | - <div class="form-group"> | |
| 258 | - <label class="col-sm-1 control-label">是否轨交末班车衔接:</label> | |
| 259 | - <div class="col-sm-2"> | |
| 260 | - <select name="isMetro" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 261 | - <option value=""></option> | |
| 262 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 263 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.isMetro== null ? '' : bsthTLine.isMetro),#strings.toString(dict.dictValue))}"></option> | |
| 264 | - </select> | |
| 265 | - </div> | |
| 266 | - <!----------------------------------> | |
| 267 | - <label class="col-sm-1 control-label">轨交时间:</label> | |
| 268 | - <div class="col-sm-2"> | |
| 269 | - <div class="input-group date"> | |
| 270 | - <input name="metroTime" class="form-control" placeholder="HH:mm:ss" th:value="*{metroTime}"> | |
| 271 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 272 | - </div> | |
| 273 | - </div> | |
| 274 | - <!----------------------------------> | |
| 275 | - <label class="col-sm-1 control-label">冷僻线路补贴类型:</label> | |
| 276 | - <div class="col-sm-2"> | |
| 277 | - <input name="coldBonusType" th:field="*{coldBonusType}" class="form-control" type="text"> | |
| 278 | - </div> | |
| 279 | - <!----------------------------------> | |
| 280 | - <label class="col-sm-1 control-label">营运状态:</label> | |
| 281 | - <div class="col-sm-2"> | |
| 282 | - <select name="serviceState" th:with="type=${@dict.getType('serviceState')}" class="form-control m-b"> | |
| 283 | - <option value=""></option> | |
| 284 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 285 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceState== null ? '' : bsthTLine.serviceState),#strings.toString(dict.dictValue))}"></option> | |
| 286 | - </select> | |
| 287 | - </div> | |
| 288 | - </div> | |
| 289 | - <!----------------------------------> | |
| 290 | - <div class="form-group"> | |
| 291 | - <label class="col-sm-1 control-label">线路暂停日期:</label> | |
| 292 | - <div class="col-sm-2"> | |
| 293 | - <div class="input-group date"> | |
| 294 | - <input name="planCancelTime" th:value="${#dates.format(bsthTLine.planCancelTime, 'yyyy-MM-dd')}" | |
| 295 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 296 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 297 | - </div> | |
| 298 | - </div> | |
| 299 | - <!----------------------------------> | |
| 300 | - <label class="col-sm-1 control-label">实际撤销日期:</label> | |
| 301 | - <div class="col-sm-2"> | |
| 302 | - <div class="input-group date"> | |
| 303 | - <input name="cancelTime" th:value="${#dates.format(bsthTLine.cancelTime, 'yyyy-MM-dd')}" | |
| 304 | - class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 305 | - <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 306 | - </div> | |
| 307 | - </div> | |
| 308 | - <!----------------------------------> | |
| 309 | - <label class="col-sm-1 control-label">性质:</label> | |
| 310 | - <div class="col-sm-2"> | |
| 311 | - <select name="lineUpdateType" | |
| 312 | - th:with="type=${@dict.getType('lineUpdateType')}" | |
| 313 | - class="form-control m-b"> | |
| 314 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 315 | - th:value="${dict.dictValue}" | |
| 316 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineUpdateType== null||bsthTLine.lineUpdateType=='3' ? '' : bsthTLine.lineUpdateType),#strings.toString(dict.dictValue))}"></option>></option> | |
| 317 | - </select> | |
| 318 | - </div> | |
| 319 | - <!----------------------------------> | |
| 320 | - <label class="col-sm-1 control-label">备注:</label> | |
| 321 | - <div class="col-sm-2"> | |
| 322 | - <textarea name="remark" class="form-control">[[*{remark}]]</textarea> | |
| 323 | - </div> | |
| 324 | - </div> | |
| 325 | - <!----------------------------------> | |
| 326 | - <div class="form-group"> | |
| 327 | - <div class="form-group"> | |
| 328 | - <label class="col-sm-1 control-label" name="files">附件:</label> | |
| 329 | - <div class="col-sm-5"> | |
| 330 | - <div th:each="path: ${#strings.arraySplit(bsthTLine.files,',')}" > | |
| 331 | - <input name="files" type="hidden" th:value="${path}" > | |
| 332 | - <a th:href="${#strings.replace(path,#strings.arraySplit(path,':')[0]+':','')}" th:text="${#strings.arraySplit(path,':')[0]}"> | |
| 333 | - </a> | |
| 334 | - <button onclick="deleteFile(this);">删除</button> | |
| 335 | - </div> | |
| 336 | - <div class="file-loading" id="uploadDiv"> | |
| 337 | - <input id="fileinput" type="file" multiple > | |
| 338 | - </div> | |
| 339 | - </div> | |
| 340 | - </div> | |
| 341 | - </div> | |
| 342 | - <!----------------------------------> | |
| 343 | - <div class="hr-line-dashed"></div> | |
| 344 | - <h3>调度</h3> | |
| 345 | - <!----------------------------------> | |
| 346 | - <div class="form-group"> | |
| 347 | - <label class="col-sm-1 control-label">车辆自编号:</label> | |
| 348 | - <div class="col-sm-2"> | |
| 349 | - <input name="carPlate" th:field="*{carPlate}" class="form-control" type="text"> | |
| 350 | - </div> | |
| 351 | - <!----------------------------------> | |
| 352 | - <label class="col-sm-1 control-label">是否挂牌:</label> | |
| 353 | - <div class="col-sm-2"> | |
| 354 | - <select name="hasTimelists" | |
| 355 | - th:with="type=${@dict.getType('trueFalse')}" | |
| 356 | - class="form-control m-b"> | |
| 357 | - <option value=""></option> | |
| 358 | - <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 359 | - th:value="${dict.dictValue}" | |
| 360 | - th:selected="${#arrays.contains(#strings.toString(bsthTLine.hasTimelists== null ? '' : bsthTLine.hasTimelists),#strings.toString(dict.dictValue))}"></option> | |
| 361 | - </select> | |
| 362 | - </div> | |
| 363 | - <!----------------------------------> | |
| 364 | - <label class="col-sm-1 control-label">行驶时间(上行):</label> | |
| 365 | - <div class="col-sm-2"> | |
| 366 | - <input name="travelTimeUp" th:field="*{travelTimeUp}" class="form-control" type="text"> | |
| 367 | - </div> | |
| 368 | - <!----------------------------------> | |
| 369 | - <label class="col-sm-1 control-label">行驶时间(下行):</label> | |
| 370 | - <div class="col-sm-2"> | |
| 371 | - <input name="travelTimeDown" th:field="*{travelTimeDown}" class="form-control" type="text"> | |
| 372 | - </div> | |
| 373 | - </div> | |
| 374 | - <!----------------------------------> | |
| 375 | - <div class="form-group"> | |
| 376 | - <label class="col-sm-1 control-label">行驶间隔(高峰):</label> | |
| 377 | - <div class="col-sm-2"> | |
| 378 | - <input name="travelIntervalUp" th:field="*{travelIntervalUp}" class="form-control" type="text"> | |
| 379 | - </div> | |
| 380 | - <!----------------------------------> | |
| 381 | - <label class="col-sm-1 control-label">行驶间隔(低谷):</label> | |
| 382 | - <div class="col-sm-2"> | |
| 383 | - <input name="travelIntervalDown" th:field="*{travelIntervalDown}" class="form-control" type="text"> | |
| 384 | - </div> | |
| 385 | - <!----------------------------------> | |
| 386 | - <label class="col-sm-1 control-label">间隔等级:</label> | |
| 387 | - <div class="col-sm-2"> | |
| 388 | - <input name="divideLevel" th:field="*{divideLevel}" class="form-control" type="text"> | |
| 389 | - </div> | |
| 390 | - <!----------------------------------> | |
| 391 | - <label class="col-sm-1 control-label">实际配车数:</label> | |
| 392 | - <div class="col-sm-2"> | |
| 393 | - <input name="vehiclesNumber" th:field="*{vehiclesNumber}" class="form-control" type="text"> | |
| 394 | - </div> | |
| 395 | - </div> | |
| 396 | - <!----------------------------------> | |
| 397 | - <div class="form-group"> | |
| 398 | - <label class="col-sm-1 control-label">实际车辆数(大):</label> | |
| 399 | - <div class="col-sm-2"> | |
| 400 | - <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" class="form-control" type="text"> | |
| 401 | - </div> | |
| 402 | - <!----------------------------------> | |
| 403 | - <label class="col-sm-1 control-label">实际车辆数(中):</label> | |
| 404 | - <div class="col-sm-2"> | |
| 405 | - <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" class="form-control" type="text"> | |
| 406 | - </div> | |
| 407 | - <!----------------------------------> | |
| 408 | - <label class="col-sm-1 control-label">新能源车数:</label> | |
| 409 | - <div class="col-sm-2"> | |
| 410 | - <input name="busEvNumber" th:field="*{busEvNumber}" class="form-control" type="text"> | |
| 411 | - </div> | |
| 412 | - <!----------------------------------> | |
| 413 | - <label class="col-sm-1 control-label">线路配档数:</label> | |
| 414 | - <div class="col-sm-2"> | |
| 415 | - <input name="numberPerson" th:field="*{numberPerson}" class="form-control" type="text"> | |
| 416 | - </div> | |
| 417 | - </div> | |
| 418 | - <!----------------------------------> | |
| 419 | - <div class="form-group"> | |
| 420 | - <label class="col-sm-1 control-label">司机人数:</label> | |
| 421 | - <div class="col-sm-2"> | |
| 422 | - <input name="numberPersonDriver" th:field="*{numberPersonDriver}" class="form-control" type="text"> | |
| 423 | - </div> | |
| 424 | - <!----------------------------------> | |
| 425 | - <label class="col-sm-1 control-label">售票员数:</label> | |
| 426 | - <div class="col-sm-2"> | |
| 427 | - <input name="numberPersonSales" th:field="*{numberPersonSales}" class="form-control" type="text"> | |
| 428 | - </div> | |
| 429 | - </div> | |
| 430 | - </form> | |
| 431 | - </div> | |
| 432 | - <th:block th:include="include :: footer" /> | |
| 433 | - <th:block th:include="include :: datetimepicker-js" /> | |
| 434 | - <th:block th:include="include :: bootstrap-fileinput-js" /> | |
| 435 | - <th:block th:include="include :: bootstrap-select-js" /> | |
| 436 | - <th:block th:include="include :: select2-js"/> | |
| 437 | - <script th:inline="javascript"> | |
| 438 | - var prefix = ctx + "system/lineHistory"; | |
| 439 | - function deleteFile(obj){ | |
| 440 | - $(obj).parent().remove(); | |
| 441 | - } | |
| 442 | - //公司分公司联动 | |
| 443 | - var companyList = [[${companyList}]]; | |
| 444 | - var companies = new Array(); | |
| 445 | - var fCompanies = new Array(); | |
| 446 | - var bsthTLine = [[${bsthTLine}]]; | |
| 447 | - $(function () { | |
| 448 | - for (let i in companyList) { | |
| 449 | - companies[i] = companyList[i].company; | |
| 450 | - fCompanies[i] = companyList[i].fCompany; | |
| 451 | - } | |
| 452 | - companies = Array.from(new Set(companies)); | |
| 453 | - companySelect(); | |
| 454 | - fCompanySelect(); | |
| 455 | - $('#company').on('change.select2', function (e) { | |
| 456 | - fCompanySelect() | |
| 457 | - }); | |
| 458 | - //初始选中 | |
| 459 | - $("#company").val(bsthTLine.company).trigger("change"); | |
| 460 | - $("#fCompany").val(bsthTLine.fCompany).trigger("change"); | |
| 461 | - // 获取 div 标签下的所有子节点 | |
| 462 | - /* var pObjs = document.getElementById('lw').getElementsByTagName("*") | |
| 463 | - for (var i = 0 ; i <pObjs.length; i++) { // 一定要倒序,正序是删不干净的,可自行尝试 | |
| 464 | - pObjs[i].setAttribute("disabled",true); | |
| 465 | - } | |
| 466 | - var pObjs = document.getElementById('dd').getElementsByTagName("*") | |
| 467 | - for (var i = 0 ; i <pObjs.length; i++) { // 一定要倒序,正序是删不干净的,可自行尝试 | |
| 468 | - pObjs[i].setAttribute("disabled",true); | |
| 469 | - }*/ | |
| 470 | - }); | |
| 471 | - | |
| 472 | - function companySelect() { | |
| 473 | - var arr = new Array(); | |
| 474 | - var company = new Object(); | |
| 475 | - company.id = ''; | |
| 476 | - company.text = ''; | |
| 477 | - company.value = ''; | |
| 478 | - arr.push(company) | |
| 479 | - for (var i = 0; i < companies.length; i++) { | |
| 480 | - company = new Object(); | |
| 481 | - company.id = companies[i]; | |
| 482 | - company.text = companies[i]; | |
| 483 | - company.value = companies[i]; | |
| 484 | - arr.push(company); | |
| 485 | - } | |
| 486 | - $("#company").select2({ | |
| 487 | - data: arr, | |
| 488 | - placeholder: '请选择', | |
| 489 | - allowClear: true | |
| 490 | - }) | |
| 491 | - } | |
| 492 | - | |
| 493 | - function fCompanySelect() { | |
| 494 | - $('#fCompany').empty(); | |
| 495 | - var company = $('#company').select2('val'); | |
| 496 | - var arr = new Array(); | |
| 497 | - var fCompany = new Object(); | |
| 498 | - fCompany.id = ''; | |
| 499 | - fCompany.text = ''; | |
| 500 | - fCompany.value = ''; | |
| 501 | - arr.push(fCompany) | |
| 502 | - if (company == '') { | |
| 503 | - for (let i in companyList) { | |
| 504 | - var companyName = companyList[i].company; | |
| 505 | - var fCompanyName = companyList[i].fCompany; | |
| 506 | - fCompany = new Object(); | |
| 507 | - fCompany.id = fCompanyName; | |
| 508 | - fCompany.text = fCompanyName; | |
| 509 | - fCompany.value = fCompanyName; | |
| 510 | - arr.push(fCompany); | |
| 511 | - } | |
| 512 | - } else { | |
| 513 | - for (let i in companyList) { | |
| 514 | - var companyName = companyList[i].company; | |
| 515 | - var fCompanyName = companyList[i].fCompany; | |
| 516 | - if (companyName == company) { | |
| 517 | - fCompany = new Object(); | |
| 518 | - fCompany.id = fCompanyName; | |
| 519 | - fCompany.text = fCompanyName; | |
| 520 | - fCompany.value = fCompanyName; | |
| 521 | - arr.push(fCompany); | |
| 522 | - } | |
| 523 | - } | |
| 524 | - } | |
| 525 | - $("#fCompany").select2({ | |
| 526 | - data: arr, | |
| 527 | - placeholder: '请选择', | |
| 528 | - allowClear: true | |
| 529 | - }); | |
| 530 | - } | |
| 531 | - var f=[[${flag}]]; | |
| 532 | - $(function() { | |
| 533 | - $(function() { | |
| 534 | - | |
| 535 | - $("#fileinput").fileinput({ | |
| 536 | - 'theme' : 'explorer-fas', | |
| 537 | - 'uploadUrl' : '/common/upload', | |
| 538 | - overwriteInitial : false, | |
| 539 | - initialPreviewAsData : false | |
| 540 | - }); | |
| 541 | - | |
| 542 | - $("#fileinput").on("fileuploaded", | |
| 543 | - function(event, data, proviewId, index) { | |
| 544 | - | |
| 545 | - var obj = '<div><input name="files" type="hidden" value='+data.files[index].name + ':' + data.response.url + '>'+ | |
| 546 | - '<a href='+data.response.url+'>'+ data.files[index].name + | |
| 547 | - '</a><button onclick="deleteFile(this);">删除</button></div>'; | |
| 548 | - | |
| 549 | - | |
| 550 | - $(".file-input").before(obj); | |
| 551 | - | |
| 552 | - }); | |
| 553 | - }) | |
| 554 | - | |
| 555 | - | |
| 556 | - $.post("/system/line/findByName", | |
| 557 | - { | |
| 558 | - name : $("#lineName").val() | |
| 559 | - }, | |
| 560 | - function(data) { | |
| 561 | - var bsthTLineOld=data[0]; | |
| 562 | - console.log(bsthTLineOld) | |
| 563 | - | |
| 564 | - var bsthTLineNew=data[1]; | |
| 565 | - console.log(bsthTLineNew) | |
| 566 | - if(bsthTLineNew!=null){ | |
| 567 | - for(let i in bsthTLineOld){ | |
| 568 | - var o=bsthTLineOld[i]==null?'':bsthTLineOld[i]; | |
| 569 | - var n=bsthTLineNew[i]==null?'':bsthTLineNew[i]; | |
| 570 | - if(o!=n){ | |
| 571 | - console.log(o) | |
| 572 | - console.log(n) | |
| 573 | - i=i=='fcompany'?'fCompany':i; | |
| 574 | - i=i=='plineId'?'pLineId':i; | |
| 575 | - var input=document.getElementsByName(i)[0]; | |
| 576 | - if(input!=undefined){ | |
| 577 | - input.style.color='red' | |
| 578 | - } | |
| 579 | - } | |
| 580 | - } | |
| 581 | - } | |
| 582 | - /*for ( var i in data) { | |
| 583 | - | |
| 584 | - if(i == "fcompany"){ | |
| 585 | - console.log(i); | |
| 586 | - } | |
| 587 | - | |
| 588 | - | |
| 589 | - if (i == "id" || i == "lineUpdateType") | |
| 590 | - continue; | |
| 591 | - | |
| 592 | - var inputValue = ""; | |
| 593 | - | |
| 594 | - if ($("input[name=" + i + "]").length > 1) { | |
| 595 | - | |
| 596 | - for (var j = 0; j < $("input[name=" + i + "]").length; j++) { | |
| 597 | - if ($("input[name=" + i + "]")[j].checked) | |
| 598 | - inputValue += $("input[name="+ i + "]")[j].value + ","; | |
| 599 | - } | |
| 600 | - inputValue = inputValue.substring(0,inputValue.length - 1); | |
| 601 | - | |
| 602 | - if (data[i] != inputValue) { | |
| 603 | - $($("input[name=" + i + "]")[0]).parent().parent().css("background", "red"); | |
| 604 | - } | |
| 605 | - continue; | |
| 606 | - | |
| 607 | - } | |
| 608 | - | |
| 609 | - var dom = $("input[name=" + i + "]")[0]; | |
| 610 | - | |
| 611 | - if (!dom) { | |
| 612 | - dom = $("select[name=" + i + "]")[0]; | |
| 613 | - } | |
| 614 | - | |
| 615 | - if (!dom) { | |
| 616 | - dom = $("textarea[name=" + i + "]")[0]; | |
| 617 | - } | |
| 618 | - | |
| 619 | - if (dom) { | |
| 620 | - | |
| 621 | - inputValue = dom.value; | |
| 622 | - | |
| 623 | - if (data[i] != inputValue) { | |
| 624 | - | |
| 625 | - $(dom).css("background", "red"); | |
| 626 | - | |
| 627 | - } | |
| 628 | - | |
| 629 | - } | |
| 630 | - | |
| 631 | - }*/ | |
| 632 | - | |
| 633 | - }); | |
| 634 | - | |
| 635 | - }) | |
| 636 | - | |
| 637 | - function getParent(obj, className) { | |
| 638 | - var parent = obj; | |
| 639 | - | |
| 640 | - while (parent[0] && parent[0].className != className) { | |
| 641 | - parent = parent.parent(); | |
| 642 | - } | |
| 643 | - return parent; | |
| 644 | - } | |
| 645 | - | |
| 646 | - $("#form-line-edit").validate({ | |
| 647 | - focusCleanup : true | |
| 648 | - }); | |
| 649 | - | |
| 650 | - function submitHandler() { | |
| 651 | - if ($.validate.form()) { | |
| 652 | - $.operate.save(prefix + "/edit", $('#form-line-edit').serialize()+'&examineStatus=0'); | |
| 653 | - } | |
| 654 | - } | |
| 655 | - function submitHandlerCommit() { | |
| 656 | - if ($.validate.form()) { | |
| 657 | - $.operate.save(prefix + "/edit", $('#form-line-edit').serialize()+'&examineStatus=1'); | |
| 658 | - } | |
| 659 | - } | |
| 660 | - | |
| 661 | - $("input[name='warrantStartTime']").datetimepicker({ | |
| 662 | - format : "yyyy-mm-dd", | |
| 663 | - minView : "month", | |
| 664 | - autoclose : true | |
| 665 | - }); | |
| 666 | - | |
| 667 | - $("input[name='warrantEndTime']").datetimepicker({ | |
| 668 | - format : "yyyy-mm-dd", | |
| 669 | - minView : "month", | |
| 670 | - autoclose : true | |
| 671 | - }); | |
| 672 | - | |
| 673 | - $("input[name='planCancelTime']").datetimepicker({ | |
| 674 | - format : "yyyy-mm-dd", | |
| 675 | - minView : "month", | |
| 676 | - autoclose : true | |
| 677 | - }); | |
| 678 | - | |
| 679 | - $("input[name='cancelTime']").datetimepicker({ | |
| 680 | - format : "yyyy-mm-dd", | |
| 681 | - minView : "month", | |
| 682 | - autoclose : true | |
| 683 | - }); | |
| 684 | - | |
| 685 | - $("input[name='updateTime']").datetimepicker({ | |
| 686 | - format : "yyyy-mm-dd", | |
| 687 | - minView : "month", | |
| 688 | - autoclose : true | |
| 689 | - }); | |
| 690 | - | |
| 691 | - $("input[name='timeSchedule']").datetimepicker({ | |
| 692 | - format : "yyyy-mm-dd", | |
| 693 | - minView : "month", | |
| 694 | - autoclose : true | |
| 695 | - }); | |
| 696 | - | |
| 697 | - </script> | |
| 11 | +<div class="wrapper wrapper-content animated fadeInRight ibox-content"> | |
| 12 | + <form class="form-horizontal m" id="form-line-edit" th:object="${bsthTLine}"> | |
| 13 | + <input name="id" th:field="*{id}" type="hidden"> | |
| 14 | + <h3>路务</h3> | |
| 15 | + <div class="form-group"> | |
| 16 | + <label class="col-sm-1 control-label" name="lineName">线路名称:</label> | |
| 17 | + <div class="col-sm-2"> | |
| 18 | + <input th:field="*{lineName}" class="form-control" type="text" readonly> | |
| 19 | + </div> | |
| 20 | + <!----------------------------------> | |
| 21 | + <label class="col-sm-1 control-label" name="company">公司:</label> | |
| 22 | + <div class="col-sm-2"> | |
| 23 | + <select id='company' name="company"></select> | |
| 24 | + </div> | |
| 25 | + <!----------------------------------> | |
| 26 | + <label class="col-sm-1 control-label" name="fCompany">分公司:</label> | |
| 27 | + <div class="col-sm-2"> | |
| 28 | + <select id='fCompany'name="fCompany"></select> | |
| 29 | + </div> | |
| 30 | + <!----------------------------------> | |
| 31 | + <label class="col-sm-1 control-label" name="lineType">线路类型:</label> | |
| 32 | + <div class="col-sm-2"> | |
| 33 | + <select name="lineType" th:with="type=${@dict.getType('lineType')}" class="form-control m-b"> | |
| 34 | + <option value=""></option> | |
| 35 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 36 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineType== null ? '' : bsthTLine.lineType),#strings.toString(dict.dictValue))}"> | |
| 37 | + </option> | |
| 38 | + </select> | |
| 39 | + </div> | |
| 40 | + </div> | |
| 41 | + <!----------------------------------> | |
| 42 | + <div class="form-group"> | |
| 43 | + <label class="col-sm-1 control-label" name="lineLevel">线路属性:</label> | |
| 44 | + <div class="col-sm-2"> | |
| 45 | + <select name="lineLevel" th:with="type=${@dict.getType('lineLevel')}" class="form-control m-b"> | |
| 46 | + <option value=""></option> | |
| 47 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 48 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineLevel== null ? '' : bsthTLine.lineLevel),#strings.toString(dict.dictValue))}"> | |
| 49 | + </option> | |
| 50 | + </select> | |
| 51 | + </div> | |
| 52 | + <!----------------------------------> | |
| 53 | + <label class="col-sm-1 control-label" name="serviceType">营运方式:</label> | |
| 54 | + <div class="col-sm-2"> | |
| 55 | + <select name="serviceType" th:with="type=${@dict.getType('serviceType')}" class="form-control m-b"> | |
| 56 | + <option value=""></option> | |
| 57 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 58 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceType== null ? '' : bsthTLine.serviceType),#strings.toString(dict.dictValue))}"> | |
| 59 | + </option> | |
| 60 | + </select> | |
| 61 | + </div> | |
| 62 | + <!----------------------------------> | |
| 63 | + <label class="col-sm-1 control-label" name="revenueType">营收类型:</label> | |
| 64 | + <div class="col-sm-2"> | |
| 65 | + <select name="revenueType" th:with="type=${@dict.getType('revenueType')}" class="form-control m-b"> | |
| 66 | + <option value=""></option> | |
| 67 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 68 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.revenueType== null ? '' : bsthTLine.revenueType),#strings.toString(dict.dictValue))}"></option> | |
| 69 | + ></option>></option> | |
| 70 | + </select> | |
| 71 | + </div> | |
| 72 | + <!----------------------------------> | |
| 73 | + <label class="col-sm-1 control-label" name="district">区属:</label> | |
| 74 | + <div class="col-sm-2"> | |
| 75 | + <select name="district" th:with="type=${@dict.getType('district')}" class="selectpicker form-control" | |
| 76 | + multiple title=""> | |
| 77 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 78 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.district== null ? '' : bsthTLine.district),#strings.toString(dict.dictValue))}"></option> | |
| 79 | + </select> | |
| 80 | + </div> | |
| 81 | + </div> | |
| 82 | + <!----------------------------------> | |
| 83 | + <div class="form-group"> | |
| 84 | + <label class="col-sm-1 control-label" name="inoutDistrict">是否区内:</label> | |
| 85 | + <div class="col-sm-2"> | |
| 86 | + <select name="inoutDistrict" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 87 | + <option value=""></option> | |
| 88 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 89 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.inoutDistrict== null ? '' : bsthTLine.inoutDistrict),#strings.toString(dict.dictValue))}"></option> | |
| 90 | + </select> | |
| 91 | + </div> | |
| 92 | + <!----------------------------------> | |
| 93 | + <label class="col-sm-1 control-label" name="roadType">道路类型:</label> | |
| 94 | + <div class="col-sm-2"> | |
| 95 | + <!--data-max-options="2" 限制多选数量--> | |
| 96 | + <select name="roadType" th:with="type=${@dict.getType('roadType')}" class="selectpicker form-control" | |
| 97 | + multiple title=""> | |
| 98 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 99 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.roadType== null ? '' : bsthTLine.roadType),#strings.toString(dict.dictValue))}"> | |
| 100 | + </option> | |
| 101 | + </select> | |
| 102 | + </div> | |
| 103 | + <!----------------------------------> | |
| 104 | + <label class="col-sm-1 control-label" name="serviceTime">运营时间:</label> | |
| 105 | + <div class="col-sm-2"> | |
| 106 | + <select name="serviceTime" th:with="type=${@dict.getType('serviceTime')}" class="form-control m-b"> | |
| 107 | + <option value=""></option> | |
| 108 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 109 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceTime== null ? '' : bsthTLine.serviceTime),#strings.toString(dict.dictValue))}"></option> | |
| 110 | + </select> | |
| 111 | + </div> | |
| 112 | + <!----------------------------------> | |
| 113 | + <label class="col-sm-1 control-label" name="airConditionerType">是否空调:</label> | |
| 114 | + <div class="col-sm-2"> | |
| 115 | + <select name="airConditionerType" th:with="type=${@dict.getType('airConditionerType')}" | |
| 116 | + class="form-control m-b"> | |
| 117 | + <option value=""></option> | |
| 118 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 119 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.airConditionerType == null ? '' : bsthTLine.airConditionerType ),#strings.toString(dict.dictValue))}"></option> | |
| 120 | + </select> | |
| 121 | + </div> | |
| 122 | + </div> | |
| 123 | + <!----------------------------------> | |
| 124 | + <div class="form-group"> | |
| 125 | + <label class="col-sm-1 control-label" name="sellTicketType">售票类型:</label> | |
| 126 | + <div class="col-sm-2"> | |
| 127 | + <select name="sellTicketType" th:with="type=${@dict.getType('sellTicketType')}" | |
| 128 | + class="form-control m-b"> | |
| 129 | + <option value=""></option> | |
| 130 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 131 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.sellTicketType == null ? '' : bsthTLine.sellTicketType),#strings.toString(dict.dictValue))}"></option> | |
| 132 | + </select> | |
| 133 | + </div> | |
| 134 | + <!----------------------------------> | |
| 135 | + <label class="col-sm-1 control-label" name="ticketPrice">票价:</label> | |
| 136 | + <div class="col-sm-2"> | |
| 137 | + <!--data-max-options="2" 限制多选数量--> | |
| 138 | + <select name="ticketPrice" th:with="type=${@dict.getType('ticketPrice')}" | |
| 139 | + class="selectpicker form-control" multiple title=""> | |
| 140 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 141 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.ticketPrice== null ? '' : bsthTLine.ticketPrice),#strings.toString(dict.dictValue))}"> | |
| 142 | + </option> | |
| 143 | + </select> | |
| 144 | + </div> | |
| 145 | + <!----------------------------------> | |
| 146 | + <label class="col-sm-1 control-label" name="halfwayStation">站点名称:</label> | |
| 147 | + <div class="col-sm-2"> | |
| 148 | + <textarea name="halfwayStation" class="form-control">[[*{halfwayStation}]]</textarea> | |
| 149 | + </div> | |
| 150 | + <!----------------------------------> | |
| 151 | + <label class="col-sm-1 control-label" name="directions">线路走向:</label> | |
| 152 | + <div class="col-sm-2"> | |
| 153 | + <textarea name="directions" class="form-control">[[*{directions}]]</textarea> | |
| 154 | + </div> | |
| 155 | + </div> | |
| 156 | + <!----------------------------------> | |
| 157 | + <div class="form-group"> | |
| 158 | + <label class="col-sm-1 control-label" name="stationUp">站级数(上行):</label> | |
| 159 | + <div class="col-sm-2"> | |
| 160 | + <input name="stationUp" th:field="*{stationUp}" class="form-control" type="text"> | |
| 161 | + </div> | |
| 162 | + <!----------------------------------> | |
| 163 | + <label class="col-sm-1 control-label" name="stationDown">站级数(下行):</label> | |
| 164 | + <div class="col-sm-2"> | |
| 165 | + <input name="stationDown" th:field="*{stationDown}" class="form-control" type="text"> | |
| 166 | + </div> | |
| 167 | + <!----------------------------------> | |
| 168 | + <label class="col-sm-1 control-label" name="firstStation">首站:</label> | |
| 169 | + <div class="col-sm-2"> | |
| 170 | + <input name="firstStation" th:field="*{firstStation}" class="form-control" type="text"> | |
| 171 | + </div> | |
| 172 | + <!----------------------------------> | |
| 173 | + <label class="col-sm-1 control-label" name="lastStation">末站:</label> | |
| 174 | + <div class="col-sm-2"> | |
| 175 | + <input name="lastStation" th:field="*{lastStation}" class="form-control" type="text"> | |
| 176 | + </div> | |
| 177 | + </div> | |
| 178 | + <!----------------------------------> | |
| 179 | + <div class="form-group"> | |
| 180 | + <label class="col-sm-1 control-label" name="firstTime">起点站首末班:</label> | |
| 181 | + <div class="col-sm-2"> | |
| 182 | + <input name="firstTime" th:field="*{firstTime}" class="form-control" type="text"> | |
| 183 | + </div> | |
| 184 | + <!----------------------------------> | |
| 185 | + <label class="col-sm-1 control-label" name="lastTime">终点站首末班:</label> | |
| 186 | + <div class="col-sm-2"> | |
| 187 | + <input name="lastTime" th:field="*{lastTime}" class="form-control" type="text"> | |
| 188 | + </div> | |
| 189 | + <!----------------------------------> | |
| 190 | + <label class="col-sm-1 control-label" name="mileageUp">上行里程数:</label> | |
| 191 | + <div class="col-sm-2"> | |
| 192 | + <input name="mileageUp" th:field="*{mileageUp}" class="form-control" type="text"> | |
| 193 | + </div> | |
| 194 | + <!----------------------------------> | |
| 195 | + <label class="col-sm-1 control-label" name="mileageDown">下行里程数:</label> | |
| 196 | + <div class="col-sm-2"> | |
| 197 | + <input name="mileageDown" th:field="*{mileageDown}" class="form-control" type="text"> | |
| 198 | + </div> | |
| 199 | + </div> | |
| 200 | + <!----------------------------------> | |
| 201 | + <div class="form-group"> | |
| 202 | + <label class="col-sm-1 control-label" name="lineDistance">线路长度:</label> | |
| 203 | + <div class="col-sm-2"> | |
| 204 | + <input name="lineDistance" th:field="*{lineDistance}" class="form-control" type="text"> | |
| 205 | + </div> | |
| 206 | + <!----------------------------------> | |
| 207 | + <label class="col-sm-1 control-label" name="isWarrant">是否权证:</label> | |
| 208 | + <div class="col-sm-2"> | |
| 209 | + <select name="isWarrant" id="isWarrant" th:with="type=${@dict.getType('trueFalse')}" | |
| 210 | + class="form-control m-b"> | |
| 211 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 212 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.isWarrant== null ? '' : bsthTLine.isWarrant),#strings.toString(dict.dictValue))}"></option> | |
| 213 | + </select> | |
| 214 | + </div> | |
| 215 | + <!----------------------------------> | |
| 216 | + <label class="col-sm-1 control-label" name="warrantStartTime">授权起始日期:</label> | |
| 217 | + <div class="col-sm-2"> | |
| 218 | + <div class="input-group date"> | |
| 219 | + <input name="warrantStartTime" th:value="${#dates.format(bsthTLine.warrantStartTime, 'yyyy-MM-dd')}" | |
| 220 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 221 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 222 | + </div> | |
| 223 | + </div> | |
| 224 | + <!----------------------------------> | |
| 225 | + <label class="col-sm-1 control-label" name="warrantEndTime">授权结束日期:</label> | |
| 226 | + <div class="col-sm-2"> | |
| 227 | + <div class="input-group date"> | |
| 228 | + <input name="warrantEndTime" th:value="${#dates.format(bsthTLine.warrantEndTime, 'yyyy-MM-dd')}" | |
| 229 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 230 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 231 | + </div> | |
| 232 | + </div> | |
| 233 | + </div> | |
| 234 | + <!----------------------------------> | |
| 235 | + <div class="form-group"> | |
| 236 | + <label class="col-sm-1 control-label" name="warrantYear">授权年限:</label> | |
| 237 | + <div class="col-sm-2"> | |
| 238 | + <input name="warrantYear" th:field="*{warrantYear}" class="form-control" type="text"> | |
| 239 | + </div> | |
| 240 | + <!----------------------------------> | |
| 241 | + <label class="col-sm-1 control-label" name="timeSchedule">实施时间:</label> | |
| 242 | + <div class="col-sm-2"> | |
| 243 | + <div class="input-group date"> | |
| 244 | + <input name="timeSchedule" | |
| 245 | + th:value="${#dates.format(bsthTLine.timeSchedule, 'yyyy-MM-dd')}" | |
| 246 | + class="form-control" placeholder="yyyy-MM-dd" type="text" | |
| 247 | + autocomplete="off"> <span class="input-group-addon"><i | |
| 248 | + class="fa fa-calendar"></i></span> | |
| 249 | + </div> | |
| 250 | + </div> | |
| 251 | + <!----------------------------------> | |
| 252 | + <label class="col-sm-1 control-label" name="warrantVehiclesLarge">经营权证(大):</label> | |
| 253 | + <div class="col-sm-2"> | |
| 254 | + <input name="warrantVehiclesLarge" th:field="*{warrantVehiclesLarge}" class="form-control" type="text"> | |
| 255 | + </div> | |
| 256 | + <!----------------------------------> | |
| 257 | + <label class="col-sm-1 control-label" name="warrantVehiclesMiddle">经营权证(中):</label> | |
| 258 | + <div class="col-sm-2"> | |
| 259 | + <input name="warrantVehiclesMiddle" th:field="*{warrantVehiclesMiddle}" class="form-control" | |
| 260 | + type="text"> | |
| 261 | + </div> | |
| 262 | + | |
| 263 | + </div> | |
| 264 | + <!----------------------------------> | |
| 265 | + <div class="form-group"> | |
| 266 | + <label class="col-sm-1 control-label" name="isMetro">是否轨交末班车衔接:</label> | |
| 267 | + <div class="col-sm-2"> | |
| 268 | + <select name="isMetro" th:with="type=${@dict.getType('trueFalse')}" class="form-control m-b"> | |
| 269 | + <option value=""></option> | |
| 270 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 271 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.isMetro== null ? '' : bsthTLine.isMetro),#strings.toString(dict.dictValue))}"></option> | |
| 272 | + </select> | |
| 273 | + </div> | |
| 274 | + <!----------------------------------> | |
| 275 | + <label class="col-sm-1 control-label" name="metroTime">轨交时间:</label> | |
| 276 | + <div class="col-sm-2"> | |
| 277 | + <div class="input-group date"> | |
| 278 | + <input name="metroTime" class="form-control" placeholder="HH:mm:ss" th:value="*{metroTime}"> | |
| 279 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 280 | + </div> | |
| 281 | + </div> | |
| 282 | + <!----------------------------------> | |
| 283 | + <label class="col-sm-1 control-label" name="coldBonusType">冷僻线路补贴类型:</label> | |
| 284 | + <div class="col-sm-2"> | |
| 285 | + <input name="coldBonusType" th:field="*{coldBonusType}" class="form-control" type="text"> | |
| 286 | + </div> | |
| 287 | + <!----------------------------------> | |
| 288 | + <label class="col-sm-1 control-label" name="serviceState">营运状态:</label> | |
| 289 | + <div class="col-sm-2"> | |
| 290 | + <select name="serviceState" th:with="type=${@dict.getType('serviceState')}" class="form-control m-b"> | |
| 291 | + <option value=""></option> | |
| 292 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" | |
| 293 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.serviceState== null ? '' : bsthTLine.serviceState),#strings.toString(dict.dictValue))}"></option> | |
| 294 | + </select> | |
| 295 | + </div> | |
| 296 | + </div> | |
| 297 | + <!----------------------------------> | |
| 298 | + <div class="form-group"> | |
| 299 | + <label class="col-sm-1 control-label" name="planCancelTime">线路暂停日期:</label> | |
| 300 | + <div class="col-sm-2"> | |
| 301 | + <div class="input-group date"> | |
| 302 | + <input name="planCancelTime" th:value="${#dates.format(bsthTLine.planCancelTime, 'yyyy-MM-dd')}" | |
| 303 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 304 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 305 | + </div> | |
| 306 | + </div> | |
| 307 | + <!----------------------------------> | |
| 308 | + <label class="col-sm-1 control-label" name="cancelTime">实际撤销日期:</label> | |
| 309 | + <div class="col-sm-2"> | |
| 310 | + <div class="input-group date"> | |
| 311 | + <input name="cancelTime" th:value="${#dates.format(bsthTLine.cancelTime, 'yyyy-MM-dd')}" | |
| 312 | + class="form-control" placeholder="yyyy-MM-dd" type="text" autocomplete="off"> | |
| 313 | + <span class="input-group-addon"><i class="fa fa-calendar"></i></span> | |
| 314 | + </div> | |
| 315 | + </div> | |
| 316 | + <!----------------------------------> | |
| 317 | + <label class="col-sm-1 control-label" name="lineUpdateType">性质:</label> | |
| 318 | + <div class="col-sm-2"> | |
| 319 | + <select name="lineUpdateType" | |
| 320 | + th:with="type=${@dict.getType('lineUpdateType')}" | |
| 321 | + class="form-control m-b"> | |
| 322 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 323 | + th:value="${dict.dictValue}" | |
| 324 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.lineUpdateType== null||bsthTLine.lineUpdateType=='3' ? '' : bsthTLine.lineUpdateType),#strings.toString(dict.dictValue))}"></option> | |
| 325 | + ></option> | |
| 326 | + </select> | |
| 327 | + </div> | |
| 328 | + <!----------------------------------> | |
| 329 | + <label class="col-sm-1 control-label" name="remark">备注:</label> | |
| 330 | + <div class="col-sm-2"> | |
| 331 | + <textarea name="remark" class="form-control">[[*{remark}]]</textarea> | |
| 332 | + </div> | |
| 333 | + </div> | |
| 334 | + <!----------------------------------> | |
| 335 | + <div class="form-group"> | |
| 336 | + <div class="form-group"> | |
| 337 | + <label class="col-sm-1 control-label" name="files">附件:</label> | |
| 338 | + <div class="col-sm-5"> | |
| 339 | + <div th:each="path: ${#strings.arraySplit(bsthTLine.files,',')}"> | |
| 340 | + <input name="files" type="hidden" th:value="${path}"> | |
| 341 | + <a th:href="${#strings.replace(path,#strings.arraySplit(path,':')[0]+':','')}" | |
| 342 | + th:text="${#strings.arraySplit(path,':')[0]}"> | |
| 343 | + </a> | |
| 344 | + <button onclick="deleteFile(this);">删除</button> | |
| 345 | + </div> | |
| 346 | + <div class="file-loading" id="uploadDiv"> | |
| 347 | + <input id="fileinput" type="file" multiple> | |
| 348 | + </div> | |
| 349 | + </div> | |
| 350 | + </div> | |
| 351 | + </div> | |
| 352 | + <!----------------------------------> | |
| 353 | + <div class="hr-line-dashed"></div> | |
| 354 | + <h3>调度</h3> | |
| 355 | + <!----------------------------------> | |
| 356 | + <div class="form-group"> | |
| 357 | + <label class="col-sm-1 control-label" name="carPlate">车辆自编号:</label> | |
| 358 | + <div class="col-sm-2"> | |
| 359 | + <input name="carPlate" th:field="*{carPlate}" class="form-control" type="text"> | |
| 360 | + </div> | |
| 361 | + <!----------------------------------> | |
| 362 | + <label class="col-sm-1 control-label" name="hasTimelists">是否挂牌:</label> | |
| 363 | + <div class="col-sm-2"> | |
| 364 | + <select name="hasTimelists" | |
| 365 | + th:with="type=${@dict.getType('trueFalse')}" | |
| 366 | + class="form-control m-b"> | |
| 367 | + <option value=""></option> | |
| 368 | + <option th:each="dict : ${type}" th:text="${dict.dictLabel}" | |
| 369 | + th:value="${dict.dictValue}" | |
| 370 | + th:selected="${#arrays.contains(#strings.toString(bsthTLine.hasTimelists== null ? '' : bsthTLine.hasTimelists),#strings.toString(dict.dictValue))}"></option> | |
| 371 | + </select> | |
| 372 | + </div> | |
| 373 | + <!----------------------------------> | |
| 374 | + <label class="col-sm-1 control-label" name="travelTimeUp">行驶时间(上行):</label> | |
| 375 | + <div class="col-sm-2"> | |
| 376 | + <input name="travelTimeUp" th:field="*{travelTimeUp}" class="form-control" type="text"> | |
| 377 | + </div> | |
| 378 | + <!----------------------------------> | |
| 379 | + <label class="col-sm-1 control-label" name="travelTimeDown">行驶时间(下行):</label> | |
| 380 | + <div class="col-sm-2"> | |
| 381 | + <input name="travelTimeDown" th:field="*{travelTimeDown}" class="form-control" type="text"> | |
| 382 | + </div> | |
| 383 | + </div> | |
| 384 | + <!----------------------------------> | |
| 385 | + <div class="form-group"> | |
| 386 | + <label class="col-sm-1 control-label" name="travelIntervalUp">行驶间隔(高峰):</label> | |
| 387 | + <div class="col-sm-2"> | |
| 388 | + <input name="travelIntervalUp" th:field="*{travelIntervalUp}" class="form-control" type="text"> | |
| 389 | + </div> | |
| 390 | + <!----------------------------------> | |
| 391 | + <label class="col-sm-1 control-label" name="travelIntervalDown">行驶间隔(低谷):</label> | |
| 392 | + <div class="col-sm-2"> | |
| 393 | + <input name="travelIntervalDown" th:field="*{travelIntervalDown}" class="form-control" type="text"> | |
| 394 | + </div> | |
| 395 | + <!----------------------------------> | |
| 396 | + <label class="col-sm-1 control-label" name="divideLevel">间隔等级:</label> | |
| 397 | + <div class="col-sm-2"> | |
| 398 | + <input name="divideLevel" th:field="*{divideLevel}" class="form-control" type="text"> | |
| 399 | + </div> | |
| 400 | + <!----------------------------------> | |
| 401 | + <label class="col-sm-1 control-label" name="vehiclesNumber">实际配车数:</label> | |
| 402 | + <div class="col-sm-2"> | |
| 403 | + <input name="vehiclesNumber" th:field="*{vehiclesNumber}" class="form-control" type="text"> | |
| 404 | + </div> | |
| 405 | + </div> | |
| 406 | + <!----------------------------------> | |
| 407 | + <div class="form-group"> | |
| 408 | + <label class="col-sm-1 control-label" name="numberVehiclesLarge">实际车辆数(大):</label> | |
| 409 | + <div class="col-sm-2"> | |
| 410 | + <input name="numberVehiclesLarge" th:field="*{numberVehiclesLarge}" class="form-control" type="text"> | |
| 411 | + </div> | |
| 412 | + <!----------------------------------> | |
| 413 | + <label class="col-sm-1 control-label" name="numberVehiclesMiddle">实际车辆数(中):</label> | |
| 414 | + <div class="col-sm-2"> | |
| 415 | + <input name="numberVehiclesMiddle" th:field="*{numberVehiclesMiddle}" class="form-control" type="text"> | |
| 416 | + </div> | |
| 417 | + <!----------------------------------> | |
| 418 | + <label class="col-sm-1 control-label" name="busEvNumber">新能源车数:</label> | |
| 419 | + <div class="col-sm-2"> | |
| 420 | + <input name="busEvNumber" th:field="*{busEvNumber}" class="form-control" type="text"> | |
| 421 | + </div> | |
| 422 | + <!----------------------------------> | |
| 423 | + <label class="col-sm-1 control-label" name="numberPerson">线路配档数:</label> | |
| 424 | + <div class="col-sm-2"> | |
| 425 | + <input name="numberPerson" th:field="*{numberPerson}" class="form-control" type="text"> | |
| 426 | + </div> | |
| 427 | + </div> | |
| 428 | + <!----------------------------------> | |
| 429 | + <div class="form-group"> | |
| 430 | + <label class="col-sm-1 control-label" name="numberPersonDriver">司机人数:</label> | |
| 431 | + <div class="col-sm-2"> | |
| 432 | + <input name="numberPersonDriver" th:field="*{numberPersonDriver}" class="form-control" type="text"> | |
| 433 | + </div> | |
| 434 | + <!----------------------------------> | |
| 435 | + <label class="col-sm-1 control-label" name="numberPersonSales">售票员数:</label> | |
| 436 | + <div class="col-sm-2"> | |
| 437 | + <input name="numberPersonSales" th:field="*{numberPersonSales}" class="form-control" type="text"> | |
| 438 | + </div> | |
| 439 | + </div> | |
| 440 | + </form> | |
| 441 | +</div> | |
| 442 | +<th:block th:include="include :: footer"/> | |
| 443 | +<th:block th:include="include :: datetimepicker-js"/> | |
| 444 | +<th:block th:include="include :: bootstrap-fileinput-js"/> | |
| 445 | +<th:block th:include="include :: bootstrap-select-js"/> | |
| 446 | +<th:block th:include="include :: select2-js"/> | |
| 447 | +<script th:inline="javascript"> | |
| 448 | + var prefix = ctx + "system/lineHistory"; | |
| 449 | + | |
| 450 | + function deleteFile(obj) { | |
| 451 | + $(obj).parent().remove(); | |
| 452 | + } | |
| 453 | + | |
| 454 | + //公司分公司联动 | |
| 455 | + var companyList = [[${companyList}]]; | |
| 456 | + var companies = new Array(); | |
| 457 | + var fCompanies = new Array(); | |
| 458 | + var bsthTLine = [[${bsthTLine}]]; | |
| 459 | + $(function () { | |
| 460 | + for (let i in companyList) { | |
| 461 | + companies[i] = companyList[i].company; | |
| 462 | + fCompanies[i] = companyList[i].fCompany; | |
| 463 | + } | |
| 464 | + companies = Array.from(new Set(companies)); | |
| 465 | + companySelect(); | |
| 466 | + fCompanySelect(); | |
| 467 | + $('#company').on('change.select2', function (e) { | |
| 468 | + fCompanySelect() | |
| 469 | + }); | |
| 470 | + //初始选中 | |
| 471 | + $("#company").val(bsthTLine.company).trigger("change"); | |
| 472 | + $("#fCompany").val(bsthTLine.fCompany).trigger("change"); | |
| 473 | + // 获取 div 标签下的所有子节点 | |
| 474 | + /* var pObjs = document.getElementById('lw').getElementsByTagName("*") | |
| 475 | + for (var i = 0 ; i <pObjs.length; i++) { // 一定要倒序,正序是删不干净的,可自行尝试 | |
| 476 | + pObjs[i].setAttribute("disabled",true); | |
| 477 | + } | |
| 478 | + var pObjs = document.getElementById('dd').getElementsByTagName("*") | |
| 479 | + for (var i = 0 ; i <pObjs.length; i++) { // 一定要倒序,正序是删不干净的,可自行尝试 | |
| 480 | + pObjs[i].setAttribute("disabled",true); | |
| 481 | + }*/ | |
| 482 | + }); | |
| 483 | + | |
| 484 | + function companySelect() { | |
| 485 | + var arr = new Array(); | |
| 486 | + var company = new Object(); | |
| 487 | + company.id = ''; | |
| 488 | + company.text = ''; | |
| 489 | + company.value = ''; | |
| 490 | + arr.push(company) | |
| 491 | + for (var i = 0; i < companies.length; i++) { | |
| 492 | + company = new Object(); | |
| 493 | + company.id = companies[i]; | |
| 494 | + company.text = companies[i]; | |
| 495 | + company.value = companies[i]; | |
| 496 | + arr.push(company); | |
| 497 | + } | |
| 498 | + $("#company").select2({ | |
| 499 | + data: arr, | |
| 500 | + placeholder: '请选择', | |
| 501 | + allowClear: true | |
| 502 | + }) | |
| 503 | + } | |
| 504 | + | |
| 505 | + function fCompanySelect() { | |
| 506 | + $('#fCompany').empty(); | |
| 507 | + var company = $('#company').select2('val'); | |
| 508 | + var arr = new Array(); | |
| 509 | + var fCompany = new Object(); | |
| 510 | + fCompany.id = ''; | |
| 511 | + fCompany.text = ''; | |
| 512 | + fCompany.value = ''; | |
| 513 | + arr.push(fCompany) | |
| 514 | + if (company == '') { | |
| 515 | + for (let i in companyList) { | |
| 516 | + var companyName = companyList[i].company; | |
| 517 | + var fCompanyName = companyList[i].fCompany; | |
| 518 | + fCompany = new Object(); | |
| 519 | + fCompany.id = fCompanyName; | |
| 520 | + fCompany.text = fCompanyName; | |
| 521 | + fCompany.value = fCompanyName; | |
| 522 | + arr.push(fCompany); | |
| 523 | + } | |
| 524 | + } else { | |
| 525 | + for (let i in companyList) { | |
| 526 | + var companyName = companyList[i].company; | |
| 527 | + var fCompanyName = companyList[i].fCompany; | |
| 528 | + if (companyName == company) { | |
| 529 | + fCompany = new Object(); | |
| 530 | + fCompany.id = fCompanyName; | |
| 531 | + fCompany.text = fCompanyName; | |
| 532 | + fCompany.value = fCompanyName; | |
| 533 | + arr.push(fCompany); | |
| 534 | + } | |
| 535 | + } | |
| 536 | + } | |
| 537 | + $("#fCompany").select2({ | |
| 538 | + data: arr, | |
| 539 | + placeholder: '请选择', | |
| 540 | + allowClear: true | |
| 541 | + }); | |
| 542 | + } | |
| 543 | + | |
| 544 | + var f = [[${flag}]]; | |
| 545 | + $(function () { | |
| 546 | + | |
| 547 | + $("#fileinput").fileinput({ | |
| 548 | + 'theme': 'explorer-fas', | |
| 549 | + 'uploadUrl': '/common/upload', | |
| 550 | + overwriteInitial: false, | |
| 551 | + initialPreviewAsData: false | |
| 552 | + }); | |
| 553 | + | |
| 554 | + $("#fileinput").on("fileuploaded", | |
| 555 | + function (event, data, proviewId, index) { | |
| 556 | + | |
| 557 | + var obj = '<div><input name="files" type="hidden" value=' + data.files[index].name + ':' + data.response.url + '>' + | |
| 558 | + '<a href=' + data.response.url + '>' + data.files[index].name + | |
| 559 | + '</a><button onclick="deleteFile(this);">删除</button></div>'; | |
| 560 | + | |
| 561 | + | |
| 562 | + $(".file-input").before(obj); | |
| 563 | + | |
| 564 | + }); | |
| 565 | + | |
| 566 | + | |
| 567 | + $.post("/system/line/findByName", | |
| 568 | + { | |
| 569 | + name: $("#lineName").val() | |
| 570 | + }, | |
| 571 | + function (data) { | |
| 572 | + var bsthTLineOld = data[0]; | |
| 573 | + console.log(bsthTLineOld) | |
| 574 | + | |
| 575 | + var bsthTLineNew = data[1]; | |
| 576 | + console.log(bsthTLineNew) | |
| 577 | + if (bsthTLineNew != null) { | |
| 578 | + for (let i in bsthTLineOld) { | |
| 579 | + var o = bsthTLineOld[i] == null ? '' : bsthTLineOld[i]; | |
| 580 | + var n = bsthTLineNew[i] == null ? '' : bsthTLineNew[i]; | |
| 581 | + if (o != n) { | |
| 582 | + console.log(o) | |
| 583 | + console.log(n) | |
| 584 | + i = i == 'fcompany' ? 'fCompany' : i; | |
| 585 | + i = i == 'plineId' ? 'pLineId' : i; | |
| 586 | + var input = document.getElementsByName(i)[0]; | |
| 587 | + if (input != undefined) { | |
| 588 | + input.style.color = 'red' | |
| 589 | + } | |
| 590 | + } | |
| 591 | + } | |
| 592 | + } | |
| 593 | + }); | |
| 594 | + | |
| 595 | + }) | |
| 596 | + | |
| 597 | + function getParent(obj, className) { | |
| 598 | + var parent = obj; | |
| 599 | + | |
| 600 | + while (parent[0] && parent[0].className != className) { | |
| 601 | + parent = parent.parent(); | |
| 602 | + } | |
| 603 | + return parent; | |
| 604 | + } | |
| 605 | + | |
| 606 | + $("#form-line-edit").validate({ | |
| 607 | + focusCleanup: true | |
| 608 | + }); | |
| 609 | + | |
| 610 | + function submitHandler() { | |
| 611 | + if ($.validate.form()) { | |
| 612 | + $.operate.save(prefix + "/edit", $('#form-line-edit').serialize() + '&examineStatus=0'); | |
| 613 | + } | |
| 614 | + } | |
| 615 | + | |
| 616 | + function submitHandlerCommit() { | |
| 617 | + if ($.validate.form()) { | |
| 618 | + $.operate.save(prefix + "/edit", $('#form-line-edit').serialize() + '&examineStatus=1'); | |
| 619 | + } | |
| 620 | + } | |
| 621 | + | |
| 622 | + $("input[name='warrantStartTime']").datetimepicker({ | |
| 623 | + format: "yyyy-mm-dd", | |
| 624 | + minView: "month", | |
| 625 | + autoclose: true | |
| 626 | + }); | |
| 627 | + | |
| 628 | + $("input[name='warrantEndTime']").datetimepicker({ | |
| 629 | + format: "yyyy-mm-dd", | |
| 630 | + minView: "month", | |
| 631 | + autoclose: true | |
| 632 | + }); | |
| 633 | + | |
| 634 | + $("input[name='planCancelTime']").datetimepicker({ | |
| 635 | + format: "yyyy-mm-dd", | |
| 636 | + minView: "month", | |
| 637 | + autoclose: true | |
| 638 | + }); | |
| 639 | + | |
| 640 | + $("input[name='cancelTime']").datetimepicker({ | |
| 641 | + format: "yyyy-mm-dd", | |
| 642 | + minView: "month", | |
| 643 | + autoclose: true | |
| 644 | + }); | |
| 645 | + | |
| 646 | + $("input[name='updateTime']").datetimepicker({ | |
| 647 | + format: "yyyy-mm-dd", | |
| 648 | + minView: "month", | |
| 649 | + autoclose: true | |
| 650 | + }); | |
| 651 | + | |
| 652 | + $("input[name='timeSchedule']").datetimepicker({ | |
| 653 | + format: "yyyy-mm-dd", | |
| 654 | + minView: "month", | |
| 655 | + autoclose: true | |
| 656 | + }); | |
| 657 | + | |
| 658 | +</script> | |
| 698 | 659 | </body> |
| 699 | 660 | </html> |
| 700 | 661 | \ No newline at end of file | ... | ... |