Commit 472421bd authored by shizhilong's avatar shizhilong

Merge remote-tracking branch 'origin/dev' into dev

parents fa229a1e ce200d49
package org.jeecg.modules.checkData.dynamicStaticGeometricData.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
......@@ -8,15 +9,15 @@ import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItem;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetail;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetailVO;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemVO;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.service.IRailInspectionEquipmentItemDetailService;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.service.IRailInspectionEquipmentItemService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.util.List;
/**
......@@ -29,9 +30,12 @@ import java.util.List;
*/
@RestController
@RequestMapping("/checkData/dynamicStaticGeometricData/railInspectionEquipmentItem")
@ApiOperation("检查数据-动静态几何尺寸数据-轨检仪静态检查数据-检查项目")
@Api("检查数据-动静态几何尺寸数据-轨检仪静态检查数据-检查项目")
public class RailInspectionEquipmentItemController extends JeecgController<RailInspectionEquipmentItem, IRailInspectionEquipmentItemService> {
@Resource
private IRailInspectionEquipmentItemDetailService railInspectionEquipmentItemDetailService;
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目列表查询")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目列表查询", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目列表查询")
@GetMapping(value = "/list")
......@@ -43,6 +47,41 @@ public class RailInspectionEquipmentItemController extends JeecgController<RailI
return Result.OK(record);
}
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-保存")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-保存", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-保存")
@PostMapping(value = "/saveRecord")
public Result<String> saveRecord(@RequestBody RailInspectionEquipmentItem record) {
this.service.saveRecord(record);
return Result.OK("保存成功");
}
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-编辑")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-编辑", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-编辑")
@PostMapping(value = "/updateRecord")
public Result<String> updateRecord(@RequestBody RailInspectionEquipmentItem record) {
this.service.updateRecord(record);
return Result.OK("保存成功");
}
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-删除")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-编辑", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-删除")
@GetMapping(value = "/deleteRecord")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "轨检仪静态检查项目id")
})
public Result<String> deleteRecord(String id) {
this.service.deleteRecord(id);
return Result.OK("保存成功");
}
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表")
@GetMapping(value = "/detailList")
......@@ -54,6 +93,14 @@ public class RailInspectionEquipmentItemController extends JeecgController<RailI
return Result.OK(record);
}
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细更新")
@ApiOperation(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细更新", notes = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细更新")
@PostMapping(value = "/detailUpdateRecord")
public Result<String> detailUpdateRecord(@RequestBody RailInspectionEquipmentItemDetail record) {
railInspectionEquipmentItemDetailService.updateById(record);
return Result.OK("操作成功");
}
@PostMapping(value = "/upload")
@AutoLog(value = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-导入")
......@@ -68,5 +115,4 @@ public class RailInspectionEquipmentItemController extends JeecgController<RailI
return Result.ok("操作成功");
}
}
......@@ -23,4 +23,10 @@ public interface IRailInspectionEquipmentItemService extends IService<RailInspec
void uploadFile(String masterId, MultipartFile file);
List<RailInspectionEquipmentItemDetailVO> detailList(String masterId);
void saveRecord(RailInspectionEquipmentItem record);
void updateRecord(RailInspectionEquipmentItem record);
void deleteRecord(String itemId);
}
......@@ -6,6 +6,9 @@ import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItem;
import org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetail;
......@@ -139,6 +142,13 @@ public class RailInspectionEquipmentItemServiceImpl extends ServiceImpl<RailInsp
int measurePoint = 1;
int sort = 1;
for (int i = 2; i < 32; i++) {
if (measurePoint % 8 == 0) {
measurePoint = 1;
i = i + 2;
continue;
} else {
measurePoint++;
}
RailInspectionEquipmentItemDetail itemDetail = new RailInspectionEquipmentItemDetail();
itemDetail.setId(UUIDGenerator.generate());
itemDetail.setRailInspectionEquipmentItemId(itemId);
......@@ -159,12 +169,8 @@ public class RailInspectionEquipmentItemServiceImpl extends ServiceImpl<RailInsp
itemDetail.setOther(other);
// 测点
itemDetail.setMeasurePoint(measurePoint - 1);
if (measurePoint % 10 == 0) {
measurePoint = 1;
} else {
measurePoint++;
}
itemDetail.setMeasurePoint(measurePoint);
itemDetail.setInfoSort(sort++);
itemDetails.add(itemDetail);
}
......@@ -191,4 +197,61 @@ public class RailInspectionEquipmentItemServiceImpl extends ServiceImpl<RailInsp
return railInspectionEquipmentItemDetailMapper.detailList(itemId);
}
@Override
public void saveRecord(RailInspectionEquipmentItem record) {
// 保存item表
record.setId(UUIDGenerator.generate());
record.setDelFlag("0");
this.save(record);
// 初始化明细表
List<RailInspectionEquipmentItemDetail> itemDetails = new ArrayList<>();
int measurePoint = 1;
int sort = 1;
for (int i = 2; i < 32; i++) {
RailInspectionEquipmentItemDetail itemDetail = new RailInspectionEquipmentItemDetail();
itemDetail.setId(UUIDGenerator.generate());
itemDetail.setRailInspectionEquipmentId(record.getRailInspectionEquipmentId());
itemDetail.setRailInspectionEquipmentItemId(record.getId());
// 检查项目
itemDetail.setCheckItem("");
//轨距
itemDetail.setTrackGauge("");
//水平
itemDetail.setLevel("");
//三角坑
itemDetail.setTriangularPit("");
//解析轨向、高低及其它
itemDetail.setOther("");
// 测点
itemDetail.setMeasurePoint(measurePoint - 1);
if (measurePoint % 10 == 0) {
measurePoint = 1;
} else {
measurePoint++;
}
itemDetail.setInfoSort(sort++);
itemDetails.add(itemDetail);
}
itemDetails.forEach(itemDetail -> {
railInspectionEquipmentItemDetailMapper.insert(itemDetail);
});
}
@Override
public void updateRecord(RailInspectionEquipmentItem record) {
this.updateById(record);
}
@Override
public void deleteRecord(String itemId) {
this.removeById(itemId);
LambdaUpdateWrapper<RailInspectionEquipmentItemDetail> wrapper = Wrappers.lambdaUpdate();
railInspectionEquipmentItemDetailMapper.delete(wrapper.eq(RailInspectionEquipmentItemDetail::getRailInspectionEquipmentItemId, itemId));
}
}
package org.jeecg.modules.checkData.equipmentCheckData.controller;
import org.jeecg.modules.checkData.equipmentCheckData.entity.MovementAdditiveInfo;
import org.jeecg.modules.checkData.equipmentCheckData.service.IMovementAdditiveInfoService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.jeecg.common.system.base.controller.JeecgController;
/**
* <p>
* 动静态几何尺寸对应的添乘仪详情表 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-17
*/
@RestController
@RequestMapping("/movement/additive")
public class MovementAdditiveInfoController extends JeecgController<MovementAdditiveInfo, IMovementAdditiveInfoService> {
}
package org.jeecg.modules.checkData.equipmentCheckData.controller;
import org.jeecg.modules.checkData.equipmentCheckData.entity.MovementCourse;
import org.jeecg.modules.checkData.equipmentCheckData.service.IMovementCourseService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.jeecg.common.system.base.controller.JeecgController;
/**
* <p>
* 动静态几何尺寸对应得里程相关信息表 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-11
*/
@RestController
@RequestMapping("/movement/course")
public class MovementCourseController extends JeecgController<MovementCourse, IMovementCourseService> {
}
package org.jeecg.modules.checkData.equipmentCheckData.controller;
import org.jeecg.modules.checkData.equipmentCheckData.entity.MovementCourseInfo;
import org.jeecg.modules.checkData.equipmentCheckData.service.IMovementCourseInfoService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.jeecg.common.system.base.controller.JeecgController;
/**
* <p>
* 动静态几何尺寸对应得里程相关信息详情表 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-11
*/
@RestController
@RequestMapping("/movement/courseInfo")
public class MovementCourseInfoController extends JeecgController<MovementCourseInfo, IMovementCourseInfoService> {
}
......@@ -4,20 +4,19 @@ package org.jeecg.modules.checkData.equipmentCheckData.controller;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.*;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.checkData.equipmentCheckData.dto.MovementAdditiveInfoDTO;
import org.jeecg.modules.checkData.equipmentCheckData.dto.MovementRecordsMasterDTO;
import org.jeecg.modules.checkData.equipmentCheckData.entity.MovementAdditiveInfo;
......@@ -38,13 +37,13 @@ import org.jeecg.modules.subwayNetwork.service.ISubwaySectionService;
import org.jeecg.modules.utils.BeanCopyUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.web.multipart.MultipartFile;
import javax.transaction.Transactional;
import java.math.BigDecimal;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
......@@ -100,6 +99,7 @@ public class MovementRecordsMasterController extends JeecgController<MovementRec
/**
* 动静态几何新增时初始化回显数据
*
* @param lightRailId
* @param lineAliasId
* @param sectionId
......@@ -247,15 +247,15 @@ public class MovementRecordsMasterController extends JeecgController<MovementRec
if ("1".equals(type)) {
//人工静态检查相关
//删除里程详情
LambdaUpdateWrapper<MovementCourseInfo> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
lambdaUpdateWrapper.set(MovementCourseInfo::getDelFlag, "1");
lambdaUpdateWrapper.eq(MovementCourseInfo::getMovementMasterId, id);
movementCourseInfoService.update(lambdaUpdateWrapper);
// LambdaUpdateWrapper<MovementCourseInfo> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
// lambdaUpdateWrapper.set(MovementCourseInfo::getDelFlag, "1");
// lambdaUpdateWrapper.eq(MovementCourseInfo::getMovementMasterId, id);
movementCourseInfoService.lambdaUpdate().eq(MovementCourseInfo::getMovementMasterId, id).remove();
//删除里程相关
LambdaUpdateWrapper<MovementCourse> updateWrapper = Wrappers.lambdaUpdate();
updateWrapper.set(MovementCourse::getDelFlag, "1");
updateWrapper.eq(MovementCourse::getMovementMasterId, id);
movementCourseService.update(updateWrapper);
// LambdaUpdateWrapper<MovementCourse> updateWrapper = Wrappers.lambdaUpdate();
// updateWrapper.set(MovementCourse::getDelFlag, "1");
// updateWrapper.eq(MovementCourse::getMovementMasterId, id);
movementCourseService.lambdaUpdate().eq(MovementCourse::getMovementMasterId, id).remove();
} else if ("4".equals(type)) {
//删除添乘仪详情
LambdaUpdateWrapper<MovementAdditiveInfo> updateQuery = Wrappers.lambdaUpdate();
......@@ -406,7 +406,7 @@ public class MovementRecordsMasterController extends JeecgController<MovementRec
movementCourse.setLongExtent(new BigDecimal(longExtent));
}
sort++;
courseId = IdWorker.get32UUID();
courseId = UUIDGenerator.generate();
movementCourse.setId(courseId);
movementCourse.setDelFlag("0");
movementCourse.setCreateTime(new Date());
......@@ -530,10 +530,83 @@ public class MovementRecordsMasterController extends JeecgController<MovementRec
}
return Result.ok("操作成功");
}
//**********************************添乘仪检查******************************
@AutoLog(value = "人工静态检查数据-保存曲线半径信息")
@ApiOperation(value = "人工静态检查数据-保存曲线半径信息", notes = "人工静态检查数据-保存曲线半径信息")
@PostMapping(value = "/saveAdditive")
public Result<String> saveAdditive(@RequestBody MovementCourse record) {
// 保存人工项目检查表
record.setId(UUIDGenerator.generate());
record.setDelFlag("0");
movementCourseService.save(record);
// 初始化下面的格子模板
List<MovementCourseInfo> movementCourseInfos = new ArrayList<>();
int measurePoint = 1;
String trackCode = "1";
for (int i = 0; i < 24; i++) {
MovementCourseInfo movementCourseInfo = new MovementCourseInfo();
movementCourseInfo.setMovementMasterId(record.getMovementMasterId());
movementCourseInfo.setMovementCourseId(record.getId());
movementCourseInfo.setMeasurePoint(measurePoint);
movementCourseInfo.setDelFlag("0");
movementCourseInfo.setTrackCode(trackCode);
if (measurePoint % 8 == 0) {
measurePoint = 1;
trackCode = String.valueOf(Integer.valueOf(trackCode) + 1);
}
movementCourseInfos.add(movementCourseInfo);
}
movementCourseInfoService.saveBatch(movementCourseInfos);
return Result.OK("操作成功");
}
@AutoLog(value = "人工静态检查数据-更新曲线半径信息")
@ApiOperation(value = "人工静态检查数据-更新曲线半径信息", notes = "人工静态检查数据-更新曲线半径信息")
@PostMapping(value = "/updateAdditive")
public Result<String> updateAdditive(@RequestBody MovementCourse record) {
// 保存人工项目检查表
movementCourseService.updateById(record);
return Result.OK("操作成功");
}
@AutoLog(value = "人工静态检查数据-删除曲线半径信息")
@ApiOperation(value = "人工静态检查数据-删除曲线半径信息", notes = "人工静态检查数据-删除曲线半径信息")
@GetMapping(value = "/deleteAdditive")
@ApiImplicitParams({
@ApiImplicitParam(name = "movementCourseId", required = true, value = "曲线半径信息Id")
})
public Result<String> deleteAdditive(String movementCourseId) {
//删除里程详情
movementCourseInfoService.lambdaUpdate()
.eq(MovementCourseInfo::getMovementCourseId, movementCourseId)
.remove();
//删除里程相关
movementCourseService.removeById(movementCourseId);
return Result.OK("操作成功");
}
@AutoLog(value = "人工静态检查数据-更新轨道信息")
@ApiOperation(value = "人工静态检查数据-更新轨道信息", notes = "人工静态检查数据-更新轨道信息")
@PostMapping(value = "/updateAdditiveDetail")
public Result<String> updateAdditiveDetail(@RequestBody MovementCourseInfo record) {
movementCourseInfoService.updateById(record);
return Result.OK("操作成功");
}
//**********************************添乘仪检查******************************
/**
* 查询添乘仪详情
*
* @param pageNo
* @param pageSize
* @param dto
......@@ -543,9 +616,9 @@ public class MovementRecordsMasterController extends JeecgController<MovementRec
@ApiOperation(value = "查询添乘仪详情", notes = "查询添乘仪详情")
@GetMapping(value = "/getMovementAdditiveInfo")
public Result<IPage<MovementAdditiveInfoVO>> getMovementAdditiveInfo(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
MovementAdditiveInfoDTO dto) {
if(ObjectUtil.isEmpty(dto.getMovementMasterId())){
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
MovementAdditiveInfoDTO dto) {
if (ObjectUtil.isEmpty(dto.getMovementMasterId())) {
return Result.error("参数不完整");
}
Page<MovementAdditiveInfoVO> pageData = new Page<>(pageNo, pageSize);
......
......@@ -33,6 +33,8 @@ import java.util.Arrays;
@RequestMapping("/deviceAsset/railManagement")
@Api(tags = "资产管理-钢轨管理")
public class RailManagementController extends JeecgController<RailManagement, IRailManagementService> {
@AutoLog(value = "资产管理-钢轨管理-分页列表查询")
@ApiOperation(value = "资产管理-道岔管理-分页列表查询", notes = "资产管理-道岔管理-分页列表查询")
@GetMapping(value = "/list")
......@@ -75,7 +77,8 @@ public class RailManagementController extends JeecgController<RailManagement, IR
@ApiOperation(value = "资产管理-钢轨管理-智能生成", notes = "资产管理-钢轨管理-智能生成")
@GetMapping(value = "/intelligentGeneration")
public Result<String> intelligentGeneration() {
this.service.intelligentGeneration("1671390979417616386");
String id = "1671390979417616386"; // 线路id
this.service.intelligentGeneration(id);
return Result.OK("生成成功");
}
......
......@@ -22,6 +22,7 @@ import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.subwayNetwork.vo.LightRailQueryVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationMapVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
......@@ -41,15 +42,13 @@ import org.apache.shiro.authz.annotation.RequiresPermissions;
@RequestMapping("/subwayNetwork/lightRail")
@Slf4j
public class LightRailController extends JeecgController<LightRail, ILightRailService> {
@Autowired
private ILightRailService lightRailService;
@AutoLog(value = "线路车站-轻轨线路-分页列表查询")
@ApiOperation(value = "线路车站-轻轨线路-分页列表查询", notes = "线路车站-轻轨线路-分页列表查询")
@PostMapping(value = "/list")
public Result<IPage<LightRailQueryVO>> queryPageList(@RequestBody PageSearch<LightRailQueryDTO> dto) {
IPage<LightRailQueryVO> pageList = lightRailService.queryPageList(dto);
IPage<LightRailQueryVO> pageList = this.service.queryPageList(dto);
return Result.OK(pageList);
}
......@@ -62,9 +61,9 @@ public class LightRailController extends JeecgController<LightRail, ILightRailSe
lightRail.setUpdateTime(new Date());
if (ObjectUtil.isEmpty(lightRail.getId())) {
lightRail.setCreateTime(new Date());
lightRailService.save(lightRail);
this.service.save(lightRail);
} else {
lightRailService.updateById(lightRail);
this.service.updateById(lightRail);
}
return Result.OK("编辑成功!");
......@@ -80,7 +79,7 @@ public class LightRailController extends JeecgController<LightRail, ILightRailSe
@ApiOperation(value = "线路车站-轻轨线路-通过id删除", notes = "线路车站-轻轨线路-通过id删除")
@GetMapping(value = "/delete")
public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
lightRailService.removeById(id);
this.service.removeById(id);
return Result.OK("删除成功!");
}
......@@ -94,7 +93,7 @@ public class LightRailController extends JeecgController<LightRail, ILightRailSe
@ApiOperation(value = "线路车站-轻轨线路-批量删除", notes = "线路车站-轻轨线路-批量删除")
@GetMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
this.lightRailService.removeByIds(Arrays.asList(ids.split(",")));
this.service.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
......@@ -108,7 +107,7 @@ public class LightRailController extends JeecgController<LightRail, ILightRailSe
@ApiOperation(value = "线路车站-轻轨线路-通过id查询", notes = "线路车站-轻轨线路-通过id查询")
@GetMapping(value = "/queryById")
public Result<LightRail> queryById(@RequestParam(name = "id", required = true) String id) {
LightRail lightRail = lightRailService.getById(id);
LightRail lightRail = this.service.getById(id);
if (lightRail == null) {
return Result.error("未找到对应数据");
}
......@@ -119,23 +118,32 @@ public class LightRailController extends JeecgController<LightRail, ILightRailSe
@ApiOperation(value = "线路车站-轻轨线路-获取全部线路", notes = "线路车站-轻轨线路-获取全部线路")
@GetMapping(value = "/listAll")
public Result<List<Map<String, Object>>> listAll() {
List<LightRail> pageList = lightRailService.list();
List<LightRail> pageList = this.service.list();
List<Map<String, Object>> list = new ArrayList<>();
for (LightRail lightRail : pageList) {
Map<String, Object> map = new HashMap<>();
map.put("label", lightRail.getRailLineName());
map.put("value", lightRail.getId() );
map.put("value", lightRail.getId());
list.add(map);
}
return Result.OK(list);
}
@AutoLog(value = "线路车站-线别管理-获取区间车站映射")
@ApiOperation(value = "线路车站-线别管理-获取区间车站映射", notes = "线路车站-线别管理-获取区间车站映射")
@AutoLog(value = "线路车站-轻轨线路-获取区间车站映射")
@ApiOperation(value = "线路车站-轻轨线路-获取区间车站映射", notes = "线路车站-轻轨线路-获取区间车站映射")
@GetMapping(value = "/getSectionStation")
public Result<List<SectionStationMapVO>> getSectionStation() {
return Result.OK(lightRailService.getSectionStation());
return Result.OK(this.service.getSectionStation());
}
@AutoLog(value = "线路车站-轻轨线路-获取线路下面所有的(区间-站点)树")
@ApiOperation(value = "线路车站-轻轨线路-获取线路下面所有的(区间-站点)树", notes = "线路车站-轻轨线路-获取线路下面所有的(区间-站点)树")
@GetMapping(value = "/getTree")
public Result<List<SectionStationNode>> getTree() {
return Result.OK(this.service.getTree());
}
}
......@@ -6,6 +6,7 @@ import org.jeecg.modules.subwayNetwork.entity.LightRail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.subwayNetwork.vo.LightRailQueryVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationMapVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import java.util.List;
......@@ -18,4 +19,7 @@ public interface LightRailMapper extends BaseMapper<LightRail> {
IPage<LightRailQueryVO> queryPageList(IPage<LightRailQueryVO> page, LightRailQueryDTO query);
List<SectionStationMapVO> getSectionStation();
List<SectionStationNode> getTreeLightRailList();
}
......@@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.jeecg.modules.subwayNetwork.dto.SubwaySectionQueryDTO;
import org.jeecg.modules.subwayNetwork.entity.SubwaySection;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import org.jeecg.modules.subwayNetwork.vo.SubwaySectionVO;
import java.util.List;
/**
* @Description: 线路车站-地铁区间
* @Author: jeecg-boot
......@@ -15,4 +18,6 @@ import org.jeecg.modules.subwayNetwork.vo.SubwaySectionVO;
public interface SubwaySectionMapper extends BaseMapper<SubwaySection> {
IPage<SubwaySectionVO> queryPageList(IPage<SubwaySectionVO> page, SubwaySectionQueryDTO query);
List<SectionStationNode> getTreeSubwaySectionList();
}
......@@ -5,8 +5,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.jeecg.modules.subwayNetwork.dto.TrainStationQueryDTO;
import org.jeecg.modules.subwayNetwork.entity.TrainStation;
import org.jeecg.modules.subwayNetwork.vo.LightRailQueryVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import org.jeecg.modules.subwayNetwork.vo.TrainStationVO;
import java.util.List;
/**
* @Description: 线路车站-地铁站
* @Author: jeecg-boot
......@@ -17,4 +20,5 @@ public interface TrainStationMapper extends BaseMapper<TrainStation> {
IPage<TrainStationVO> queryPageList(IPage<LightRailQueryVO> page, TrainStationQueryDTO query);
List<SectionStationNode> getTreeTrainStationList();
}
......@@ -42,5 +42,33 @@
t_sn_section_station_map
</select>
<select id="getTreeLightRailList" resultType="org.jeecg.modules.subwayNetwork.vo.SectionStationNode">
SELECT
id,
rail_line_name label,
'1' level,
'0' parent,
'' lineAliasId,
'0' startMileage,
TRUNCATE ( up_line_mileage / 2, 3 ) centerMileage,
up_line_mileage endMileage,
true isLeaf
FROM
t_sn_light_rail
<!-- UNION ALL
SELECT
concat(id,'-2') id,
rail_line_name label,
'1' LEVEL,
'0' parent,
'2' lineAliasId,
'0' startMileage,
TRUNCATE ( down_line_mileage / 2, 3 ) centerMileage,
down_line_mileage endMileage,
false isLeaf
FROM
t_sn_light_rail
-->
</select>
</mapper>
\ No newline at end of file
......@@ -30,4 +30,19 @@
</if>
</where>
</select>
<select id="getTreeSubwaySectionList" resultType="org.jeecg.modules.subwayNetwork.vo.SectionStationNode">
SELECT
id,
section_name label,
'2' level,
light_rail_id parent,
line_alias_id,
light_rail_id,
section_starting_mileage startMileage,
TRUNCATE ( (section_end_mileage+section_starting_mileage) / 2, 3 ) centerMileage,
section_end_mileage endMileage,
true isLeaf
FROM
t_sn_subway_section
</select>
</mapper>
\ No newline at end of file
......@@ -31,4 +31,18 @@
</if>
</where>
</select>
<select id="getTreeTrainStationList" resultType="org.jeecg.modules.subwayNetwork.vo.SectionStationNode">
SELECT
concat(t1.id,'-',t2.section_id) id,
t1.station_name label,
'3' level,
t2.section_id parent,
t1.line_alias_id,
t1.starting_mileage startMileage,
t1.center_mileage centerMileage,
t1.end_mileage endMileage,
true isLeaf
FROM
t_sn_train_station t1 LEFT JOIN t_sn_section_station_map t2 ON t1.id = t2.station_id
</select>
</mapper>
\ No newline at end of file
......@@ -7,8 +7,10 @@ import org.jeecg.modules.subwayNetwork.entity.LightRail;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.subwayNetwork.vo.LightRailQueryVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationMapVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import java.util.List;
import java.util.Map;
/**
* @Description: 线路车站-轻轨线路
......@@ -27,4 +29,6 @@ public interface ILightRailService extends IService<LightRail> {
IPage<LightRailQueryVO> queryPageList(PageSearch<LightRailQueryDTO> dto);
List<SectionStationMapVO> getSectionStation();
List<SectionStationNode> getTree();
}
......@@ -7,12 +7,19 @@ import org.jeecg.common.api.dto.PageSearch;
import org.jeecg.modules.subwayNetwork.dto.LightRailQueryDTO;
import org.jeecg.modules.subwayNetwork.entity.LightRail;
import org.jeecg.modules.subwayNetwork.mapper.LightRailMapper;
import org.jeecg.modules.subwayNetwork.mapper.SubwaySectionMapper;
import org.jeecg.modules.subwayNetwork.mapper.TrainStationMapper;
import org.jeecg.modules.subwayNetwork.service.ILightRailService;
import org.jeecg.modules.subwayNetwork.vo.LightRailQueryVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationMapVO;
import org.jeecg.modules.subwayNetwork.vo.SectionStationNode;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @Description: 线路车站-线别管理
......@@ -20,6 +27,12 @@ import java.util.List;
@Service
public class LightRailServiceImpl extends ServiceImpl<LightRailMapper, LightRail> implements ILightRailService {
@Resource
private SubwaySectionMapper subwaySectionMapper;
@Resource
private TrainStationMapper trainStationMapper;
@Override
public IPage<LightRailQueryVO> queryPageList(PageSearch<LightRailQueryDTO> dto) {
IPage<LightRailQueryVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
......@@ -32,4 +45,59 @@ public class LightRailServiceImpl extends ServiceImpl<LightRailMapper, LightRail
public List<SectionStationMapVO> getSectionStation() {
return this.baseMapper.getSectionStation();
}
@Override
public List<SectionStationNode> getTree() {
// 1. 查询数据
// 1.1 查询所有线路,按上下行查询
List<SectionStationNode> lightRailList = this.baseMapper.getTreeLightRailList();
// 1.2 查询所有区间
List<SectionStationNode> subwaySectionList = subwaySectionMapper.getTreeSubwaySectionList();
// 1.3 查询所有车站
List<SectionStationNode> trainStation = trainStationMapper.getTreeTrainStationList();
// 2.组装数据
// 2.1 组装 车站-区间&组装一个区间map
Map<String, SectionStationNode> subwaySectionMap = new HashMap<>();
for (SectionStationNode sectionStationNode : subwaySectionList) {
// 2.1.1 组装区间map
subwaySectionMap.put(sectionStationNode.getId(), sectionStationNode);
// 2.1.2 组装车站-区间
for (SectionStationNode lightRail : lightRailList) {
if (sectionStationNode.getParent().equals(lightRail.getId())) {
List<SectionStationNode> children = lightRail.getChildren();
if (children == null) {
children = new ArrayList<>();
lightRail.setChildren(children);
lightRail.setIsLeaf(false);
}
children.add(sectionStationNode);
}
}
}
// 2.1 组装区间-车站数据
for (SectionStationNode node : trainStation) {
SectionStationNode sectionStationNode = subwaySectionMap.get(node.getParent());
// 这个车站属于这个区间就添加进去,说明不是叶子节点
if (sectionStationNode != null) {
List<SectionStationNode> children = sectionStationNode.getChildren();
if (children == null) {
children = new ArrayList<>();
sectionStationNode.setChildren(children);
sectionStationNode.setIsLeaf(false);
}
children.add(node);
}
}
return lightRailList;
}
}
......@@ -74,9 +74,19 @@ public class SubwaySectionServiceImpl extends ServiceImpl<SubwaySectionMapper, S
// 3.2 查询这个单行区间的车站
QueryWrapper<TrainStation> tsQueryWrapper = new QueryWrapper<>();
tsQueryWrapper.lambda().ge(TrainStation::getSeq, startTrainStation.getSeq())
// 可能会存在先选开始里程大的那个,再选开始里程小的那个
int startSeq = startTrainStation.getSeq();
int endSeq = endTrainStation.getSeq();
if (startTrainStation.getStartingMileage().compareTo(endTrainStation.getStartingMileage()) > 0) {
startSeq = endTrainStation.getSeq();
endSeq = startTrainStation.getSeq();
}
tsQueryWrapper.lambda()
.ge(TrainStation::getSeq, startSeq)
.le(TrainStation::getSeq, endSeq)
.eq(TrainStation::getLineAliasId, dto.getLineAliasId())
.le(TrainStation::getSeq, endTrainStation.getSeq())
.eq(TrainStation::getLightRailId, subwaySection.getLightRailId());
List<TrainStation> trainStations = trainStationMapper.selectList(tsQueryWrapper);
LightRail lightRail = lightRailMapper.selectById(subwaySection.getLightRailId());
......
package org.jeecg.modules.subwayNetwork.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
@ApiModel(value = "SectionStationNode", description = "区间-站节点")
public class SectionStationNode {
@ApiModelProperty(value = "id")
private String id;
@ApiModelProperty(value = "标签")
private String label;
@ApiModelProperty(value = "等级")
private String level;
@ApiModelProperty(value = "父节点")
private String parent;
@ApiModelProperty(value = "线别id")
private String lineAliasId;
@ApiModelProperty(value = "起始里程")
private BigDecimal startMileage;
@ApiModelProperty(value = "中心里程")
private BigDecimal centerMileage;
@ApiModelProperty(value = "结束里程")
private BigDecimal endMileage;
@ApiModelProperty(value = "是否是叶子节点")
private Boolean isLeaf;
@ApiModelProperty(value = "孩子节点")
private List<SectionStationNode> children;
}
......@@ -150,6 +150,7 @@ public class SysUserController {
@RequestMapping(value = "/listAll", method = RequestMethod.GET)
public Result<IPage<SysUser>> queryAllPageList(SysUser user, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
QueryWrapper<SysUser> queryWrapper = QueryGenerator.initQueryWrapper(user, req.getParameterMap());
return sysUserService.queryPageList(req, queryWrapper, pageSize, pageNo);
}
......
......@@ -100,6 +100,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
@Override
public Result<IPage<SysUser>> queryPageList(HttpServletRequest req, QueryWrapper<SysUser> queryWrapper, Integer pageSize, Integer pageNo) {
Result<IPage<SysUser>> result = new Result<IPage<SysUser>>();
String realname = req.getParameter("realname");
//update-begin-Author:wangshuai--Date:20211119--for:【vue3】通过部门id查询用户,通过code查询id
//部门ID
String departId = req.getParameter("departId");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment