Commit 04cc4d9d773cfcc3236f95dfe9119fa7e5cbdb6a

Authored by 娄高锋
2 parents 2a6aa1cd 701de6e7

Merge branch 'minhang' of 192.168.168.201:panzhaov5/bsth_control into minhang

Too many changes to show.

To preserve performance only 20 of 54 files are displayed.

src/main/java/com/bsth/controller/BaseController2.java
@@ -5,10 +5,13 @@ import com.bsth.common.ResponseCode; @@ -5,10 +5,13 @@ import com.bsth.common.ResponseCode;
5 import com.bsth.service.BaseService; 5 import com.bsth.service.BaseService;
6 import com.bsth.service.schedule.utils.DataImportExportService; 6 import com.bsth.service.schedule.utils.DataImportExportService;
7 import com.google.common.base.Splitter; 7 import com.google.common.base.Splitter;
  8 +import jxl.Sheet;
  9 +import jxl.Workbook;
8 import org.springframework.beans.factory.annotation.Autowired; 10 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.data.domain.Page; 11 import org.springframework.data.domain.Page;
10 import org.springframework.data.domain.PageRequest; 12 import org.springframework.data.domain.PageRequest;
11 import org.springframework.data.domain.Sort; 13 import org.springframework.data.domain.Sort;
  14 +import org.springframework.util.CollectionUtils;
12 import org.springframework.web.bind.annotation.*; 15 import org.springframework.web.bind.annotation.*;
13 import org.springframework.web.multipart.MultipartFile; 16 import org.springframework.web.multipart.MultipartFile;
14 17
@@ -164,11 +167,24 @@ public class BaseController2<T, ID extends Serializable> { @@ -164,11 +167,24 @@ public class BaseController2<T, ID extends Serializable> {
164 */ 167 */
165 @RequestMapping(value = "/dataExport", method = RequestMethod.GET) 168 @RequestMapping(value = "/dataExport", method = RequestMethod.GET)
166 public void dataExport(HttpServletResponse response) throws Exception { 169 public void dataExport(HttpServletResponse response) throws Exception {
  170 + dataExport(response, null);
  171 + }
  172 +
  173 + @RequestMapping(value = "/dataExportExt", method = RequestMethod.GET)
  174 + public void dataExport(HttpServletResponse response, @RequestParam Map<String, Object> param) throws Exception {
167 // 1、使用ktr转换获取输出文件 175 // 1、使用ktr转换获取输出文件
168 File ktrfile = new File(this.getClass().getResource(getDataExportKtrClasspath()).toURI()); 176 File ktrfile = new File(this.getClass().getResource(getDataExportKtrClasspath()).toURI());
169 - File outputfile = dataImportExportService.fileDataOutput(  
170 - getDataExportFilename(),  
171 - ktrfile); 177 + File outputfile = null;
  178 + if (!CollectionUtils.isEmpty(param)) {
  179 + outputfile = dataImportExportService.fileDataOutput(
  180 + getDataExportFilename(),
  181 + ktrfile,
  182 + param);
  183 + } else {
  184 + outputfile = dataImportExportService.fileDataOutput(
  185 + getDataExportFilename(),
  186 + ktrfile);
  187 + }
172 188
173 System.out.println(outputfile.getName()); 189 System.out.println(outputfile.getName());
174 String filePath = outputfile.getAbsolutePath(); 190 String filePath = outputfile.getAbsolutePath();
@@ -225,4 +241,52 @@ public class BaseController2&lt;T, ID extends Serializable&gt; { @@ -225,4 +241,52 @@ public class BaseController2&lt;T, ID extends Serializable&gt; {
225 throw new RuntimeException("必须override,并指定ktr classpath"); 241 throw new RuntimeException("必须override,并指定ktr classpath");
226 } 242 }
227 243
  244 +
  245 + public static class ExcelFileOutput {
  246 + private String fileName;
  247 + private List<Map<String, Object>> sheetnames = new ArrayList<>();
  248 +
  249 + public String getFileName() {
  250 + return fileName;
  251 + }
  252 +
  253 + public void setFileName(String fileName) {
  254 + this.fileName = fileName;
  255 + }
  256 +
  257 + public List<Map<String, Object>> getSheetnames() {
  258 + return sheetnames;
  259 + }
  260 +
  261 + public void setSheetnames(List<Map<String, Object>> sheetnames) {
  262 + this.sheetnames = sheetnames;
  263 + }
  264 + }
  265 +
  266 + /**
  267 + * 上传Excel文件,返回文件全路径名,工作区名称列表。
  268 + * @param file
  269 + * @return
  270 + * @throws Exception
  271 + */
  272 + @RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
  273 + public ExcelFileOutput fileUpload(MultipartFile file) throws Exception {
  274 + // 返回对象
  275 + ExcelFileOutput rs = new ExcelFileOutput();
  276 +
  277 + // 上传文件
  278 + File file1 = dataImportExportService.uploadFile(file);
  279 + // 获取文件的sheet
  280 + Workbook book = Workbook.getWorkbook(file1);
  281 + for (Sheet sheet : book.getSheets()) {
  282 + String sheetname = sheet.getName();
  283 + Map<String, Object> s = new HashMap<>();
  284 + s.put("name", sheetname);
  285 + rs.getSheetnames().add(s);
  286 + }
  287 +
  288 + rs.setFileName(file1.getAbsolutePath());
  289 + return rs;
  290 + }
  291 +
228 } 292 }
src/main/java/com/bsth/controller/CarsController.java
1 package com.bsth.controller; 1 package com.bsth.controller;
2 2
  3 +import com.bsth.common.ResponseCode;
3 import com.bsth.entity.Cars; 4 import com.bsth.entity.Cars;
  5 +import com.bsth.service.schedule.utils.DataImportExportService;
4 import com.bsth.service.schedule.utils.DataToolsProperties; 6 import com.bsth.service.schedule.utils.DataToolsProperties;
5 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.boot.context.properties.EnableConfigurationProperties; 8 import org.springframework.boot.context.properties.EnableConfigurationProperties;
7 -import org.springframework.web.bind.annotation.*; 9 +import org.springframework.web.bind.annotation.RequestMapping;
  10 +import org.springframework.web.bind.annotation.RequestMethod;
  11 +import org.springframework.web.bind.annotation.RequestParam;
  12 +import org.springframework.web.bind.annotation.RestController;
8 13
  14 +import java.io.File;
  15 +import java.util.HashMap;
9 import java.util.Map; 16 import java.util.Map;
10 17
11 /** 18 /**
@@ -14,24 +21,12 @@ import java.util.Map; @@ -14,24 +21,12 @@ import java.util.Map;
14 @RestController 21 @RestController
15 @RequestMapping("cars") 22 @RequestMapping("cars")
16 @EnableConfigurationProperties(DataToolsProperties.class) 23 @EnableConfigurationProperties(DataToolsProperties.class)
17 -public class CarsController extends BaseController<Cars, Integer> { 24 +public class CarsController extends BaseController2<Cars, Integer> {
18 25
19 @Autowired 26 @Autowired
20 private DataToolsProperties dataToolsProperties; 27 private DataToolsProperties dataToolsProperties;
21 -  
22 - /**  
23 - * 覆写方法,因为form提交的方式参数不全,改用 json形式提交 @RequestBody  
24 - * @Title: save  
25 - * @Description: TODO(持久化对象)  
26 - * @param @param t  
27 - * @param @return 设定文件  
28 - * @return Map<String,Object> {status: 1(成功),-1(失败)}  
29 - * @throws  
30 - */  
31 - @RequestMapping(method = RequestMethod.POST)  
32 - public Map<String, Object> save(@RequestBody Cars t){  
33 - return baseService.save(t);  
34 - } 28 + @Autowired
  29 + private DataImportExportService dataImportExportService;
35 30
36 /** 31 /**
37 * 验证。 32 * 验证。
@@ -44,6 +39,48 @@ public class CarsController extends BaseController&lt;Cars, Integer&gt; { @@ -44,6 +39,48 @@ public class CarsController extends BaseController&lt;Cars, Integer&gt; {
44 return baseService.validateEquale(map); 39 return baseService.validateEquale(map);
45 } 40 }
46 41
  42 + // uploadFile post
  43 +
  44 + // 验证excel sheet
  45 + @RequestMapping(value = "/validate/sheet", method = RequestMethod.GET)
  46 + public Map<String, Object> validateSheet() throws Exception {
  47 + Map<String, Object> rtn = new HashMap<>();
  48 +
  49 + // TODO:
  50 +
  51 + rtn.put("status", ResponseCode.SUCCESS);
  52 + return rtn;
  53 + }
  54 +
  55 + @RequestMapping(value = "/importfile", method = RequestMethod.POST)
  56 + public Map<String, Object> importData(
  57 + @RequestParam Map<String, Object> form)
  58 + throws Exception {
  59 + Map<String, Object> rtn = new HashMap<>();
  60 +
  61 + // TODO:
  62 + String filename = (String) form.get("filename");
  63 +
  64 +
  65 + try {
  66 + // 获取ktr转换文件绝对路径
  67 + File ktrfile = new File(this.getClass().getResource(getDataImportKtrClasspath()).toURI());
  68 + System.out.println(ktrfile.getAbsolutePath());
  69 + // 导入数据
  70 + dataImportExportService.fileDataImport(new File(filename), ktrfile);
  71 +
  72 + rtn.put("status", ResponseCode.SUCCESS);
  73 + rtn.put("msg", "导入成功");
  74 + } catch (Exception exp) {
  75 + exp.printStackTrace();
  76 + rtn.put("status", ResponseCode.ERROR);
  77 + rtn.put("msg", exp.getLocalizedMessage());
  78 + }
  79 +
  80 + return rtn;
  81 + }
  82 +
  83 +
47 @Override 84 @Override
48 protected String getDataImportKtrClasspath() { 85 protected String getDataImportKtrClasspath() {
49 return dataToolsProperties.getCarsDatainputktr(); 86 return dataToolsProperties.getCarsDatainputktr();
src/main/java/com/bsth/controller/realcontrol/RealMapController.java 0 → 100644
  1 +package com.bsth.controller.realcontrol;
  2 +
  3 +import com.bsth.service.realcontrol.RealMapService;
  4 +import org.springframework.beans.factory.annotation.Autowired;
  5 +import org.springframework.web.bind.annotation.RequestMapping;
  6 +import org.springframework.web.bind.annotation.RequestParam;
  7 +import org.springframework.web.bind.annotation.RestController;
  8 +
  9 +import java.util.Map;
  10 +
  11 +/**
  12 + * 线调 地图监控相关
  13 + * Created by panzhao on 2016/11/23.
  14 + */
  15 +@RestController
  16 +@RequestMapping("realMap")
  17 +public class RealMapController {
  18 +
  19 + @Autowired
  20 + RealMapService realMapService;
  21 +
  22 + /**
  23 + * 根据线路获取站点路由及空间数据
  24 + */
  25 + @RequestMapping(value = "/stationSpatialData")
  26 + public Map<String, Object> stationSpatialData(@RequestParam String idx){
  27 + return realMapService.stationSpatialData(idx);
  28 + }
  29 +}
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
1 package com.bsth.controller.realcontrol; 1 package com.bsth.controller.realcontrol;
2 2
3 -import java.io.UnsupportedEncodingException;  
4 -import java.net.URLDecoder;  
5 -import java.util.*;  
6 -  
7 -import org.apache.commons.lang3.StringEscapeUtils;  
8 -import org.drools.core.runtime.help.impl.XStreamJSon.JSonAbortWorkItemConverter;  
9 -import org.joda.time.format.DateTimeFormat;  
10 -import org.joda.time.format.DateTimeFormatter;  
11 -import org.springframework.beans.factory.annotation.Autowired;  
12 -import org.springframework.web.bind.annotation.PathVariable;  
13 -import org.springframework.web.bind.annotation.RequestMapping;  
14 -import org.springframework.web.bind.annotation.RequestMethod;  
15 -import org.springframework.web.bind.annotation.RequestParam;  
16 -import org.springframework.web.bind.annotation.RestController;  
17 -  
18 -import com.alibaba.fastjson.JSON;  
19 import com.alibaba.fastjson.JSONArray; 3 import com.alibaba.fastjson.JSONArray;
20 import com.bsth.controller.BaseController; 4 import com.bsth.controller.BaseController;
21 import com.bsth.controller.realcontrol.dto.ChangePersonCar; 5 import com.bsth.controller.realcontrol.dto.ChangePersonCar;
@@ -23,9 +7,14 @@ import com.bsth.controller.realcontrol.dto.DfsjChange; @@ -23,9 +7,14 @@ import com.bsth.controller.realcontrol.dto.DfsjChange;
23 import com.bsth.data.BasicData; 7 import com.bsth.data.BasicData;
24 import com.bsth.data.schedule.DayOfSchedule; 8 import com.bsth.data.schedule.DayOfSchedule;
25 import com.bsth.entity.realcontrol.ScheduleRealInfo; 9 import com.bsth.entity.realcontrol.ScheduleRealInfo;
26 -import com.bsth.security.util.SecurityUtils;  
27 import com.bsth.service.realcontrol.ScheduleRealInfoService; 10 import com.bsth.service.realcontrol.ScheduleRealInfoService;
28 -import com.google.common.base.Splitter; 11 +import org.apache.commons.lang3.StringEscapeUtils;
  12 +import org.joda.time.format.DateTimeFormat;
  13 +import org.joda.time.format.DateTimeFormatter;
  14 +import org.springframework.beans.factory.annotation.Autowired;
  15 +import org.springframework.web.bind.annotation.*;
  16 +
  17 +import java.util.*;
29 18
30 @RestController 19 @RestController
31 @RequestMapping("/realSchedule") 20 @RequestMapping("/realSchedule")
src/main/java/com/bsth/controller/realcontrol/dto/StationSpatialData.java 0 → 100644
  1 +package com.bsth.controller.realcontrol.dto;
  2 +
  3 +/**
  4 + * Created by panzhao on 2016/11/23.
  5 + */
  6 +public class StationSpatialData {
  7 +
  8 + private String lineCode;
  9 +
  10 + private String stationName;
  11 +
  12 + private String stationCode;
  13 +
  14 + private String stationMark;
  15 +
  16 + private int directions;
  17 +
  18 + private Float distances;
  19 +
  20 + private Float toTime;
  21 +
  22 + private Integer versions;
  23 +
  24 + private Float gLonx;
  25 +
  26 + private Float gLaty;
  27 +
  28 + private Float radius;
  29 +
  30 + private String shapesType;
  31 +
  32 + private String gPolygonGrid;
  33 +
  34 + private Integer stationRouteCode;
  35 +
  36 + public String getLineCode() {
  37 + return lineCode;
  38 + }
  39 +
  40 + public void setLineCode(String lineCode) {
  41 + this.lineCode = lineCode;
  42 + }
  43 +
  44 + public String getStationName() {
  45 + return stationName;
  46 + }
  47 +
  48 + public void setStationName(String stationName) {
  49 + this.stationName = stationName;
  50 + }
  51 +
  52 + public String getStationCode() {
  53 + return stationCode;
  54 + }
  55 +
  56 + public void setStationCode(String stationCode) {
  57 + this.stationCode = stationCode;
  58 + }
  59 +
  60 + public String getStationMark() {
  61 + return stationMark;
  62 + }
  63 +
  64 + public void setStationMark(String stationMark) {
  65 + this.stationMark = stationMark;
  66 + }
  67 +
  68 + public int getDirections() {
  69 + return directions;
  70 + }
  71 +
  72 + public void setDirections(int directions) {
  73 + this.directions = directions;
  74 + }
  75 +
  76 + public Float getDistances() {
  77 + return distances;
  78 + }
  79 +
  80 + public void setDistances(Float distances) {
  81 + this.distances = distances;
  82 + }
  83 +
  84 + public Float getToTime() {
  85 + return toTime;
  86 + }
  87 +
  88 + public void setToTime(Float toTime) {
  89 + this.toTime = toTime;
  90 + }
  91 +
  92 + public Integer getVersions() {
  93 + return versions;
  94 + }
  95 +
  96 + public void setVersions(Integer versions) {
  97 + this.versions = versions;
  98 + }
  99 +
  100 + public Float getgLonx() {
  101 + return gLonx;
  102 + }
  103 +
  104 + public void setgLonx(Float gLonx) {
  105 + this.gLonx = gLonx;
  106 + }
  107 +
  108 + public Float getgLaty() {
  109 + return gLaty;
  110 + }
  111 +
  112 + public void setgLaty(Float gLaty) {
  113 + this.gLaty = gLaty;
  114 + }
  115 +
  116 + public Float getRadius() {
  117 + return radius;
  118 + }
  119 +
  120 + public void setRadius(Float radius) {
  121 + this.radius = radius;
  122 + }
  123 +
  124 + public String getShapesType() {
  125 + return shapesType;
  126 + }
  127 +
  128 + public void setShapesType(String shapesType) {
  129 + this.shapesType = shapesType;
  130 + }
  131 +
  132 + public String getgPolygonGrid() {
  133 + return gPolygonGrid;
  134 + }
  135 +
  136 + public void setgPolygonGrid(String gPolygonGrid) {
  137 + this.gPolygonGrid = gPolygonGrid;
  138 + }
  139 +
  140 + public Integer getStationRouteCode() {
  141 + return stationRouteCode;
  142 + }
  143 +
  144 + public void setStationRouteCode(Integer stationRouteCode) {
  145 + this.stationRouteCode = stationRouteCode;
  146 + }
  147 +}
src/main/java/com/bsth/controller/schedule/TTInfoDetailController.java
1 package com.bsth.controller.schedule; 1 package com.bsth.controller.schedule;
2 2
3 import com.bsth.common.ResponseCode; 3 import com.bsth.common.ResponseCode;
4 -import com.bsth.controller.BaseController; 4 +import com.bsth.controller.BaseController2;
5 import com.bsth.entity.CarPark; 5 import com.bsth.entity.CarPark;
6 import com.bsth.entity.LineInformation; 6 import com.bsth.entity.LineInformation;
7 import com.bsth.entity.StationRoute; 7 import com.bsth.entity.StationRoute;
@@ -38,7 +38,7 @@ import java.util.regex.Pattern; @@ -38,7 +38,7 @@ import java.util.regex.Pattern;
38 */ 38 */
39 @RestController 39 @RestController
40 @RequestMapping("tidc") 40 @RequestMapping("tidc")
41 -public class TTInfoDetailController extends BaseController<TTInfoDetail, Long> { 41 +public class TTInfoDetailController extends BaseController2<TTInfoDetail, Long> {
42 @Autowired 42 @Autowired
43 private TTInfoDetailService ttInfoDetailService; 43 private TTInfoDetailService ttInfoDetailService;
44 @Autowired 44 @Autowired
@@ -56,53 +56,13 @@ public class TTInfoDetailController extends BaseController&lt;TTInfoDetail, Long&gt; { @@ -56,53 +56,13 @@ public class TTInfoDetailController extends BaseController&lt;TTInfoDetail, Long&gt; {
56 @Autowired 56 @Autowired
57 private DataToolsProperties dataToolsProperties; 57 private DataToolsProperties dataToolsProperties;
58 58
59 -  
60 - public static class ExcelFileOutput {  
61 - private String fileName;  
62 - private List<Map<String, Object>> sheetnames = new ArrayList<>();  
63 -  
64 - public String getFileName() {  
65 - return fileName;  
66 - }  
67 -  
68 - public void setFileName(String fileName) {  
69 - this.fileName = fileName;  
70 - }  
71 -  
72 - public List<Map<String, Object>> getSheetnames() {  
73 - return sheetnames;  
74 - }  
75 -  
76 - public void setSheetnames(List<Map<String, Object>> sheetnames) {  
77 - this.sheetnames = sheetnames;  
78 - }  
79 - }  
80 -  
81 /** 59 /**
82 * 1、上传Excel文件,返回文件全路径名,工作区名称列表。 60 * 1、上传Excel文件,返回文件全路径名,工作区名称列表。
83 * @param file 61 * @param file
84 * @return 62 * @return
85 * @throws Exception 63 * @throws Exception
86 */ 64 */
87 - @RequestMapping(value = "/uploadFile", method = RequestMethod.POST)  
88 - public ExcelFileOutput fileUpload(MultipartFile file) throws Exception {  
89 - // 返回对象  
90 - ExcelFileOutput rs = new ExcelFileOutput();  
91 -  
92 - // 上传文件  
93 - File file1 = dataImportExportService.uploadFile(file);  
94 - // 获取文件的sheet  
95 - Workbook book = Workbook.getWorkbook(file1);  
96 - for (Sheet sheet : book.getSheets()) {  
97 - String sheetname = sheet.getName();  
98 - Map<String, Object> s = new HashMap<>();  
99 - s.put("name", sheetname);  
100 - rs.getSheetnames().add(s);  
101 - }  
102 65
103 - rs.setFileName(file1.getAbsolutePath());  
104 - return rs;  
105 - }  
106 66
107 /** 67 /**
108 * 2、验证sheet(以后放到规则引擎里去做)。 68 * 2、验证sheet(以后放到规则引擎里去做)。
@@ -441,21 +401,6 @@ public class TTInfoDetailController extends BaseController&lt;TTInfoDetail, Long&gt; { @@ -441,21 +401,6 @@ public class TTInfoDetailController extends BaseController&lt;TTInfoDetail, Long&gt; {
441 return ttInfoDetailService.getEditInfo(xlid, ttid); 401 return ttInfoDetailService.getEditInfo(xlid, ttid);
442 } 402 }
443 403
444 - /**  
445 - * 覆写方法,因为form提交的方式参数不全,改用 json形式提交 @RequestBody  
446 - * @Title: save  
447 - * @Description: TODO(持久化对象)  
448 - * @param @param t  
449 - * @param @return 设定文件  
450 - * @return Map<String,Object> {status: 1(成功),-1(失败)}  
451 - * @throws  
452 - */  
453 - @RequestMapping(method = RequestMethod.POST)  
454 - public Map<String, Object> save(@RequestBody TTInfoDetail t){  
455 -  
456 - return baseService.save(t);  
457 - }  
458 -  
459 @Override 404 @Override
460 public TTInfoDetail findById(@PathVariable("id") Long aLong) { 405 public TTInfoDetail findById(@PathVariable("id") Long aLong) {
461 return ttInfoDetailRepository.findOneExtend(aLong); 406 return ttInfoDetailRepository.findOneExtend(aLong);
src/main/java/com/bsth/controller/sys/CompanyAuthorityController.java
1 -package com.bsth.controller.sys;  
2 -  
3 -import com.alibaba.fastjson.JSONArray;  
4 -import com.bsth.controller.BaseController;  
5 -import com.bsth.entity.sys.CompanyAuthority;  
6 -import com.bsth.service.sys.CompanyAuthorityService;  
7 -import org.apache.commons.lang3.StringEscapeUtils;  
8 -import org.springframework.beans.factory.annotation.Autowired;  
9 -import org.springframework.web.bind.annotation.RequestMapping;  
10 -import org.springframework.web.bind.annotation.RequestParam;  
11 -import org.springframework.web.bind.annotation.RestController;  
12 -  
13 -import java.util.List;  
14 -import java.util.Map;  
15 -  
16 -/**  
17 - * Created by panzhao on 2016/11/22.  
18 - */  
19 -@RestController  
20 -@RequestMapping("companyAuthority")  
21 -public class CompanyAuthorityController extends BaseController<CompanyAuthority, Integer>{  
22 -  
23 - @Autowired  
24 - CompanyAuthorityService companyAuthorityService;  
25 -  
26 - @RequestMapping(value = "save")  
27 - public Map<String, Object> save(@RequestParam Integer roleId, @RequestParam String authJsonStr){  
28 - authJsonStr = StringEscapeUtils.unescapeHtml4(authJsonStr);  
29 - System.out.println(authJsonStr);  
30 - List<CompanyAuthority> list = JSONArray.parseArray(authJsonStr, CompanyAuthority.class);  
31 - return companyAuthorityService.save(roleId, list);  
32 - }  
33 -} 1 +package com.bsth.controller.sys;
  2 +
  3 +import com.alibaba.fastjson.JSONArray;
  4 +import com.bsth.controller.BaseController;
  5 +import com.bsth.entity.sys.CompanyAuthority;
  6 +import com.bsth.service.sys.CompanyAuthorityService;
  7 +import org.apache.commons.lang3.StringEscapeUtils;
  8 +import org.springframework.beans.factory.annotation.Autowired;
  9 +import org.springframework.web.bind.annotation.RequestMapping;
  10 +import org.springframework.web.bind.annotation.RequestParam;
  11 +import org.springframework.web.bind.annotation.RestController;
  12 +
  13 +import java.util.List;
  14 +import java.util.Map;
  15 +
  16 +/**
  17 + * Created by panzhao on 2016/11/22.
  18 + */
  19 +@RestController
  20 +@RequestMapping("companyAuthority")
  21 +public class CompanyAuthorityController extends BaseController<CompanyAuthority, Integer>{
  22 +
  23 + @Autowired
  24 + CompanyAuthorityService companyAuthorityService;
  25 +
  26 + @RequestMapping(value = "save")
  27 + public Map<String, Object> save(@RequestParam Integer roleId, @RequestParam String authJsonStr){
  28 + authJsonStr = StringEscapeUtils.unescapeHtml4(authJsonStr);
  29 + System.out.println(authJsonStr);
  30 + List<CompanyAuthority> list = JSONArray.parseArray(authJsonStr, CompanyAuthority.class);
  31 + return companyAuthorityService.save(roleId, list);
  32 + }
  33 +}
src/main/java/com/bsth/controller/sys/dto/CompanyData.java
1 -package com.bsth.controller.sys.dto;  
2 -  
3 -import java.util.List;  
4 -  
5 -/**  
6 - * Created by panzhao on 2016/11/22.  
7 - */  
8 -public class CompanyData {  
9 -  
10 - private String companyCode;  
11 -  
12 - private String companyName;  
13 -  
14 - private List<ChildrenCompany> children;  
15 -  
16 - public String getCompanyCode() {  
17 - return companyCode;  
18 - }  
19 -  
20 - public void setCompanyCode(String companyCode) {  
21 - this.companyCode = companyCode;  
22 - }  
23 -  
24 - public String getCompanyName() {  
25 - return companyName;  
26 - }  
27 -  
28 - public void setCompanyName(String companyName) {  
29 - this.companyName = companyName;  
30 - }  
31 -  
32 - public List<ChildrenCompany> getChildren() {  
33 - return children;  
34 - }  
35 -  
36 - public void setChildren(List<ChildrenCompany> children) {  
37 - this.children = children;  
38 - }  
39 -  
40 - public static class ChildrenCompany {  
41 - private String code;  
42 -  
43 - private String name;  
44 -  
45 - public ChildrenCompany(String code, String name){  
46 - this.code = code;  
47 - this.name = name;  
48 - }  
49 -  
50 - public String getName() {  
51 - return name;  
52 - }  
53 -  
54 - public void setName(String name) {  
55 - this.name = name;  
56 - }  
57 -  
58 - public String getCode() {  
59 - return code;  
60 - }  
61 -  
62 - public void setCode(String code) {  
63 - this.code = code;  
64 - }  
65 - }  
66 -} 1 +package com.bsth.controller.sys.dto;
  2 +
  3 +import java.util.List;
  4 +
  5 +/**
  6 + * Created by panzhao on 2016/11/22.
  7 + */
  8 +public class CompanyData {
  9 +
  10 + private String companyCode;
  11 +
  12 + private String companyName;
  13 +
  14 + private List<ChildrenCompany> children;
  15 +
  16 + public String getCompanyCode() {
  17 + return companyCode;
  18 + }
  19 +
  20 + public void setCompanyCode(String companyCode) {
  21 + this.companyCode = companyCode;
  22 + }
  23 +
  24 + public String getCompanyName() {
  25 + return companyName;
  26 + }
  27 +
  28 + public void setCompanyName(String companyName) {
  29 + this.companyName = companyName;
  30 + }
  31 +
  32 + public List<ChildrenCompany> getChildren() {
  33 + return children;
  34 + }
  35 +
  36 + public void setChildren(List<ChildrenCompany> children) {
  37 + this.children = children;
  38 + }
  39 +
  40 + public static class ChildrenCompany {
  41 + private String code;
  42 +
  43 + private String name;
  44 +
  45 + public ChildrenCompany(String code, String name){
  46 + this.code = code;
  47 + this.name = name;
  48 + }
  49 +
  50 + public String getName() {
  51 + return name;
  52 + }
  53 +
  54 + public void setName(String name) {
  55 + this.name = name;
  56 + }
  57 +
  58 + public String getCode() {
  59 + return code;
  60 + }
  61 +
  62 + public void setCode(String code) {
  63 + this.code = code;
  64 + }
  65 + }
  66 +}
src/main/java/com/bsth/entity/realcontrol/ScheduleRealInfo.java
@@ -2,13 +2,11 @@ package com.bsth.entity.realcontrol; @@ -2,13 +2,11 @@ package com.bsth.entity.realcontrol;
2 2
3 import com.bsth.entity.sys.SysUser; 3 import com.bsth.entity.sys.SysUser;
4 import com.fasterxml.jackson.annotation.JsonIgnore; 4 import com.fasterxml.jackson.annotation.JsonIgnore;
5 -  
6 -import javax.persistence.*;  
7 -  
8 import org.apache.commons.lang3.StringUtils; 5 import org.apache.commons.lang3.StringUtils;
9 import org.joda.time.format.DateTimeFormat; 6 import org.joda.time.format.DateTimeFormat;
10 import org.joda.time.format.DateTimeFormatter; 7 import org.joda.time.format.DateTimeFormatter;
11 8
  9 +import javax.persistence.*;
12 import java.util.Date; 10 import java.util.Date;
13 import java.util.HashSet; 11 import java.util.HashSet;
14 import java.util.Set; 12 import java.util.Set;
@@ -177,8 +175,116 @@ public class ScheduleRealInfo { @@ -177,8 +175,116 @@ public class ScheduleRealInfo {
177 /** 子任务 */ 175 /** 子任务 */
178 @OneToMany(fetch = FetchType.LAZY/*, cascade = CascadeType.ALL*/) 176 @OneToMany(fetch = FetchType.LAZY/*, cascade = CascadeType.ALL*/)
179 private Set<ChildTaskPlan> cTasks = new HashSet<>(); 177 private Set<ChildTaskPlan> cTasks = new HashSet<>();
180 -  
181 - /** ---------------- 178 +
  179 + /** 关联的公司名称 */
  180 + private String gsName;
  181 + /** 关联的公司编码 */
  182 + private String gsBm;
  183 + /** 关联的分公司名称 */
  184 + private String fgsName;
  185 + /** 关联的分公司编码 */
  186 + private String fgsBm;
  187 + /** 出场顺序号 */
  188 + private Integer ccno;
  189 +
  190 + //待发调试(是否自动调整)
  191 + private boolean dfAuto;
  192 + //是否有GPS信号
  193 + private boolean online;
  194 +
  195 + public boolean isDfAuto() {
  196 + return dfAuto;
  197 + }
  198 +
  199 + public void setDfAuto(boolean dfAuto) {
  200 + this.dfAuto = dfAuto;
  201 + }
  202 +
  203 + public boolean isOnline() {
  204 + return online;
  205 + }
  206 +
  207 + public void setOnline(boolean online) {
  208 + this.online = online;
  209 + }
  210 +
  211 + public String getQdzArrDatejh() {
  212 + return qdzArrDatejh;
  213 + }
  214 +
  215 + public void setQdzArrDatejh(String qdzArrDatejh) {
  216 + this.qdzArrDatejh = qdzArrDatejh;
  217 + }
  218 +
  219 + public String getQdzArrDatesj() {
  220 + return qdzArrDatesj;
  221 + }
  222 +
  223 + public void setQdzArrDatesj(String qdzArrDatesj) {
  224 + this.qdzArrDatesj = qdzArrDatesj;
  225 + }
  226 +
  227 + public void setcTasks(Set<ChildTaskPlan> cTasks) {
  228 + this.cTasks = cTasks;
  229 + }
  230 +
  231 + public String getGsName() {
  232 + return gsName;
  233 + }
  234 +
  235 + public void setGsName(String gsName) {
  236 + this.gsName = gsName;
  237 + }
  238 +
  239 + public String getGsBm() {
  240 + return gsBm;
  241 + }
  242 +
  243 + public void setGsBm(String gsBm) {
  244 + this.gsBm = gsBm;
  245 + }
  246 +
  247 + public String getFgsName() {
  248 + return fgsName;
  249 + }
  250 +
  251 + public void setFgsName(String fgsName) {
  252 + this.fgsName = fgsName;
  253 + }
  254 +
  255 + public String getFgsBm() {
  256 + return fgsBm;
  257 + }
  258 +
  259 + public void setFgsBm(String fgsBm) {
  260 + this.fgsBm = fgsBm;
  261 + }
  262 +
  263 + public Integer getCcno() {
  264 + return ccno;
  265 + }
  266 +
  267 + public void setCcno(Integer ccno) {
  268 + this.ccno = ccno;
  269 + }
  270 +
  271 + public static DateTimeFormatter getFmtHHmm() {
  272 + return fmtHHmm;
  273 + }
  274 +
  275 + public static void setFmtHHmm(DateTimeFormatter fmtHHmm) {
  276 + ScheduleRealInfo.fmtHHmm = fmtHHmm;
  277 + }
  278 +
  279 + public static DateTimeFormatter getFmtyyyyMMddHHmm() {
  280 + return fmtyyyyMMddHHmm;
  281 + }
  282 +
  283 + public static void setFmtyyyyMMddHHmm(DateTimeFormatter fmtyyyyMMddHHmm) {
  284 + ScheduleRealInfo.fmtyyyyMMddHHmm = fmtyyyyMMddHHmm;
  285 + }
  286 +
  287 + /** ----------------
182 @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) 288 @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
183 private RealTimeModel sjfcModel; 289 private RealTimeModel sjfcModel;
184 @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) 290 @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
src/main/java/com/bsth/entity/sys/CompanyAuthority.java
1 -package com.bsth.entity.sys;  
2 -  
3 -import javax.persistence.*;  
4 -  
5 -/**  
6 - * Created by panzhao on 2016/11/22.  
7 - */  
8 -@Entity  
9 -@Table(name = "bsth_c_sys_company_auth")  
10 -public class CompanyAuthority {  
11 -  
12 - @Id  
13 - @GeneratedValue(strategy = GenerationType.IDENTITY)  
14 - private Integer id;  
15 -  
16 - /** 公司代码 */  
17 - private String companyCode;  
18 -  
19 - /** 公司名称 */  
20 - private String companyName;  
21 -  
22 - /** 分公司代码 */  
23 - private String subCompanyCode;  
24 -  
25 - /** 分公司代码 */  
26 - private String subCompanyName;  
27 -  
28 - private Integer roleId;  
29 -  
30 - public String getSubCompanyName() {  
31 - return subCompanyName;  
32 - }  
33 -  
34 - public void setSubCompanyName(String subCompanyName) {  
35 - this.subCompanyName = subCompanyName;  
36 - }  
37 -  
38 - public String getSubCompanyCode() {  
39 - return subCompanyCode;  
40 - }  
41 -  
42 - public void setSubCompanyCode(String subCompanyCode) {  
43 - this.subCompanyCode = subCompanyCode;  
44 - }  
45 -  
46 - public String getCompanyName() {  
47 - return companyName;  
48 - }  
49 -  
50 - public void setCompanyName(String companyName) {  
51 - this.companyName = companyName;  
52 - }  
53 -  
54 - public String getCompanyCode() {  
55 - return companyCode;  
56 - }  
57 -  
58 - public void setCompanyCode(String companyCode) {  
59 - this.companyCode = companyCode;  
60 - }  
61 -  
62 - public Integer getId() {  
63 - return id;  
64 - }  
65 -  
66 - public void setId(Integer id) {  
67 - this.id = id;  
68 - }  
69 -  
70 - public Integer getRoleId() {  
71 - return roleId;  
72 - }  
73 -  
74 - public void setRoleId(Integer roleId) {  
75 - this.roleId = roleId;  
76 - }  
77 -} 1 +package com.bsth.entity.sys;
  2 +
  3 +import javax.persistence.*;
  4 +
  5 +/**
  6 + * Created by panzhao on 2016/11/22.
  7 + */
  8 +@Entity
  9 +@Table(name = "bsth_c_sys_company_auth")
  10 +public class CompanyAuthority {
  11 +
  12 + @Id
  13 + @GeneratedValue(strategy = GenerationType.IDENTITY)
  14 + private Integer id;
  15 +
  16 + /** 公司代码 */
  17 + private String companyCode;
  18 +
  19 + /** 公司名称 */
  20 + private String companyName;
  21 +
  22 + /** 分公司代码 */
  23 + private String subCompanyCode;
  24 +
  25 + /** 分公司代码 */
  26 + private String subCompanyName;
  27 +
  28 + private Integer roleId;
  29 +
  30 + public String getSubCompanyName() {
  31 + return subCompanyName;
  32 + }
  33 +
  34 + public void setSubCompanyName(String subCompanyName) {
  35 + this.subCompanyName = subCompanyName;
  36 + }
  37 +
  38 + public String getSubCompanyCode() {
  39 + return subCompanyCode;
  40 + }
  41 +
  42 + public void setSubCompanyCode(String subCompanyCode) {
  43 + this.subCompanyCode = subCompanyCode;
  44 + }
  45 +
  46 + public String getCompanyName() {
  47 + return companyName;
  48 + }
  49 +
  50 + public void setCompanyName(String companyName) {
  51 + this.companyName = companyName;
  52 + }
  53 +
  54 + public String getCompanyCode() {
  55 + return companyCode;
  56 + }
  57 +
  58 + public void setCompanyCode(String companyCode) {
  59 + this.companyCode = companyCode;
  60 + }
  61 +
  62 + public Integer getId() {
  63 + return id;
  64 + }
  65 +
  66 + public void setId(Integer id) {
  67 + this.id = id;
  68 + }
  69 +
  70 + public Integer getRoleId() {
  71 + return roleId;
  72 + }
  73 +
  74 + public void setRoleId(Integer roleId) {
  75 + this.roleId = roleId;
  76 + }
  77 +}
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
@@ -37,14 +37,14 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -37,14 +37,14 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
37 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,d.sender,d.timestamp," 37 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,d.sender,d.timestamp,"
38 + " d.txt_content FROM bsth_c_s_sp_info_real r RIGHT JOIN bsth_v_directive_60 " 38 + " d.txt_content FROM bsth_c_s_sp_info_real r RIGHT JOIN bsth_v_directive_60 "
39 + "d ON r.id = d.sch WHERE d.is_dispatch = 1 AND r.xl_bm like %?1% AND " 39 + "d ON r.id = d.sch WHERE d.is_dispatch = 1 AND r.xl_bm like %?1% AND "
40 - + "r.schedule_date like %?2% and r.cl_zbh like %?3% order by d.timestamp",nativeQuery=true) 40 + + " DATE_FORMAT(r.schedule_date,'%Y-%m-%d') = ?2 and r.cl_zbh like %?3% order by d.timestamp",nativeQuery=true)
41 List<Object[]> historyMessage(String line,String date,String code); 41 List<Object[]> historyMessage(String line,String date,String code);
42 42
43 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs " 43 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs "
44 + " FROM bsth_c_s_sp_info_real r RIGHT JOIN bsth_v_directive_60 d " 44 + " FROM bsth_c_s_sp_info_real r RIGHT JOIN bsth_v_directive_60 d "
45 + " ON r.id = d.sch WHERE d.is_dispatch = 1 AND r.xl_bm like %?1% AND " 45 + " ON r.id = d.sch WHERE d.is_dispatch = 1 AND r.xl_bm like %?1% AND "
46 - + " r.schedule_date like %?2% and r.cl_zbh like %?3% group by "  
47 - + " lp_name,xl_name,cl_zbh order by d.timestamp",nativeQuery=true) 46 + + " DATE_FORMAT(r.schedule_date,'%Y-%m-%d') = ?2 and r.cl_zbh like %?3% group by "
  47 + + " lp_name,xl_name,cl_zbh",nativeQuery=true)
48 List<Object[]> historyMessageCount(String line,String date,String code); 48 List<Object[]> historyMessageCount(String line,String date,String code);
49 49
50 @Query(value = "select max(id) from ScheduleRealInfo") 50 @Query(value = "select max(id) from ScheduleRealInfo")
src/main/java/com/bsth/repository/sys/CompanyAuthorityRepository.java
1 -package com.bsth.repository.sys;  
2 -  
3 -import com.bsth.entity.sys.CompanyAuthority;  
4 -import com.bsth.repository.BaseRepository;  
5 -import org.springframework.data.jpa.repository.Modifying;  
6 -import org.springframework.data.jpa.repository.Query;  
7 -import org.springframework.stereotype.Repository;  
8 -  
9 -import java.util.List;  
10 -  
11 -/**  
12 - * Created by panzhao on 2016/11/22.  
13 - */  
14 -@Repository  
15 -public interface CompanyAuthorityRepository extends BaseRepository<CompanyAuthority, Integer>{  
16 -  
17 - @Modifying  
18 - @Query(value="DELETE FROM CompanyAuthority WHERE roleId = ?1")  
19 - void deleteByRoleId(Integer roleId);  
20 -  
21 - @Query(value = "select ca from CompanyAuthority ca where ca.roleId in ?1")  
22 - List<CompanyAuthority> findByRoles(List<Integer> idx);  
23 -} 1 +package com.bsth.repository.sys;
  2 +
  3 +import com.bsth.entity.sys.CompanyAuthority;
  4 +import com.bsth.repository.BaseRepository;
  5 +import org.springframework.data.jpa.repository.Modifying;
  6 +import org.springframework.data.jpa.repository.Query;
  7 +import org.springframework.stereotype.Repository;
  8 +
  9 +import java.util.List;
  10 +
  11 +/**
  12 + * Created by panzhao on 2016/11/22.
  13 + */
  14 +@Repository
  15 +public interface CompanyAuthorityRepository extends BaseRepository<CompanyAuthority, Integer>{
  16 +
  17 + @Modifying
  18 + @Query(value="DELETE FROM CompanyAuthority WHERE roleId = ?1")
  19 + void deleteByRoleId(Integer roleId);
  20 +
  21 + @Query(value = "select ca from CompanyAuthority ca where ca.roleId in ?1")
  22 + List<CompanyAuthority> findByRoles(List<Integer> idx);
  23 +}
src/main/java/com/bsth/service/realcontrol/RealMapService.java 0 → 100644
  1 +package com.bsth.service.realcontrol;
  2 +
  3 +import java.util.Map;
  4 +
  5 +/**
  6 + * Created by panzhao on 2016/11/23.
  7 + */
  8 +public interface RealMapService {
  9 + Map<String, Object> stationSpatialData(String idx);
  10 +}
src/main/java/com/bsth/service/realcontrol/impl/RealMapServiceImpl.java 0 → 100644
  1 +package com.bsth.service.realcontrol.impl;
  2 +
  3 +import com.bsth.common.ResponseCode;
  4 +import com.bsth.controller.realcontrol.dto.StationSpatialData;
  5 +import com.bsth.service.realcontrol.RealMapService;
  6 +import com.google.common.base.Splitter;
  7 +import org.slf4j.Logger;
  8 +import org.slf4j.LoggerFactory;
  9 +import org.springframework.beans.factory.annotation.Autowired;
  10 +import org.springframework.jdbc.core.BeanPropertyRowMapper;
  11 +import org.springframework.jdbc.core.JdbcTemplate;
  12 +import org.springframework.stereotype.Service;
  13 +
  14 +import java.util.HashMap;
  15 +import java.util.List;
  16 +import java.util.Map;
  17 +
  18 +/**
  19 + * Created by panzhao on 2016/11/23.
  20 + */
  21 +@Service
  22 +public class RealMapServiceImpl implements RealMapService {
  23 +
  24 + @Autowired
  25 + JdbcTemplate jdbcTemplate;
  26 +
  27 + Logger logger = LoggerFactory.getLogger(this.getClass());
  28 +
  29 + @Override
  30 + public Map<String, Object> stationSpatialData(String idx) {
  31 + Map<String, Object> rs = new HashMap();
  32 +
  33 + try {
  34 + List<String> idArray = Splitter.on(",").splitToList(idx);
  35 + //拼接in语句
  36 + String inStr = "";
  37 + for (String code : idArray) {
  38 + inStr += (",'" + code+"'");
  39 + }
  40 + inStr = " (" + inStr.substring(1) + ")";
  41 +
  42 + String sql = "select R.LINE_CODE,R.STATION_NAME,R.STATION_CODE,R.STATION_MARK,R.DIRECTIONS,R.DISTANCES,R.TO_TIME, R.VERSIONS,S.G_LONX,S.G_LATY,S.RADIUS,S.SHAPES_TYPE,ST_AsText(S.G_POLYGON_GRID) as G_POLYGON_GRID, R.STATION_ROUTE_CODE from bsth_c_stationroute r inner join bsth_c_station s on r.station=s.id where r.line_code in "+inStr+" and r.destroy=0";
  43 +
  44 + List<StationSpatialData> list = jdbcTemplate.query(sql,new BeanPropertyRowMapper(StationSpatialData.class));
  45 + rs.put("status", ResponseCode.SUCCESS);
  46 + rs.put("list", list);
  47 + } catch (Exception e) {
  48 + logger.error("", e);
  49 + rs.put("status", ResponseCode.ERROR);
  50 + rs.put("msg", "查询站点空间数据出现异常!");
  51 + }
  52 +
  53 + return rs;
  54 + }
  55 +}
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
@@ -1281,6 +1281,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1281,6 +1281,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1281 if(scheduleRealInfo.isSflj()){ 1281 if(scheduleRealInfo.isSflj()){
1282 ljgl += tempJhlc; 1282 ljgl += tempJhlc;
1283 } 1283 }
  1284 + }else{
  1285 + ssgl += tempJhlc;
  1286 + ssgl_other += tempJhlc;
1284 } 1287 }
1285 }else{ 1288 }else{
1286 Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); 1289 Iterator<ChildTaskPlan> it = childTaskPlans.iterator();
src/main/java/com/bsth/service/schedule/utils/DataImportExportService.java
@@ -24,6 +24,7 @@ public interface DataImportExportService { @@ -24,6 +24,7 @@ public interface DataImportExportService {
24 * @throws Exception 24 * @throws Exception
25 */ 25 */
26 void fileDataImport(MultipartFile datafile, File ktrFile) throws Exception; 26 void fileDataImport(MultipartFile datafile, File ktrFile) throws Exception;
  27 + void fileDataImport(File datafile, File ktrFile) throws Exception;
27 28
28 /** 29 /**
29 * 数据导出。 30 * 数据导出。
src/main/java/com/bsth/service/schedule/utils/DataImportExportServiceImpl.java
@@ -111,6 +111,31 @@ public class DataImportExportServiceImpl implements DataImportExportService, Ini @@ -111,6 +111,31 @@ public class DataImportExportServiceImpl implements DataImportExportService, Ini
111 } 111 }
112 112
113 @Override 113 @Override
  114 + public void fileDataImport(File datafile, File ktrFile) throws Exception {
  115 +// // 1、上传数据文件
  116 +// File uploadFile = datafile;
  117 +
  118 + // 2、使用kettle运行封装数据导入逻辑的ktr转换文件
  119 + // 2.1、初始化kettle(组件初始化已经做了)
  120 + // 2.2、创建转换元数据,转换
  121 + TransMeta transMeta = new TransMeta(ktrFile.getAbsolutePath());
  122 + Trans trans = new Trans(transMeta);
  123 + // 2.3、设定命名参数,用于指定数据文件,注意每个ktr必须都有以下指定的命名参数
  124 + trans.setParameterValue("filepath", datafile.getAbsolutePath()); // 指定导入数据文件的位置
  125 + trans.setParameterValue("erroroutputdir", dataToolsProperties.getTransErrordir()); // ktr转换错误输出目录
  126 + // TODO:可以考虑设定日志输出
  127 + // 2.4、执行转换
  128 + trans.execute(null);
  129 + // 2.5、等待转换结束
  130 + trans.waitUntilFinished();
  131 +
  132 + // 3、判定ktr错误数,注意这种错误代表部分数据错误,不会终止转换执行,一般设计ktr的时候,会有错误输出文件,TODO:以后考虑使用日志实时输出
  133 + if (trans.getErrors() > 0) {
  134 + throw new Exception("转换数据部分错误,请查看相关错误输出文件!");
  135 + }
  136 + }
  137 +
  138 + @Override
114 public File fileDataOutput(String fileName, File ktrFile) throws Exception { 139 public File fileDataOutput(String fileName, File ktrFile) throws Exception {
115 return fileDataOutput(fileName, ktrFile, null); 140 return fileDataOutput(fileName, ktrFile, null);
116 } 141 }
src/main/java/com/bsth/service/sys/CompanyAuthorityService.java
1 -package com.bsth.service.sys;  
2 -  
3 -import com.bsth.entity.sys.CompanyAuthority;  
4 -import com.bsth.entity.sys.SysUser;  
5 -import com.bsth.service.BaseService;  
6 -  
7 -import java.util.List;  
8 -import java.util.Map;  
9 -  
10 -/**  
11 - * Created by panzhao on 2016/11/22.  
12 - */  
13 -public interface CompanyAuthorityService extends BaseService<CompanyAuthority, Integer> {  
14 - Map<String,Object> save(Integer roleId, List<CompanyAuthority> list);  
15 -  
16 - List<CompanyAuthority> findByUser(SysUser user);  
17 -} 1 +package com.bsth.service.sys;
  2 +
  3 +import com.bsth.entity.sys.CompanyAuthority;
  4 +import com.bsth.entity.sys.SysUser;
  5 +import com.bsth.service.BaseService;
  6 +
  7 +import java.util.List;
  8 +import java.util.Map;
  9 +
  10 +/**
  11 + * Created by panzhao on 2016/11/22.
  12 + */
  13 +public interface CompanyAuthorityService extends BaseService<CompanyAuthority, Integer> {
  14 + Map<String,Object> save(Integer roleId, List<CompanyAuthority> list);
  15 +
  16 + List<CompanyAuthority> findByUser(SysUser user);
  17 +}
src/main/java/com/bsth/service/sys/impl/CompanyAuthorityServiceImpl.java
1 -package com.bsth.service.sys.impl;  
2 -  
3 -import com.bsth.common.ResponseCode;  
4 -import com.bsth.entity.sys.CompanyAuthority;  
5 -import com.bsth.entity.sys.Role;  
6 -import com.bsth.entity.sys.SysUser;  
7 -import com.bsth.repository.sys.CompanyAuthorityRepository;  
8 -import com.bsth.service.impl.BaseServiceImpl;  
9 -import com.bsth.service.sys.CompanyAuthorityService;  
10 -import org.slf4j.Logger;  
11 -import org.slf4j.LoggerFactory;  
12 -import org.springframework.beans.factory.annotation.Autowired;  
13 -import org.springframework.stereotype.Service;  
14 -import org.springframework.transaction.annotation.Transactional;  
15 -  
16 -import java.util.*;  
17 -  
18 -/**  
19 - * Created by panzhao on 2016/11/22.  
20 - */  
21 -@Service  
22 -public class CompanyAuthorityServiceImpl extends BaseServiceImpl<CompanyAuthority, Integer> implements CompanyAuthorityService {  
23 -  
24 - @Autowired  
25 - CompanyAuthorityRepository companyAuthorityRepository;  
26 -  
27 - Logger logger = LoggerFactory.getLogger(this.getClass());  
28 -  
29 - @Transactional  
30 - @Override  
31 - public Map<String, Object> save(Integer roleId, List<CompanyAuthority> list) {  
32 - Map<String, Object> rs = new HashMap();  
33 -  
34 - try {  
35 - for(CompanyAuthority cauth : list){  
36 - cauth.setRoleId(roleId);  
37 - }  
38 -  
39 - //删除原数据  
40 - companyAuthorityRepository.deleteByRoleId(roleId);  
41 -  
42 - //重新写入数据  
43 - companyAuthorityRepository.save(list);  
44 -  
45 - rs.put("status", ResponseCode.SUCCESS);  
46 - } catch (Exception e) {  
47 - logger.error("", e);  
48 - rs.put("status", ResponseCode.ERROR);  
49 - }  
50 -  
51 - return rs;  
52 - }  
53 -  
54 - @Override  
55 - public List<CompanyAuthority> findByUser(SysUser user) {  
56 - Set<Role> roles = user.getRoles();  
57 - if(roles == null || roles.size() == 0)  
58 - return null;  
59 -  
60 - List<Integer> idx = new ArrayList<>();  
61 - for(Role r : roles)  
62 - idx.add(r.getId());  
63 -  
64 - List<CompanyAuthority> cAuths = companyAuthorityRepository.findByRoles(idx);  
65 - return cAuths;  
66 - }  
67 -} 1 +package com.bsth.service.sys.impl;
  2 +
  3 +import com.bsth.common.ResponseCode;
  4 +import com.bsth.entity.sys.CompanyAuthority;
  5 +import com.bsth.entity.sys.Role;
  6 +import com.bsth.entity.sys.SysUser;
  7 +import com.bsth.repository.sys.CompanyAuthorityRepository;
  8 +import com.bsth.service.impl.BaseServiceImpl;
  9 +import com.bsth.service.sys.CompanyAuthorityService;
  10 +import org.slf4j.Logger;
  11 +import org.slf4j.LoggerFactory;
  12 +import org.springframework.beans.factory.annotation.Autowired;
  13 +import org.springframework.stereotype.Service;
  14 +import org.springframework.transaction.annotation.Transactional;
  15 +
  16 +import java.util.*;
  17 +
  18 +/**
  19 + * Created by panzhao on 2016/11/22.
  20 + */
  21 +@Service
  22 +public class CompanyAuthorityServiceImpl extends BaseServiceImpl<CompanyAuthority, Integer> implements CompanyAuthorityService {
  23 +
  24 + @Autowired
  25 + CompanyAuthorityRepository companyAuthorityRepository;
  26 +
  27 + Logger logger = LoggerFactory.getLogger(this.getClass());
  28 +
  29 + @Transactional
  30 + @Override
  31 + public Map<String, Object> save(Integer roleId, List<CompanyAuthority> list) {
  32 + Map<String, Object> rs = new HashMap();
  33 +
  34 + try {
  35 + for(CompanyAuthority cauth : list){
  36 + cauth.setRoleId(roleId);
  37 + }
  38 +
  39 + //删除原数据
  40 + companyAuthorityRepository.deleteByRoleId(roleId);
  41 +
  42 + //重新写入数据
  43 + companyAuthorityRepository.save(list);
  44 +
  45 + rs.put("status", ResponseCode.SUCCESS);
  46 + } catch (Exception e) {
  47 + logger.error("", e);
  48 + rs.put("status", ResponseCode.ERROR);
  49 + }
  50 +
  51 + return rs;
  52 + }
  53 +
  54 + @Override
  55 + public List<CompanyAuthority> findByUser(SysUser user) {
  56 + Set<Role> roles = user.getRoles();
  57 + if(roles == null || roles.size() == 0)
  58 + return null;
  59 +
  60 + List<Integer> idx = new ArrayList<>();
  61 + for(Role r : roles)
  62 + idx.add(r.getId());
  63 +
  64 + List<CompanyAuthority> cAuths = companyAuthorityRepository.findByRoles(idx);
  65 + return cAuths;
  66 + }
  67 +}
src/main/resources/application-dev.properties
@@ -8,7 +8,7 @@ spring.jpa.hibernate.naming_strategy= org.hibernate.cfg.ImprovedNamingStrategy @@ -8,7 +8,7 @@ spring.jpa.hibernate.naming_strategy= org.hibernate.cfg.ImprovedNamingStrategy
8 spring.jpa.database= MYSQL 8 spring.jpa.database= MYSQL
9 spring.jpa.show-sql= false 9 spring.jpa.show-sql= false
10 spring.datasource.driver-class-name= com.mysql.jdbc.Driver 10 spring.datasource.driver-class-name= com.mysql.jdbc.Driver
11 -spring.datasource.url= jdbc:mysql://192.168.168.201:3306/mh_control?useUnicode=true&characterEncoding=utf-8&useSSL=false 11 +spring.datasource.url= jdbc:mysql://192.168.168.201/mh_control?useUnicode=true&characterEncoding=utf-8&useSSL=false
12 spring.datasource.username= root 12 spring.datasource.username= root
13 spring.datasource.password= 123456 13 spring.datasource.password= 123456
14 #DATASOURCE 14 #DATASOURCE