Commit 7e7dcb47 authored by hkl's avatar hkl

Merge branch 'dev-hkl' into 'dev'

Dev hkl

See merge request !37
parents 71595f69 d7b7b051
......@@ -9,3 +9,4 @@ rebel.xml
## front
**/*.lock
/jeecg-module-system/src/main/java/org/jeecg/modules/test/
......@@ -70,6 +70,20 @@ public class MybatisInterceptor implements Interceptor {
field.setAccessible(false);
}
}
if ("updateBy".equals(field.getName())) {
//获取登录用户信息
if (sysUser != null) {
// 登录账号
field.setAccessible(true);
field.set(parameter, sysUser.getUsername());
field.setAccessible(false);
}
}
if ("updateTime".equals(field.getName())) {
field.setAccessible(true);
field.set(parameter, new Date());
field.setAccessible(false);
}
//注入部门编码
if ("sysOrgCode".equals(field.getName())) {
field.setAccessible(true);
......
......@@ -25,12 +25,12 @@ public class CodeGenerate {
String outputDir = projectPath + "\\jeecg-module-system\\src\\main\\java\\";
// 模块名
String moduleName = "school";
String moduleName = "dynamicStaticAnalysis";
// 表名
String[] tables = {
"t_jh_school_plan_batch_master",
"t_dsa_analysis_batch",
"t_dsa_analysis_batch_check_data_map",
};
......@@ -58,7 +58,7 @@ public class CodeGenerate {
// 设置过滤前缀
.strategyConfig(builder -> {
builder.addInclude(tables) // 设置需要生成的表名
.addTablePrefix("t_sn", "t_da","t_ek","t_xd","t_dsg","t_djt","t_jh"); // 设置过滤表前缀
.addTablePrefix("t_sn", "t_da","t_ek","t_xd","t_dsg","t_djt","t_jh","t_dsa"); // 设置过滤表前缀
// entity实体策略
builder.entityBuilder()
......
package org.jeecg.config.init;
import com.alibaba.druid.filter.config.ConfigTools;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecgframework.codegenerate.database.CodegenDatasourceConfig;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @Description: 代码生成器,自定义DB配置
* 【加了此类,则online模式DB连接,使用平台的配置,jeecg_database.properties配置无效;
* 但是使用GUI模式代码生成,还是走jeecg_database.properties配置】
* 提醒: 达梦数据库需要修改下面的参数${spring.datasource.dynamic.datasource.master.url:}配置
* @author: scott
* @date: 2021年02月18日 16:30
*/
@Slf4j
//@Configuration
public class CodeGenerateDbConfig {
@Value("${spring.datasource.dynamic.datasource.master.url:}")
private String url;
@Value("${spring.datasource.dynamic.datasource.master.username:}")
private String username;
@Value("${spring.datasource.dynamic.datasource.master.password:}")
private String password;
@Value("${spring.datasource.dynamic.datasource.master.driver-class-name:}")
private String driverClassName;
@Value("${spring.datasource.dynamic.datasource.master.druid.public-key:}")
private String publicKey;
@Bean
public CodeGenerateDbConfig initCodeGenerateDbConfig() {
if(StringUtils.isNotBlank(url)){
if(StringUtils.isNotBlank(publicKey)){
try {
password = ConfigTools.decrypt(publicKey, password);
} catch (Exception e) {
e.printStackTrace();
log.error(" 代码生成器数据库连接,数据库密码解密失败!");
}
}
CodegenDatasourceConfig.initDbConfig(driverClassName,url, username, password);
log.info(" Init CodeGenerate Config [ Get Db Config From application.yml ] ");
}
return null;
}
}
package org.jeecg.config.init;
import cn.hutool.core.io.FileUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
import org.springframework.boot.context.event.ApplicationReadyEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.stereotype.Component;
import java.io.File;
import java.net.URL;
import java.nio.charset.StandardCharsets;
/**
* 自动初始化代码生成器模板
* <p>
* 解决JAR发布需要手工配置代码生成器模板问题
* @author zhang
*/
@Slf4j
@Component
public class CodeTemplateInitListener implements ApplicationListener<ApplicationReadyEvent> {
@Override
public void onApplicationEvent(ApplicationReadyEvent event) {
try {
log.info(" Init Code Generate Template [ 检测如果是JAR启动环境,Copy模板到config目录 ] ");
this.initJarConfigCodeGeneratorTemplate();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* ::Jar包启动模式下::
* 初始化代码生成器模板文件
*/
private void initJarConfigCodeGeneratorTemplate() throws Exception {
//1.获取jar同级下的config路径
String configPath = System.getProperty("user.dir") + File.separator + "config" + File.separator;
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
Resource[] resources = resolver.getResources("classpath*:jeecg/code-template-online/**/*");
for (Resource re : resources) {
URL url = re.getURL();
String filepath = url.getPath();
//System.out.println("native url= " + filepath);
filepath = java.net.URLDecoder.decode(filepath, "utf-8");
//System.out.println("decode url= " + filepath);
//2.在config下,创建jeecg/code-template-online/*模板
String createFilePath = configPath + filepath.substring(filepath.indexOf("jeecg/code-template-online"));
// 非jar模式不生成模板
// 不生成目录,只生成具体模板文件
if (!filepath.contains(".jar!/BOOT-INF/lib/") || !createFilePath.contains(".")) {
continue;
}
if (!FileUtil.exist(createFilePath)) {
log.info("create file codeTemplate = " + createFilePath);
FileUtil.writeString(IOUtils.toString(url, StandardCharsets.UTF_8), createFilePath, "UTF-8");
}
}
}
}
package org.jeecg.config.init;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.constant.CacheConstant;
import org.jeecg.config.JeecgCloudCondition;
import org.jeecg.modules.system.service.ISysGatewayRouteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.event.ApplicationReadyEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Conditional;
import org.springframework.core.Ordered;
import org.springframework.stereotype.Component;
/**
* @desc: 启动程序,初始化路由配置
* @author: flyme
*/
@Slf4j
@Component
@Conditional(JeecgCloudCondition.class)
public class SystemInitListener implements ApplicationListener<ApplicationReadyEvent>, Ordered {
@Autowired
private ISysGatewayRouteService sysGatewayRouteService;
@Override
public void onApplicationEvent(ApplicationReadyEvent applicationReadyEvent) {
log.info(" 服务已启动,初始化路由配置 ###################");
String context = "AnnotationConfigServletWebServerApplicationContext";
if (applicationReadyEvent.getApplicationContext().getDisplayName().indexOf(context) > -1) {
sysGatewayRouteService.addRoute2Redis(CacheConstant.GATEWAY_ROUTES);
}
}
@Override
public int getOrder() {
return 1;
}
}
package org.jeecg.config.init;
import org.jeecg.modules.dynamicStaticAnalysis.algorithm.SingleConsumer;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
/**
* 系统初始化加载
*/
@Component
public class SystemInitRunner implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
// 开启消费者
new Thread(SingleConsumer::consume).start();
}
}
......@@ -30,7 +30,7 @@ import java.util.List;
*/
@RestController
@RequestMapping("/checkData/dynamicStaticGeometricData/railInspectionEquipmentItem")
@Api("检查数据-动静态几何尺寸数据-轨检仪静态检查数据-检查项目")
@Api(tags = "检查数据-动静态几何尺寸数据-轨检仪静态检查数据-检查项目")
public class RailInspectionEquipmentItemController extends JeecgController<RailInspectionEquipmentItem, IRailInspectionEquipmentItemService> {
@Resource
......
package org.jeecg.modules.deviceAsset.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
......@@ -10,17 +9,13 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
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.deviceAsset.dto.RailManagementDTO;
import org.jeecg.modules.deviceAsset.dto.SignBoardManagementDTO;
import org.jeecg.modules.deviceAsset.entity.RailManagement;
import org.jeecg.modules.deviceAsset.entity.SignBoardManagement;
import org.jeecg.modules.deviceAsset.service.IRailManagementService;
import org.jeecg.modules.deviceAsset.vo.RailManagementVO;
import org.jeecg.modules.deviceAsset.vo.SignBoardManagementVO;
import org.springframework.web.bind.annotation.*;
import org.jeecg.common.system.base.controller.JeecgController;
import java.util.Arrays;
/**
......
......@@ -60,6 +60,10 @@ public class RailManagement implements Serializable {
@TableField("unit_code")
private String unitCode;
@ApiModelProperty("线路id")
@TableField("light_rail_id")
private String lightRailId;
@ApiModelProperty("区间id")
@TableField("section_id")
private String sectionId;
......
......@@ -5,28 +5,26 @@
<select id="queryPageList" resultType="org.jeecg.modules.deviceAsset.vo.RailManagementVO">
SELECT
t1.*,
t2.light_rail_name,
t2.light_rail_id,
t3.rail_line_name light_rail_name,
t2.section_name,
( SELECT line_alias_name FROM t_sn_line_alias WHERE id = t1.line_alias_id LIMIT 1 ) line_alias_name
FROM
t_da_rail_management t1
LEFT JOIN t_sn_subway_section t2 ON t1.section_id = t2.id
LEFT JOIN t_sn_light_rail t3 ON t2.light_rail_id = t3.id
<where>
<if test="dto.railCode != null and dto.railCode != ''">
AND t1.rail_code like concat('%',#{dto.railCode},'%')
</if>
<if test="dto.sectionId != null and dto.sectionId != ''">
AND t1.section_id = #{dto.sectionId}
</if>
<if test="dto.lightRailId != null and dto.lightRailId != ''">
AND t2.light_rail_id = #{dto.lightRailId}
</if>
<if test="dto.lineAliasId != null and dto.lineAliasId != ''">
AND t1.line_alias_id = #{dto.lineAliasId}
</if>
</where>
LEFT JOIN t_sn_light_rail t3 ON t1.light_rail_id = t3.id
where t3.status = 1
<if test="dto.railCode != null and dto.railCode != ''">
AND t1.rail_code like concat('%',#{dto.railCode},'%')
</if>
<if test="dto.sectionId != null and dto.sectionId != ''">
AND t1.section_id = #{dto.sectionId}
</if>
<if test="dto.lightRailId != null and dto.lightRailId != ''">
AND t1.light_rail_id = #{dto.lightRailId}
</if>
<if test="dto.lineAliasId != null and dto.lineAliasId != ''">
AND t1.line_alias_id = #{dto.lineAliasId}
</if>
</select>
<select id="getLineSpecialRail" resultType="java.util.Map">
SELECT
......
......@@ -57,6 +57,7 @@ public class RailManagementServiceImpl extends ServiceImpl<RailManagementMapper,
@Override
public void edit(RailManagement railManagement) {
if (ObjectUtil.isEmpty(railManagement.getId())) {
railManagement.setId(UUIDGenerator.generate());
String utilCode = UnitCodeUtil.railUnitCodeUtil(railManagement.getLineAliasId());
railManagement.setUnitCode(utilCode);
......@@ -72,7 +73,7 @@ public class RailManagementServiceImpl extends ServiceImpl<RailManagementMapper,
@Override
public void intelligentGeneration(String lightRailId) {
// 1.删除整条线的
this.lambdaUpdate().remove();
this.lambdaUpdate().eq(RailManagement::getLightRailId,lightRailId).remove();
// 2.查询当前车站的上下行里程
......@@ -91,6 +92,7 @@ public class RailManagementServiceImpl extends ServiceImpl<RailManagementMapper,
railManagement.setRailCode(railCode);
String unitCode = "SXXGG" + UnitCodeUtil.supplementZero(4, i + 1);
railManagement.setUnitCode(unitCode);
railManagement.setLightRailId(lightRailId);
railManagement.setRailOrderNum(i + 1);
railManagement.setCreateBy("系统生成");
railManagement.setUpdateBy("系统生成");
......@@ -110,6 +112,7 @@ public class RailManagementServiceImpl extends ServiceImpl<RailManagementMapper,
railManagement.setRailCode(railCode);
String unitCode = "DXXGG" + UnitCodeUtil.supplementZero(4, i + 1);
railManagement.setUnitCode(unitCode);
railManagement.setLightRailId(lightRailId);
railManagement.setRailOrderNum(i + 1);
railManagement.setCreateBy("系统生成");
railManagement.setUpdateBy("系统生成");
......
package org.jeecg.modules.dynamicStaticAnalysis.algorithm;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
public class Buffer {
/**
* 缓冲队列最大缓存能力
*/
private static final int MAX_CAPACITY = 20;
/**
* 缓冲队列
* 这个队列是一个基于链表的阻塞队列,它的容量可以是有界的或无界的。
* 当使用有界容量时,如果队列已满,新的插入操作会被阻塞,直到有空间可用。
* 因为队列可以无限增长(无界),所以在插入元素时不会发生阻塞。
*/
public static final BlockingQueue<String> queue = new LinkedBlockingQueue<>(MAX_CAPACITY);
}
package org.jeecg.modules.dynamicStaticAnalysis.algorithm;
import lombok.extern.slf4j.Slf4j;
/**
* 多生产者模型-单消费者模型
* 多生产者
*/
@Slf4j
public class MultiProducer {
public static void produce(String analysisBatchId) {
try {
Buffer.queue.put(analysisBatchId);
log.info("MultiProducer[生产者]|线程id:【" + Thread.currentThread().getId() + "】=============分析批次ID:【" + analysisBatchId+"】");
} catch (InterruptedException e) {
e.printStackTrace();
log.error("MultiProducer:");
}
}
}
package org.jeecg.modules.dynamicStaticAnalysis.algorithm;
import lombok.extern.slf4j.Slf4j;
/**
* 多生产者模型-单消费者模型
* 单消费者
*/
@Slf4j
public class SingleConsumer {
public static void consume() {
try {
while (true) {
String analysisBatchId = Buffer.queue.take();
log.info("SingleConsumer[消费者]|线程id:【" + Thread.currentThread().getId() + "】=============分析批次ID:【" + analysisBatchId+"】");
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
package org.jeecg.modules.dynamicStaticAnalysis.controller;
import cn.hutool.core.util.ObjectUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.deviceAsset.entity.CurveManagement;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AllowValueConfig;
import org.jeecg.modules.dynamicStaticAnalysis.service.IAllowValueConfigService;
import org.springframework.web.bind.annotation.*;
import org.jeecg.common.system.base.controller.JeecgController;
import java.util.List;
/**
* <p>
* 动静态分析-参数配置-容许值差 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-25
*/
@RestController
@RequestMapping("/dynamicStaticAnalysis/allowValueConfig")
@Api(tags = "动静态分析-参数配置-容许值差")
public class AllowValueConfigController extends JeecgController<AllowValueConfig, IAllowValueConfigService> {
@AutoLog(value = "动静态分析-参数配置-容许值差-查询一条记录")
@ApiOperation(value = "动静态分析-参数配置-容许值差-查询一条记录", notes = "动静态分析-参数配置-容许值差-查询一条记录")
@GetMapping(value = "/getOneRecord")
public Result<AllowValueConfig> getOneRecord() {
List<AllowValueConfig> list = this.service.list();
if (ObjectUtil.isEmpty(list)) {
AllowValueConfig oneRecord = new AllowValueConfig();
oneRecord.setId(UUIDGenerator.generate());
oneRecord.setBigTrackGauge(0);
oneRecord.setSmallTrackGauge(0);
oneRecord.setTriangularPit(0);
oneRecord.setDirection(0);
oneRecord.setLevel(0);
oneRecord.setHeight(0);
oneRecord.setIsWork(1);
oneRecord.setIsEnable(1);
this.service.save(oneRecord);
list.add(oneRecord);
}
return Result.OK(list.get(0));
}
@AutoLog(value = "动静态分析-参数配置-容许值差-编辑")
@ApiOperation(value = "动静态分析-参数配置-容许值差-编辑", notes = "动静态分析-参数配置-容许值差-编辑")
@PostMapping(value = "/updateRecord")
public Result<String> updateRecord(@RequestBody AllowValueConfig allowValueConfig) {
this.service.updateById(allowValueConfig);
return Result.OK("编辑成功!");
}
}
package org.jeecg.modules.dynamicStaticAnalysis.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.dynamicStaticAnalysis.dto.AnalysisBatchQueryDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchSaveOrUpdateDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.CheckBatchDTO;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatch;
import org.jeecg.modules.dynamicStaticAnalysis.service.IAnalysisBatchService;
import org.jeecg.modules.dynamicStaticAnalysis.vo.AnalysisBatchQueryVO;
import org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* <p>
* 动静态分析-分析批次表 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-26
*/
@RestController
@RequestMapping("/dynamicStaticAnalysis/analysisBatch")
@Api(tags = "动静态分析-分析批次")
public class AnalysisBatchController extends JeecgController<AnalysisBatch, IAnalysisBatchService> {
@AutoLog(value = "动静态分析-分析批次-获取检查数据")
@ApiOperation(value = "动静态分析-分析批次-获取检查数据", notes = "动静态分析-分析批次-获取检查数据")
@GetMapping(value = "/getCheckData")
public Result<IPage<CheckBatchVO>> getCheckData(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
CheckBatchDTO dto) {
Page<CheckBatchVO> pageData = new Page<>(pageNo, pageSize);
pageData = this.service.getCheckData(pageData, dto);
return Result.OK(pageData);
}
@AutoLog(value = "动静态分析-分析批次-获取列表数据")
@ApiOperation(value = "动静态分析-分析批次-获取列表数据", notes = "动静态分析-分析批次-获取列表数据")
@GetMapping(value = "/listRecord")
public Result<IPage<AnalysisBatchQueryVO>> listRecord(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
AnalysisBatchQueryDTO dto) {
Page<AnalysisBatchQueryVO> pageData = new Page<>(pageNo, pageSize);
pageData = this.service.listRecord(pageData, dto);
// 查询明细
List<AnalysisBatchQueryVO> records = pageData.getRecords();
if (ObjectUtil.isNotEmpty(records)) {
List<String> analysisBatchIds = records.stream().map(AnalysisBatchQueryVO::getId).collect(Collectors.toList());
List<CheckBatchVO> checkBatchList = this.service.listRecordDetail(analysisBatchIds);
if (ObjectUtil.isNotEmpty(checkBatchList)) {
Map<String, List<CheckBatchVO>> analysisBatchMap = checkBatchList.stream().collect(Collectors.groupingBy(CheckBatchVO::getAnalysisBatchId));
records.forEach(record -> {
List<CheckBatchVO> checkBatchVOS = analysisBatchMap.get(record.getId());
record.setCheckBatchList(checkBatchVOS);
});
}
}
return Result.OK(pageData);
}
@AutoLog(value = "动静态分析-分析批次-新增分析批次")
@ApiOperation(value = "动静态分析-分析批次-新增分析批次", notes = "动静态分析-分析批次-新增分析批次")
@PostMapping(value = "/saveRecord")
public Result<String> saveRecord(@RequestBody AnalysisBatchSaveOrUpdateDTO dto) {
this.service.saveRecord(dto);
return Result.OK("操作成功");
}
@AutoLog(value = "动静态分析-分析批次-更新分析批次")
@ApiOperation(value = "动静态分析-分析批次-更新分析批次", notes = "动静态分析-分析批次-更新分析批次")
@PostMapping(value = "/updateRecord")
public Result<String> updateRecord(@RequestBody AnalysisBatchSaveOrUpdateDTO dto) {
this.service.updateRecord(dto);
return Result.OK("操作成功");
}
@AutoLog(value = "动静态分析-分析批次-通过id删除")
@ApiOperation(value = "动静态分析-分析批次-通过id删除", notes = "动静态分析-分析批次-通过id删除")
@GetMapping(value = "/deleteRecord")
public Result<String> deleteRecord(@RequestParam(name = "id", required = true) String id) {
this.service.deleteRecord(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "动静态分析-分析批次-批量删除")
@ApiOperation(value = "动静态分析-分析批次-批量删除", notes = "动静态分析-分析批次-批量删除")
@GetMapping(value = "/deleteBatchRecord")
public Result<String> deleteBatchRecord(@RequestParam(name = "ids", required = true) String ids) {
this.service.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
}
package org.jeecg.modules.dynamicStaticAnalysis.controller;
import cn.hutool.core.util.ObjectUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamics;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigDynamicsService;
import org.springframework.web.bind.annotation.*;
import org.jeecg.common.system.base.controller.JeecgController;
import java.util.Arrays;
import java.util.List;
/**
* <p>
* 动静态分析-动态分析-参数配置 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@RestController
@RequestMapping("/dynamicStaticAnalysis/config/dynamics")
@Api("动静态分析-动态分析-参数配置")
public class ConfigDynamicsController extends JeecgController<ConfigDynamics, IConfigDynamicsService> {
@AutoLog(value = "动静态分析-动态分析-参数配置-列表查询")
@ApiOperation(value = "动静态分析-动态分析-参数配置-列表查询", notes = "动静态分析-动态分析-参数配置-列表查询")
@GetMapping(value = "/list")
public Result<List<ConfigDynamics>> queryPageList() {
return Result.OK(this.service.list());
}
@AutoLog(value = "动静态分析-动态分析-参数配置-编辑")
@ApiOperation(value = "资产管理-曲线管理-编辑", notes = "资产管理-曲线管理-编辑")
@PostMapping(value = "/edit")
public Result<String> edit(@RequestBody ConfigDynamics record) {
if (ObjectUtil.isEmpty(record.getId())) {
record.setId(UUIDGenerator.generate());
}
this.service.saveOrUpdate(record);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "动静态分析-动态分析-参数配置-通过id删除")
@ApiOperation(value = "动静态分析-动态分析-参数配置-通过id删除", notes = "动静态分析-动态分析-参数配置-通过id删除")
@GetMapping(value = "/delete")
public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
this.service.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "动静态分析-动态分析-参数配置-批量删除")
@ApiOperation(value = "动静态分析-动态分析-参数配置-批量删除", notes = "动静态分析-动态分析-参数配置-批量删除")
@GetMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
this.service.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
}
package org.jeecg.modules.dynamicStaticAnalysis.controller;
import cn.hutool.core.util.ObjectUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.util.UUIDGenerator;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStatic;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigStaticService;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
/**
* <p>
* 动静态分析-静态分析-参数配置 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@RestController
@RequestMapping("/dynamicStaticAnalysis/config-static")
@Api("动静态分析-静态分析-参数配置")
public class ConfigStaticController extends JeecgController<ConfigStatic, IConfigStaticService> {
@AutoLog(value = "动静态分析-动态分析-参数配置-列表查询")
@ApiOperation(value = "动静态分析-动态分析-参数配置-列表查询", notes = "动静态分析-动态分析-参数配置-列表查询")
@GetMapping(value = "/list")
public Result<List<ConfigStatic>> queryPageList() {
return Result.OK(this.service.list());
}
@AutoLog(value = "动静态分析-动态分析-参数配置-编辑")
@ApiOperation(value = "资产管理-曲线管理-编辑", notes = "资产管理-曲线管理-编辑")
@PostMapping(value = "/edit")
public Result<String> edit(@RequestBody ConfigStatic record) {
if (ObjectUtil.isEmpty(record.getId())) {
record.setId(UUIDGenerator.generate());
}
this.service.saveOrUpdate(record);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "动静态分析-动态分析-参数配置-通过id删除")
@ApiOperation(value = "动静态分析-动态分析-参数配置-通过id删除", notes = "动静态分析-动态分析-参数配置-通过id删除")
@GetMapping(value = "/delete")
public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
this.service.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "动静态分析-动态分析-参数配置-批量删除")
@ApiOperation(value = "动静态分析-动态分析-参数配置-批量删除", notes = "动静态分析-动态分析-参数配置-批量删除")
@GetMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
this.service.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
}
package org.jeecg.modules.dynamicStaticAnalysis.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.util.UUIDGenerator;
import org.jeecg.modules.dynamicStaticAnalysis.entity.DispatchingConfig;
import org.jeecg.modules.dynamicStaticAnalysis.service.IDispatchingConfigService;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 动静态分析-参数配置-派工配置 前端控制器
* </p>
*
* @author hkl
* @since 2023-07-25
*/
@RestController
@RequestMapping("/dynamicStaticAnalysis/dispatchingConfig")
@Api(tags = "动静态分析-参数配置-派工配置")
public class DispatchingConfigController extends JeecgController<DispatchingConfig, IDispatchingConfigService> {
@AutoLog(value = "动静态分析-参数配置-派工配置-查询所有参数")
@ApiOperation(value = "动静态分析-参数配置-派工配置-查询所有参数", notes = "动静态分析-参数配置-派工配置-查询所有参数")
@GetMapping(value = "/listRecord")
public Result<List<DispatchingConfig>> listRecord() {
return Result.OK(this.service.list());
}
@AutoLog(value = "动静态分析-参数配置-派工配置-新增")
@ApiOperation(value = "动静态分析-参数配置-派工配置-新增", notes = "动静态分析-参数配置-派工配置-新增")
@PostMapping(value = "/saveRecord")
public Result<String> saveRecord(@RequestBody DispatchingConfig record) {
record.setId(UUIDGenerator.generate());
this.service.save(record);
return Result.OK("操作成功");
}
@AutoLog(value = "动静态分析-参数配置-派工配置-批量更新")
@ApiOperation(value = "动静态分析-参数配置-派工配置-批量更新", notes = "动静态分析-参数配置-派工配置-批量更新")
@PostMapping(value = "/batchUpdateRecord")
public Result<String> batchUpdateRecord(@RequestBody List<DispatchingConfig> records) {
this.service.updateBatchById(records);
return Result.OK("操作成功");
}
}
package org.jeecg.modules.dynamicStaticAnalysis.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.util.Date;
/**
* <p>
* 动静态分析-分析批次表
* </p>
*
* @author hkl
* @since 2023-07-26
*/
@Data
@ApiModel(value = "AnalysisBatchQueryDTO对象", description = "动静态分析-分析批次表")
public class AnalysisBatchQueryDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("分析批次号")
private String analysisBatchCode;
@ApiModelProperty("所属线路id")
private String lightRailId;
@ApiModelProperty("所属线别id")
private String lineAliasId;
@ApiModelProperty("分析状态 0-创建 1-分析中 99-分析完成")
private Integer analysisStatus;
}
package org.jeecg.modules.dynamicStaticAnalysis.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "AnalysisBatchSaveOrUpdateDTO对象", description = "动静态分析-分析批次保存/更新DTO")
public class AnalysisBatchSaveOrUpdateDTO {
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("分析批次号")
private String analysisBatchCode;
@ApiModelProperty("所属线路id")
private String lightRailId;
@ApiModelProperty("所属线路名称")
private String lightRailName;
@ApiModelProperty("所属线别id")
private String lineAliasId;
@ApiModelProperty("所属线别名称")
private String lineAliasName;
@ApiModelProperty("起始里程")
private BigDecimal startingMileage;
@ApiModelProperty("终点里程")
private BigDecimal endMileage;
@ApiModelProperty("分析类型 1-均值分析 2-峰值分析")
private Integer analysisType;
@ApiModelProperty("容许值差")
private String allowValue;
@ApiModelProperty("派工设置")
private String dispatching;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("检查数据列表")
private List<CheckDataDTO> checkDataList;
@Data
@ApiModel(value = "CheckDataDTO对象", description = "动静态分析-检查数据")
public static class CheckDataDTO {
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("检查批次号")
private String ekCode;
@ApiModelProperty("检查批id")
private String ekId;
@ApiModelProperty("检查数据类型")
private Integer ekType;
@ApiModelProperty("检查日期")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkTime;
@ApiModelProperty("起始里程")
private BigDecimal startingMileage;
@ApiModelProperty("终点里程")
private BigDecimal endMileage;
@ApiModelProperty("备注")
private String remark;
}
}
package org.jeecg.modules.dynamicStaticAnalysis.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.util.Date;
@Data
@ApiModel(value = "CheckBatchVO对象", description = "动静态分析-检查批次VO")
public class CheckBatchDTO {
@ApiModelProperty("检查批次编号")
private String ekCode;
@ApiModelProperty("检查类型")
private Integer ekType;
@ApiModelProperty("所属线路id")
private String lightRailId;
@ApiModelProperty("所属线别id")
private String lineAliasId;
@ApiModelProperty("起始里程")
private BigDecimal startingMileage;
@ApiModelProperty("终点里程")
private BigDecimal endMileage;
@ApiModelProperty("检查日期")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -13,17 +12,17 @@ import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置
* 动静态分析-参数配置-容许值差
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
@Getter
@Setter
@TableName("t_dsa_config_dynamics")
@ApiModel(value = "ConfigDynamics对象", description = "动静态分析-动态分析-参数配置")
public class ConfigDynamics implements Serializable {
@TableName("t_dsa_allow_value_config")
@ApiModel(value = "AllowValueConfig对象", description = "动静态分析-参数配置-容许值差")
public class AllowValueConfig implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -47,18 +46,6 @@ public class ConfigDynamics implements Serializable {
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("速度下限值")
@TableField("speed_floor")
private BigDecimal speedFloor;
@ApiModelProperty("速度上限值")
@TableField("speed_ceiling")
private BigDecimal speedCeiling;
@ApiModelProperty("超限等级")
@TableField("grade")
private Integer grade;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
......@@ -79,6 +66,10 @@ public class ConfigDynamics implements Serializable {
@TableField("direction")
private Integer direction;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("垂直加速度(g)")
@TableField("vertical_acceleration")
private Integer verticalAcceleration;
......@@ -95,10 +86,6 @@ public class ConfigDynamics implements Serializable {
@TableField("curvature_change")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -12,17 +13,17 @@ import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* 动静态分析-分析批次表
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-26
*/
@Getter
@Setter
@TableName("t_dsa_config_static_biz")
@ApiModel(value = "ConfigStaticBiz对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStaticBiz implements Serializable {
@TableName("t_dsa_analysis_batch")
@ApiModel(value = "AnalysisBatch对象", description = "动静态分析-分析批次表")
public class AnalysisBatch implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -46,37 +47,53 @@ public class ConfigStaticBiz implements Serializable {
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("分析批次号")
@TableField("analysis_batch_code")
private String analysisBatchCode;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("所属线路id")
@TableField("light_rail_id")
private String lightRailId;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
// @ApiModelProperty("所属线路名称")
// @TableField("light_rail_name")
// private String lightRailName;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("所属线别id")
@TableField("line_alias_id")
private String lineAliasId;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
// @ApiModelProperty("所属线别名称")
// @TableField("line_alias_name")
// private String lineAliasName;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("起始里程")
@TableField("starting_mileage")
private BigDecimal startingMileage;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("终点里程")
@TableField("end_mileage")
private BigDecimal endMileage;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
@ApiModelProperty("分析类型 1-均值分析 2-峰值分析")
@TableField("analysis_type")
private Integer analysisType;
@ApiModelProperty("容许值差")
@TableField("allow_value")
private String allowValue;
@ApiModelProperty("派工设置")
@TableField("dispatching")
private String dispatching;
@ApiModelProperty("分析状态 0-创建 1-分析中 99-分析完成")
@TableField("analysis_status")
private Integer analysisStatus;
@ApiModelProperty("备注")
@TableField("remark")
private String remark;
}
......@@ -13,17 +13,17 @@ import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表)
* 动静态分析-分析批次-检查数据关联关系
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-26
*/
@Getter
@Setter
@TableName("t_dsa_config_dynamics_biz")
@ApiModel(value = "ConfigDynamicsBiz对象", description = "动静态分析-动态分析-参数配置(业务表)")
public class ConfigDynamicsBiz implements Serializable {
@TableName("t_dsa_analysis_batch_check_data_map")
@ApiModel(value = "AnalysisBatchCheckDataMap对象", description = "动静态分析-分析批次-检查数据关联关系")
public class AnalysisBatchCheckDataMap implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -47,65 +47,53 @@ public class ConfigDynamicsBiz implements Serializable {
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("速度下限值")
@TableField("speed_floor")
private BigDecimal speedFloor;
@ApiModelProperty("分析批次号")
@TableField("analysis_batch_code")
private String analysisBatchCode;
@ApiModelProperty("速度上限值")
@TableField("speed_ceiling")
private BigDecimal speedCeiling;
@ApiModelProperty("分析批id")
@TableField("analysis_batch_id")
private String analysisBatchId;
@ApiModelProperty("超限等级")
@TableField("grade")
private Integer grade;
@ApiModelProperty("检查批次号")
@TableField("ek_code")
private String ekCode;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("检查批id")
@TableField("ek_id")
private String ekId;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("检查数据类型 1-人工静态检查 2-轨检仪静态检查 3-轨检车检查 4-添乘仪检查" )
@TableField("ek_type")
private Integer ekType;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("检查日期")
@TableField("check_time")
private Date checkTime;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("起始里程")
@TableField("starting_mileage")
private BigDecimal startingMileage;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("终点里程")
@TableField("end_mileage")
private BigDecimal endMileage;
@ApiModelProperty("垂直加速度(g)")
@TableField("vertical_acceleration")
private Integer verticalAcceleration;
@ApiModelProperty("容许值差")
@TableField("allow_value")
private String allowValue;
@ApiModelProperty("横向加速度(g)")
@TableField("lateral_acceleration")
private Integer lateralAcceleration;
@ApiModelProperty("派工设置")
@TableField("dispatching")
private String dispatching;
@ApiModelProperty("规矩变化率")
@TableField("track_gauge_change")
private Integer trackGaugeChange;
@ApiModelProperty("分析状态 0-创建 1-分析中 99-分析完成")
@TableField("analysis_status")
private Integer analysisStatus;
@ApiModelProperty("曲率变化率")
@TableField("curvature_change")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
@ApiModelProperty("备注")
@TableField("remark")
private String remark;
}
......@@ -12,17 +12,17 @@ import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* 动静态分析-参数配置-派工配置
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
@Getter
@Setter
@TableName("t_dsa_config_static")
@ApiModel(value = "ConfigStatic对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStatic implements Serializable {
@TableName("t_dsa_dispatching_config")
@ApiModel(value = "DispatchingConfig对象", description = "动静态分析-参数配置-派工配置")
public class DispatchingConfig implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -46,29 +46,17 @@ public class ConfigStatic implements Serializable {
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("派工类型 1-静态检查数据 2-轨检车动态检查数据 3-添乘仪动态检查数据")
@TableField("type")
private Integer type;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("派工原因")
@TableField("reason_label")
private String reasonLabel;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("派工值")
@TableField("reason_value")
private String reasonValue;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
......
package org.jeecg.modules.dynamicStaticAnalysis.mapper;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamics;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AllowValueConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 动静态分析-动态分析-参数配置 Mapper 接口
* 动静态分析-参数配置-容许值差 Mapper 接口
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
public interface ConfigDynamicsMapper extends BaseMapper<ConfigDynamics> {
public interface AllowValueConfigMapper extends BaseMapper<AllowValueConfig> {
}
package org.jeecg.modules.dynamicStaticAnalysis.mapper;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamicsBiz;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatchCheckDataMap;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表) Mapper 接口
* 动静态分析-分析批次-检查数据关联关系 Mapper 接口
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-26
*/
public interface ConfigDynamicsBizMapper extends BaseMapper<ConfigDynamicsBiz> {
public interface AnalysisBatchCheckDataMapMapper extends BaseMapper<AnalysisBatchCheckDataMap> {
}
package org.jeecg.modules.dynamicStaticAnalysis.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchQueryDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.CheckBatchDTO;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatch;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.dynamicStaticAnalysis.vo.AnalysisBatchQueryVO;
import org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO;
import java.util.List;
/**
* <p>
* 动静态分析-分析批次表 Mapper 接口
* </p>
*
* @author hkl
* @since 2023-07-26
*/
public interface AnalysisBatchMapper extends BaseMapper<AnalysisBatch> {
Page<CheckBatchVO> getCheckData(Page<CheckBatchVO> pageData, CheckBatchDTO dto);
Page<AnalysisBatchQueryVO> listRecord(Page<AnalysisBatchQueryVO> pageData, AnalysisBatchQueryDTO dto);
List<CheckBatchVO> listRecordDetail(List<String> analysisBatchIds);
}
package org.jeecg.modules.dynamicStaticAnalysis.mapper;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStatic;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 动静态分析-静态分析-参数配置 Mapper 接口
* </p>
*
* @author hkl
* @since 2023-07-21
*/
public interface ConfigStaticMapper extends BaseMapper<ConfigStatic> {
}
package org.jeecg.modules.dynamicStaticAnalysis.mapper;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStaticBiz;
import org.jeecg.modules.dynamicStaticAnalysis.entity.DispatchingConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 动静态分析-静态分析-参数配置 Mapper 接口
* 动静态分析-参数配置-派工配置 Mapper 接口
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
public interface ConfigStaticBizMapper extends BaseMapper<ConfigStaticBiz> {
public interface DispatchingConfigMapper extends BaseMapper<DispatchingConfig> {
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigStaticBizMapper">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.AllowValueConfigMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigDynamicsMapper">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.AnalysisBatchCheckDataMapMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.AnalysisBatchMapper">
<select id="getCheckData" resultType="org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO">
SELECT
t1.id ek_id,
t1.ek_code,
t1.type ek_type,
t1.end_mileage,
t1.starting_mileage,
t1.light_rail_id,
t1.light_rail_name,
t1.line_alias_id,
t1.line_alias_name,
t1.verify_by,
t1.verify_time,
t1.check_time,
t1.remark
FROM
t_djt_movement_records_master t1
WHERE t1.del_flag = '0'
<if test="dto.ekCode != null and dto.ekCode != ''">
AND t1.ek_code like concat('%',#{dto.ekCode},'%')
</if>
<if test="dto.ekType != null and dto.ekType != ''">
AND t1.type = #{dto.ekType}
</if>
<if test="dto.lightRailId != null and dto.lightRailId != ''">
AND t1.light_rail_id = #{dto.lightRailId}
</if>
<if test="dto.lineAliasId != null and dto.lineAliasId != ''">
AND t1.line_alias_id = #{dto.lineAliasId}
</if>
<if test="dto.checkTime != null">
AND t1.check_time >= #{dto.checkTime}
</if>
<if test="dto.checkTime != null">
AND t1.check_time <![CDATA[ <= ]]> #{dto.checkTime}
</if>
</select>
<select id="listRecord" resultType="org.jeecg.modules.dynamicStaticAnalysis.vo.AnalysisBatchQueryVO">
SELECT
t1.id,
t1.update_by,
t1.update_time,
t1.analysis_batch_code,
t1.light_rail_id,
t1.light_rail_name,
t1.line_alias_id,
t1.line_alias_name,
t1.starting_mileage,
t1.end_mileage,
t1.analysis_type,
t1.allow_value,
t1.dispatching,
t1.analysis_status,
t1.remark
FROM
t_dsa_analysis_batch t1
</select>
<select id="listRecordDetail" resultType="org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO">
SELECT
t1.analysis_batch_id,
t2.id ek_id,
t2.ek_code,
t2.type ek_type,
t2.end_mileage,
t2.starting_mileage,
t2.light_rail_id,
t2.light_rail_name,
t2.line_alias_id,
t2.line_alias_name,
t2.verify_by,
t2.verify_time,
t2.check_time,
t2.remark
FROM t_dsa_analysis_batch_check_data_map t1
LEFT JOIN t_djt_movement_records_master t2 ON t1.ek_id = t2.id AND t2.del_flag = '0'
WHERE t1.analysis_batch_id IN
<foreach collection="analysisBatchIds" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigStaticMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigDynamicsBizMapper">
<mapper namespace="org.jeecg.modules.dynamicStaticAnalysis.mapper.DispatchingConfigMapper">
</mapper>
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表)
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigDynamicsBiz对象", description = "动静态分析-动态分析-参数配置(业务表)")
public class ConfigDynamicsBizDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("创建人")
private String createBy;
@ApiModelProperty("创建日期")
private Date createTime;
@ApiModelProperty("更新人")
private String updateBy;
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("速度下限值")
private BigDecimal speedFloor;
@ApiModelProperty("速度上限值")
private BigDecimal speedCeiling;
@ApiModelProperty("超限等级")
private Integer grade;
@ApiModelProperty("大轨距(mm)")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
private Integer level;
@ApiModelProperty("三角坑(mm)")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
private Integer direction;
@ApiModelProperty("垂直加速度(g)")
private Integer verticalAcceleration;
@ApiModelProperty("横向加速度(g)")
private Integer lateralAcceleration;
@ApiModelProperty("规矩变化率")
private Integer trackGaugeChange;
@ApiModelProperty("曲率变化率")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表)
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigDynamicsBiz对象", description = "动静态分析-动态分析-参数配置(业务表)")
public class ConfigDynamicsBizVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
@TableId("id")
private String id;
@ApiModelProperty("创建人")
@TableField("create_by")
private String createBy;
@ApiModelProperty("创建日期")
@TableField("create_time")
private Date createTime;
@ApiModelProperty("更新人")
@TableField("update_by")
private String updateBy;
@ApiModelProperty("更新时间")
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("速度下限值")
@TableField("speed_floor")
private BigDecimal speedFloor;
@ApiModelProperty("速度上限值")
@TableField("speed_ceiling")
private BigDecimal speedCeiling;
@ApiModelProperty("超限等级")
@TableField("grade")
private Integer grade;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("垂直加速度(g)")
@TableField("vertical_acceleration")
private Integer verticalAcceleration;
@ApiModelProperty("横向加速度(g)")
@TableField("lateral_acceleration")
private Integer lateralAcceleration;
@ApiModelProperty("规矩变化率")
@TableField("track_gauge_change")
private Integer trackGaugeChange;
@ApiModelProperty("曲率变化率")
@TableField("curvature_change")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigDynamics对象", description = "动静态分析-动态分析-参数配置")
public class ConfigDynamicsDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("创建人")
private String createBy;
@ApiModelProperty("创建日期")
private Date createTime;
@ApiModelProperty("更新人")
private String updateBy;
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("速度下限值")
private BigDecimal speedFloor;
@ApiModelProperty("速度上限值")
private BigDecimal speedCeiling;
@ApiModelProperty("超限等级")
private Integer grade;
@ApiModelProperty("大轨距(mm)")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
private Integer level;
@ApiModelProperty("三角坑(mm)")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
private Integer direction;
@ApiModelProperty("垂直加速度(g)")
private Integer verticalAcceleration;
@ApiModelProperty("横向加速度(g)")
private Integer lateralAcceleration;
@ApiModelProperty("规矩变化率")
private Integer trackGaugeChange;
@ApiModelProperty("曲率变化率")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-动态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigDynamics对象", description = "动静态分析-动态分析-参数配置")
public class ConfigDynamicsVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
@TableId("id")
private String id;
@ApiModelProperty("创建人")
@TableField("create_by")
private String createBy;
@ApiModelProperty("创建日期")
@TableField("create_time")
private Date createTime;
@ApiModelProperty("更新人")
@TableField("update_by")
private String updateBy;
@ApiModelProperty("更新时间")
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("速度下限值")
@TableField("speed_floor")
private BigDecimal speedFloor;
@ApiModelProperty("速度上限值")
@TableField("speed_ceiling")
private BigDecimal speedCeiling;
@ApiModelProperty("超限等级")
@TableField("grade")
private Integer grade;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("垂直加速度(g)")
@TableField("vertical_acceleration")
private Integer verticalAcceleration;
@ApiModelProperty("横向加速度(g)")
@TableField("lateral_acceleration")
private Integer lateralAcceleration;
@ApiModelProperty("规矩变化率")
@TableField("track_gauge_change")
private Integer trackGaugeChange;
@ApiModelProperty("曲率变化率")
@TableField("curvature_change")
private Integer curvatureChange;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigStaticBiz对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStaticBizDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("创建人")
private String createBy;
@ApiModelProperty("创建日期")
private Date createTime;
@ApiModelProperty("更新人")
private String updateBy;
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
private Integer level;
@ApiModelProperty("三角坑(mm)")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
private Integer direction;
@ApiModelProperty("高低(mm)")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigStaticBiz对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStaticBizVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
@TableId("id")
private String id;
@ApiModelProperty("创建人")
@TableField("create_by")
private String createBy;
@ApiModelProperty("创建日期")
@TableField("create_time")
private Date createTime;
@ApiModelProperty("更新人")
@TableField("update_by")
private String updateBy;
@ApiModelProperty("更新时间")
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigStatic对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStaticDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("创建人")
private String createBy;
@ApiModelProperty("创建日期")
private Date createTime;
@ApiModelProperty("更新人")
private String updateBy;
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
private Integer level;
@ApiModelProperty("三角坑(mm)")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
private Integer direction;
@ApiModelProperty("高低(mm)")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 动静态分析-静态分析-参数配置
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Getter
@Setter
@ApiModel(value = "ConfigStatic对象", description = "动静态分析-静态分析-参数配置")
public class ConfigStaticVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
@TableId("id")
private String id;
@ApiModelProperty("创建人")
@TableField("create_by")
private String createBy;
@ApiModelProperty("创建日期")
@TableField("create_time")
private Date createTime;
@ApiModelProperty("更新人")
@TableField("update_by")
private String updateBy;
@ApiModelProperty("更新时间")
@TableField("update_time")
private Date updateTime;
@ApiModelProperty("大轨距(mm)")
@TableField("big_track_gauge")
private Integer bigTrackGauge;
@ApiModelProperty("小轨距(mm)")
@TableField("small_track_gauge")
private Integer smallTrackGauge;
@ApiModelProperty("水平(mm)")
@TableField("level")
private Integer level;
@ApiModelProperty("三角坑(mm)")
@TableField("triangular_pit")
private Integer triangularPit;
@ApiModelProperty("轨向(mm)")
@TableField("direction")
private Integer direction;
@ApiModelProperty("高低(mm)")
@TableField("height")
private Integer height;
@ApiModelProperty("是否派工 0-否 1-是(默认值)")
@TableField("is_work")
private Integer isWork;
@ApiModelProperty("是否启用 0-否 1-启用(默认值)")
@TableField("is_enable")
private Integer isEnable;
}
package org.jeecg.modules.dynamicStaticAnalysis.service;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamics;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AllowValueConfig;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 动静态分析-动态分析-参数配置 服务类
* 动静态分析-参数配置-容许值差 服务类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
public interface IConfigDynamicsService extends IService<ConfigDynamics> {
public interface IAllowValueConfigService extends IService<AllowValueConfig> {
}
package org.jeecg.modules.dynamicStaticAnalysis.service;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamicsBiz;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatchCheckDataMap;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表) 服务类
* 动静态分析-分析批次-检查数据关联关系 服务类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-26
*/
public interface IConfigDynamicsBizService extends IService<ConfigDynamicsBiz> {
public interface IAnalysisBatchCheckDataMapService extends IService<AnalysisBatchCheckDataMap> {
}
package org.jeecg.modules.dynamicStaticAnalysis.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchQueryDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchSaveOrUpdateDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.CheckBatchDTO;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatch;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.dynamicStaticAnalysis.vo.AnalysisBatchQueryVO;
import org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO;
import java.util.List;
/**
* <p>
* 动静态分析-分析批次表 服务类
* </p>
*
* @author hkl
* @since 2023-07-26
*/
public interface IAnalysisBatchService extends IService<AnalysisBatch> {
Page<CheckBatchVO> getCheckData(Page<CheckBatchVO> pageData, CheckBatchDTO dto);
void saveRecord(AnalysisBatchSaveOrUpdateDTO dto);
void updateRecord(AnalysisBatchSaveOrUpdateDTO dto);
Page<AnalysisBatchQueryVO> listRecord(Page<AnalysisBatchQueryVO> pageData, AnalysisBatchQueryDTO dto);
void deleteRecord(String id);
List<CheckBatchVO> listRecordDetail(List<String> analysisBatchIds);
}
package org.jeecg.modules.dynamicStaticAnalysis.service;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStatic;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 动静态分析-静态分析-参数配置 服务类
* </p>
*
* @author hkl
* @since 2023-07-21
*/
public interface IConfigStaticService extends IService<ConfigStatic> {
}
package org.jeecg.modules.dynamicStaticAnalysis.service;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStaticBiz;
import org.jeecg.modules.dynamicStaticAnalysis.entity.DispatchingConfig;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 动静态分析-静态分析-参数配置 服务类
* 动静态分析-参数配置-派工配置 服务类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
public interface IConfigStaticBizService extends IService<ConfigStaticBiz> {
public interface IDispatchingConfigService extends IService<DispatchingConfig> {
}
package org.jeecg.modules.dynamicStaticAnalysis.service.impl;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamics;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigDynamicsMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigDynamicsService;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AllowValueConfig;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.AllowValueConfigMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IAllowValueConfigService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 动静态分析-动态分析-参数配置 服务实现类
* 动静态分析-参数配置-容许值差 服务实现类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
@Service
public class ConfigDynamicsServiceImpl extends ServiceImpl<ConfigDynamicsMapper, ConfigDynamics> implements IConfigDynamicsService {
public class AllowValueConfigServiceImpl extends ServiceImpl<AllowValueConfigMapper, AllowValueConfig> implements IAllowValueConfigService {
}
package org.jeecg.modules.dynamicStaticAnalysis.service.impl;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigDynamicsBiz;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigDynamicsBizMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigDynamicsBizService;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatchCheckDataMap;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.AnalysisBatchCheckDataMapMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IAnalysisBatchCheckDataMapService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 动静态分析-动态分析-参数配置(业务表) 服务实现类
* 动静态分析-分析批次-检查数据关联关系 服务实现类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-26
*/
@Service
public class ConfigDynamicsBizServiceImpl extends ServiceImpl<ConfigDynamicsBizMapper, ConfigDynamicsBiz> implements IConfigDynamicsBizService {
public class AnalysisBatchCheckDataMapServiceImpl extends ServiceImpl<AnalysisBatchCheckDataMapMapper, AnalysisBatchCheckDataMap> implements IAnalysisBatchCheckDataMapService {
}
package org.jeecg.modules.dynamicStaticAnalysis.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchQueryDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.AnalysisBatchSaveOrUpdateDTO;
import org.jeecg.modules.dynamicStaticAnalysis.dto.CheckBatchDTO;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatch;
import org.jeecg.modules.dynamicStaticAnalysis.entity.AnalysisBatchCheckDataMap;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.AnalysisBatchCheckDataMapMapper;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.AnalysisBatchMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IAnalysisBatchService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.dynamicStaticAnalysis.vo.AnalysisBatchQueryVO;
import org.jeecg.modules.dynamicStaticAnalysis.vo.CheckBatchVO;
import org.jeecg.modules.utils.BeanCopyUtil;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 动静态分析-分析批次表 服务实现类
* </p>
*
* @author hkl
* @since 2023-07-26
*/
@Service
public class AnalysisBatchServiceImpl extends ServiceImpl<AnalysisBatchMapper, AnalysisBatch> implements IAnalysisBatchService {
@Resource
private AnalysisBatchCheckDataMapMapper analysisBatchCheckDataMapMapper;
@Override
public Page<CheckBatchVO> getCheckData(Page<CheckBatchVO> pageData, CheckBatchDTO dto) {
return this.baseMapper.getCheckData(pageData, dto);
}
@Override
public void saveRecord(AnalysisBatchSaveOrUpdateDTO dto) {
// 主表
AnalysisBatch analysisBatch = BeanUtil.copyProperties(dto, AnalysisBatch.class);
analysisBatch.setId(UUIDGenerator.generate());
analysisBatch.setAnalysisStatus(1); // 1-分析中
// 明细
List<AnalysisBatchCheckDataMap> analysisBatchCheckDataMaps = new ArrayList<>();
List<AnalysisBatchSaveOrUpdateDTO.CheckDataDTO> checkDataList = dto.getCheckDataList();
for (AnalysisBatchSaveOrUpdateDTO.CheckDataDTO checkDataDTO : checkDataList) {
AnalysisBatchCheckDataMap analysisBatchCheckDataMap = new AnalysisBatchCheckDataMap();
analysisBatchCheckDataMap.setId(UUIDGenerator.generate());
analysisBatchCheckDataMap.setAnalysisBatchId(analysisBatch.getId());
analysisBatchCheckDataMap.setAnalysisBatchCode(analysisBatch.getAnalysisBatchCode());
analysisBatchCheckDataMap.setAllowValue(analysisBatch.getAllowValue());
analysisBatchCheckDataMap.setDispatching(analysisBatch.getDispatching());
analysisBatchCheckDataMap.setEkCode(checkDataDTO.getEkCode());
analysisBatchCheckDataMap.setEkId(checkDataDTO.getEkId());
analysisBatchCheckDataMap.setStartingMileage(checkDataDTO.getStartingMileage());
analysisBatchCheckDataMap.setEndMileage(checkDataDTO.getEndMileage());
analysisBatchCheckDataMap.setCheckTime(checkDataDTO.getCheckTime());
analysisBatchCheckDataMap.setEkType(checkDataDTO.getEkType());
analysisBatchCheckDataMap.setAnalysisStatus(1);// 分析中
analysisBatchCheckDataMaps.add(analysisBatchCheckDataMap);
}
this.save(analysisBatch);
for (AnalysisBatchCheckDataMap analysisBatchCheckDataMap : analysisBatchCheckDataMaps) {
analysisBatchCheckDataMapMapper.insert(analysisBatchCheckDataMap);
}
}
@Override
public void updateRecord(AnalysisBatchSaveOrUpdateDTO dto) {
// 主表
AnalysisBatch analysisBatch = BeanUtil.copyProperties(dto, AnalysisBatch.class);
analysisBatch.setAnalysisType(1); // 1-分析中
// 明细
// 1.先删除
LambdaQueryWrapper<AnalysisBatchCheckDataMap> wrapper = Wrappers.lambdaQuery();
wrapper.eq(AnalysisBatchCheckDataMap::getAnalysisBatchId, analysisBatch.getId());
analysisBatchCheckDataMapMapper.delete(wrapper);
// 2.后新增
List<AnalysisBatchCheckDataMap> analysisBatchCheckDataMaps = new ArrayList<>();
List<AnalysisBatchSaveOrUpdateDTO.CheckDataDTO> checkDataList = dto.getCheckDataList();
for (AnalysisBatchSaveOrUpdateDTO.CheckDataDTO checkDataDTO : checkDataList) {
AnalysisBatchCheckDataMap analysisBatchCheckDataMap = new AnalysisBatchCheckDataMap();
analysisBatchCheckDataMap.setId(UUIDGenerator.generate());
analysisBatchCheckDataMap.setAnalysisBatchId(analysisBatch.getId());
analysisBatchCheckDataMap.setAnalysisBatchCode(analysisBatch.getAnalysisBatchCode());
analysisBatchCheckDataMap.setAllowValue(analysisBatch.getAllowValue());
analysisBatchCheckDataMap.setDispatching(analysisBatch.getDispatching());
analysisBatchCheckDataMap.setEkCode(checkDataDTO.getEkCode());
analysisBatchCheckDataMap.setEkId(checkDataDTO.getEkId());
analysisBatchCheckDataMap.setStartingMileage(checkDataDTO.getStartingMileage());
analysisBatchCheckDataMap.setEndMileage(checkDataDTO.getEndMileage());
analysisBatchCheckDataMap.setCheckTime(checkDataDTO.getCheckTime());
analysisBatchCheckDataMap.setEkType(checkDataDTO.getEkType());
analysisBatchCheckDataMap.setAnalysisStatus(1);// 分析中
analysisBatchCheckDataMaps.add(analysisBatchCheckDataMap);
}
this.updateById(analysisBatch);
for (AnalysisBatchCheckDataMap analysisBatchCheckDataMap : analysisBatchCheckDataMaps) {
analysisBatchCheckDataMapMapper.insert(analysisBatchCheckDataMap);
}
}
@Override
public Page<AnalysisBatchQueryVO> listRecord(Page<AnalysisBatchQueryVO> pageData, AnalysisBatchQueryDTO dto) {
return this.baseMapper.listRecord(pageData, dto);
}
@Override
public void deleteRecord(String id) {
// 1.先删除明细
LambdaQueryWrapper<AnalysisBatchCheckDataMap> wrapper = Wrappers.lambdaQuery();
wrapper.eq(AnalysisBatchCheckDataMap::getAnalysisBatchId, id);
analysisBatchCheckDataMapMapper.delete(wrapper);
// 2.删除主信息
this.removeById(id);
}
@Override
public List<CheckBatchVO> listRecordDetail(List<String> analysisBatchIds) {
return this.baseMapper.listRecordDetail(analysisBatchIds);
}
}
package org.jeecg.modules.dynamicStaticAnalysis.service.impl;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStatic;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigStaticMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigStaticService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 动静态分析-静态分析-参数配置 服务实现类
* </p>
*
* @author hkl
* @since 2023-07-21
*/
@Service
public class ConfigStaticServiceImpl extends ServiceImpl<ConfigStaticMapper, ConfigStatic> implements IConfigStaticService {
}
package org.jeecg.modules.dynamicStaticAnalysis.service.impl;
import org.jeecg.modules.dynamicStaticAnalysis.entity.ConfigStaticBiz;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.ConfigStaticBizMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IConfigStaticBizService;
import org.jeecg.modules.dynamicStaticAnalysis.entity.DispatchingConfig;
import org.jeecg.modules.dynamicStaticAnalysis.mapper.DispatchingConfigMapper;
import org.jeecg.modules.dynamicStaticAnalysis.service.IDispatchingConfigService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 动静态分析-静态分析-参数配置 服务实现类
* 动静态分析-参数配置-派工配置 服务实现类
* </p>
*
* @author hkl
* @since 2023-07-21
* @since 2023-07-25
*/
@Service
public class ConfigStaticBizServiceImpl extends ServiceImpl<ConfigStaticBizMapper, ConfigStaticBiz> implements IConfigStaticBizService {
public class DispatchingConfigServiceImpl extends ServiceImpl<DispatchingConfigMapper, DispatchingConfig> implements IDispatchingConfigService {
}
package org.jeecg.modules.dynamicStaticAnalysis.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* <p>
* 动静态分析-分析批次表
* </p>
*
* @author hkl
* @since 2023-07-26
*/
@Data
@ApiModel(value = "AnalysisBatchQueryVO对象", description = "动静态分析-分析批次表")
public class AnalysisBatchQueryVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("更新人")
private String updateBy;
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("分析批次号")
private String analysisBatchCode;
@ApiModelProperty("所属线路id")
private String lightRailId;
@ApiModelProperty("所属线路名称")
private String lightRailName;
@ApiModelProperty("所属线别id")
private String lineAliasId;
@ApiModelProperty("所属线别名称")
private String lineAliasName;
@ApiModelProperty("起始里程")
private BigDecimal startingMileage;
@ApiModelProperty("终点里程")
private BigDecimal endMileage;
@ApiModelProperty("分析类型 1-均值分析 2-峰值分析")
private Integer analysisType;
@ApiModelProperty("容许值差")
private String allowValue;
@ApiModelProperty("派工设置")
private String dispatching;
@ApiModelProperty("分析状态 0-创建 1-分析中 99-分析完成")
private Integer analysisStatus;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("动静态分析-检查批次VO")
private List<CheckBatchVO> checkBatchList;
}
package org.jeecg.modules.dynamicStaticAnalysis.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/*
*
*@author hkl
*@since 2023-07-26
*/
@Data
@ApiModel(value = "CheckBatchVO对象", description = "动静态分析-检查批次VO")
public class CheckBatchVO {
@ApiModelProperty("分析批次id")
private String analysisBatchId;
@ApiModelProperty("检查id")
private String ekId;
@ApiModelProperty("检查批次编号")
private String ekCode;
@ApiModelProperty("检查类型")
private Integer ekType;
@ApiModelProperty("所属线路id")
private String lightRailId;
@ApiModelProperty("所属线路名称")
private String lightRailName;
@ApiModelProperty("所属线别id")
private String lineAliasId;
@ApiModelProperty("所属线别名称")
private String lineAliasName;
@ApiModelProperty("起始里程")
private BigDecimal startingMileage;
@ApiModelProperty("终点里程")
private BigDecimal endMileage;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("检查人姓名")
private String checkBy;
@ApiModelProperty("检查日期")
private Date checkTime;
@ApiModelProperty("审核人姓名")
private String verifyBy;
@ApiModelProperty("审核时间")
private Date verifyTime;
}
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