Commit 84d0639a authored by tianbo's avatar tianbo

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

# Conflicts: # amos-boot-system-tzs/amos-boot-module-cylinder/amos-boot-module-cylinder-biz/src/main/java/com/yeejoin/amos/boot/module/cylinder/flc/biz/service/impl/CylinderAreaDataServiceImpl.java
parents 8aafabca 2fe72a68
......@@ -19,19 +19,19 @@
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- druid -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.alibaba</groupId>-->
<!-- <artifactId>druid-spring-boot-starter</artifactId>-->
<!-- <version>1.1.10</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-jdbc</artifactId>-->
<!-- </dependency>-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.1.0</version>
<version>3.4.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
......
......@@ -41,14 +41,15 @@ import org.typroject.tyboot.core.restful.exception.GlobalExceptionHandler;
@EnableAsync
@EnableEurekaClient
@EnableScheduling
@MapperScan(value = { "org.typroject.tyboot.*.*.face.orm.dao",
@MapperScan(basePackages = { "org.typroject.tyboot.*.*.face.orm.dao",
"com.yeejoin.amos.api.*.face.orm.dao",
"org.typroject.tyboot.face.*.orm.dao*",
"com.yeejoin.amos.boot.module.cylinder.api.mapper",
"com.yeejoin.amos.boot.module.cylinder.flc.api.mapper",
"com.yeejoin.amos.boot.biz.common.dao.mapper" })
@ComponentScan(basePackages = { "org.typroject", "com.yeejoin.amos" }, excludeFilters = @ComponentScan.Filter(
type = FilterType.REGEX,
pattern = "com.yeejoin.amos.boot.biz.common.controller.*|com.yeejoin.amos.boot.module.common.api.core.framework.*"
pattern = "com.yeejoin.amos.component.config.TransactionalUntil|com.yeejoin.amos.boot.biz.common.controller.*|com.yeejoin.amos.boot.module.common.api.core.framework.*"
))
public class OpenapiApplication {
......
package com.yeejoin.amos.api.openapi.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfig {
@Bean
public DataSourceTransactionManager transactionManager(DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
}
//package com.yeejoin.amos.api.openapi.config;
//
//import org.springframework.beans.factory.annotation.Qualifier;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.context.annotation.Primary;
//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
//
//import javax.sql.DataSource;
//
//
//@Configuration
//public class DataSourceConfig {
//// @Bean
//// public DataSourceTransactionManager transactionManager(DataSource dataSource) {
//// return new DataSourceTransactionManager(dataSource);
//// }
//
//// @Bean
//// @Primary
//// public DataSourceTransactionManager openapiTransactionManager(@Qualifier("openapiDataSource") DataSource openapiDataSource) {
//// return new DataSourceTransactionManager(openapiDataSource);
//// }
////
//// @Bean(name = "tzsTransactionManager")
//// public DataSourceTransactionManager tzsTransactionManager(@Qualifier("tzsDataSource") DataSource tzsDataSource) {
//// return new DataSourceTransactionManager(tzsDataSource);
//// }
//}
package com.yeejoin.amos.api.openapi.config;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Arrays;
@Configuration
public class ElasticSearchClientConfig {
@Value("${spring.elasticsearch.rest.uris}")
private String uris;
@Value("${elasticsearch.username}")
private String username;
@Value("${elasticsearch.password}")
private String password;
@Bean(destroyMethod = "close")
@Qualifier("highLevelClient")
public RestHighLevelClient restHighLevelClient() {
final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY,
new UsernamePasswordCredentials(username, password));
try {
HttpHost[] httpHosts = Arrays.stream(uris.split(",")).map(HttpHost::create).toArray(HttpHost[]::new);
RestClientBuilder builder = RestClient.builder(httpHosts);
builder.setHttpClientConfigCallback(httpClientBuilder -> {
httpClientBuilder.disableAuthCaching();
return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
});
// 该方法接收一个RequestConfig.Builder对象,对该对象进行修改后然后返回。
builder.setRequestConfigCallback(requestConfigBuilder -> {
// 连接超时(默认为1秒)
return requestConfigBuilder.setConnectTimeout(5000 * 1000)
// 套接字超时(默认为30秒)//更改客户端的超时限制默认30秒现在改为100*1000分钟
.setSocketTimeout(6000 * 1000);
});
return new RestHighLevelClient(builder);
} catch (Exception e) {
throw new IllegalStateException("Invalid ES nodes " + "property '" + uris + "'", e);
}
}
}
......@@ -48,12 +48,15 @@ public class CylinderController {
private TmCylinderInspectionService cylinderInspectionService;
@Autowired
private TmCylinderTagsService cylinderTagsService;
@Autowired
private CylinderFillingDataValidationService cylinderFillingDataValidationService;
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(value = "气瓶企业信息")
@PostMapping(value = "/unit")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderUnit(@RequestBody List<TmCylinderUnitModel> unitData) throws Exception {
cylinderFillingDataValidationService.validatEcylinderUnit(unitData);
return ResponseHelper.buildResponse(cylinderUnitService.createCylinderUnit(unitData));
}
......@@ -62,6 +65,7 @@ public class CylinderController {
@PostMapping(value = "/info")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderInfo(@RequestBody List<TmCylinderInfoModel> infoData) throws Exception {
cylinderFillingDataValidationService.validateCylinderInfo(infoData);
return ResponseHelper.buildResponse(cylinderInfoService.createCylinderInfo(infoData));
}
......@@ -70,6 +74,7 @@ public class CylinderController {
@PostMapping(value = "/tag")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderTagInfo(@RequestBody List<TmCylinderTagsModel> tagData) throws Exception {
cylinderFillingDataValidationService.validateCylinderTag(tagData);
return ResponseHelper.buildResponse(cylinderTagsService.createCylinderTag(tagData));
}
......@@ -78,6 +83,7 @@ public class CylinderController {
@PostMapping(value = "/inspection")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderInspectionInfo(@RequestBody List<TmCylinderInspectionModel> inspectionData) throws Exception {
cylinderFillingDataValidationService.validateCylinderInspection(inspectionData);
return ResponseHelper.buildResponse(cylinderInspectionService.createCylinderInspection(inspectionData));
}
......@@ -88,8 +94,11 @@ public class CylinderController {
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderFillingInfo(@RequestBody String fillingData) throws Exception {
logger.info("气瓶充装数据"+fillingData);
// logger.info("气瓶充装数据"+fillingData);
JSONObject jsonobject = JSONObject.fromObject(fillingData);
cylinderFillingDataValidationService.validateFilling(jsonobject);
Map<String, Class> classMap = new HashMap<String, Class>();
classMap.put("fillingBefore", TmCylinderFillingModel.class);
classMap.put("filling", TmCylinderFillingRecordModel.class);
......@@ -122,6 +131,7 @@ public class CylinderController {
@PostMapping(value = "/fillingAudit")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> cylinderFillingAudit(@RequestBody List<TmCylinderFillingExamineModel> fillingAuditData) throws Exception {
cylinderFillingDataValidationService.validateCylinderFillingExamineModel(fillingAuditData);
return ResponseHelper.buildResponse(cylinderFillingExamineService.createCylinderFillingExamine(fillingAuditData));
}
......
......@@ -3,7 +3,6 @@ package com.yeejoin.amos.api.openapi.controller;
import com.yeejoin.amos.api.common.restful.utils.ResponseHelper;
import com.yeejoin.amos.api.common.restful.utils.ResponseModel;
import com.yeejoin.amos.api.openapi.face.dto.EquipmentInfoDto;
import com.yeejoin.amos.api.openapi.face.model.ElevatorTechInfoModel;
import com.yeejoin.amos.api.openapi.face.model.EnterpriseInfoModel;
import com.yeejoin.amos.api.openapi.face.model.InspectionDetectionInfoModel;
import com.yeejoin.amos.api.openapi.face.model.InspectionInfoModel;
......@@ -11,14 +10,14 @@ import com.yeejoin.amos.api.openapi.face.model.ProduceInfoModel;
import com.yeejoin.amos.api.openapi.face.model.RegistrationInfoModel;
import com.yeejoin.amos.api.openapi.face.model.StaffQualifInfoModel;
import com.yeejoin.amos.api.openapi.face.model.UnitLicenceModel;
import com.yeejoin.amos.api.openapi.face.orm.entity.ConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.DesignInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.EnclosureInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.OtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.StaffBaseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.SuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.UseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidMaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipOtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidStaffBaseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipSuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipUseInfo;
import com.yeejoin.amos.api.openapi.face.service.ConstructionInfoService;
import com.yeejoin.amos.api.openapi.face.service.CreateCodeService;
import com.yeejoin.amos.api.openapi.face.service.DesignInfoService;
......@@ -130,7 +129,7 @@ public class SuperviseController {
@ApiOperation(value = "新增施工信息")
@PostMapping(value = "/constructionInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveConstructionInfo(@RequestBody List<ConstructionInfo> constructionInfoList) {
public ResponseModel<String> saveConstructionInfo(@RequestBody List<MidConstructionInfo> constructionInfoList) {
if (ValidationUtil.isEmpty(constructionInfoList)) {
throw new BadRequest("上送数据为空");
}
......@@ -149,7 +148,7 @@ public class SuperviseController {
@ApiOperation(value = "新增使用信息")
@PostMapping(value = "/useInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveUseInfo(@RequestBody List<UseInfo> useInfo) throws Exception {
public ResponseModel<String> saveUseInfo(@RequestBody List<MiddEquipUseInfo> useInfo) throws Exception {
return ResponseHelper.buildResponse(useInfoService.saveUseInfo(useInfo));
}
......@@ -157,7 +156,7 @@ public class SuperviseController {
@ApiOperation(value = "新增维保单位信息")
@PostMapping(value = "/maintenanceInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveMaintenanceInfo(@RequestBody List<MaintenanceInfo> maintenanceInfoList) {
public ResponseModel<String> saveMaintenanceInfo(@RequestBody List<MidMaintenanceInfo> maintenanceInfoList) {
if (ValidationUtil.isEmpty(maintenanceInfoList)) {
throw new BadRequest("上送数据为空");
}
......@@ -168,7 +167,7 @@ public class SuperviseController {
@ApiOperation(value = "新增监督管理信息")
@PostMapping(value = "/superviseInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveSuperviseInfo(@RequestBody List<SuperviseInfo> superviseInfo) throws Exception {
public ResponseModel<String> saveSuperviseInfo(@RequestBody List<MiddEquipSuperviseInfo> superviseInfo) throws Exception {
return ResponseHelper.buildResponse(superviseInfoService.saveSuperviseInfo(superviseInfo));
}
......@@ -176,7 +175,7 @@ public class SuperviseController {
@ApiOperation(value = "新增其他信息")
@PostMapping(value = "/otherInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveOtherInfo(@RequestBody List<OtherInfo> otherInfo) throws Exception {
public ResponseModel<String> saveOtherInfo(@RequestBody List<MidEquipOtherInfo> otherInfo) throws Exception {
return ResponseHelper.buildResponse(otherInfoService.saveOtherInfo(otherInfo));
}
......@@ -208,7 +207,7 @@ public class SuperviseController {
@ApiOperation(value = "新增人员基本信息")
@PostMapping(value = "/staffBaseInfo")
@RestEventTrigger(value = "openapiLogEventHandler")
public ResponseModel<String> saveStaffBaseInfo(@RequestBody List<StaffBaseInfo> staffBaseInfo) throws Exception {
public ResponseModel<String> saveStaffBaseInfo(@RequestBody List<MidStaffBaseInfo> staffBaseInfo) throws Exception {
return ResponseHelper.buildResponse(staffBaseInfoService.saveStaffBaseInfo(staffBaseInfo));
}
......
package com.yeejoin.amos.api.openapi.enums;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamBoiler;
import lombok.AllArgsConstructor;
import lombok.Getter;
......
package com.yeejoin.amos.api.openapi.face.dto;
import com.yeejoin.amos.api.openapi.face.orm.entity.DesignInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.OtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProduceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
import com.yeejoin.amos.api.openapi.face.orm.entity.RegistrationInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.SuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.UseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddMainParts;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidMaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipOtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProduceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProtectionDevices;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipSuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipUseInfo;
import lombok.Data;
import java.util.List;
......@@ -23,7 +23,7 @@ public class EquipmentInfoDto {
/**
* 使用信息
*/
private UseInfo useInfo;
private MiddEquipUseInfo useInfo;
/**
* 设计制造
......@@ -33,36 +33,36 @@ public class EquipmentInfoDto {
/**
* 制造信息
*/
private ProduceInfo factoryInfo;
private MidEquipProduceInfo factoryInfo;
/**
* 监管信息
*/
private SuperviseInfo supervisionInfo;
private MiddEquipSuperviseInfo supervisionInfo;
/**
* 注册登记
*/
private RegistrationInfo registerInfo;
private MidEquipRegistrationInfo registerInfo;
/**
* 维保备案
*/
private MaintenanceInfo maintenanceRecordInfo;
private MidMaintenanceInfo maintenanceRecordInfo;
/**
* 其他信息
*/
private OtherInfo otherInfo;
private MidEquipOtherInfo otherInfo;
/**
* 主要零部件
*/
private List<MainParts> mainParts;
private List<MiddMainParts> mainParts;
/**
* 保护装置
*/
private List<ProtectionDevices> protectionDevices;
private List<MidEquipProtectionDevices> protectionDevices;
/**
* 设备参数信息
......
......@@ -14,8 +14,8 @@ public abstract class AbstractBaseModel extends BaseModel{
*
*/
private static final long serialVersionUID = 1L;
protected Date SyncDate;//同步时间 yyyy-MM-dd HH24:mi:ss
protected int SyncState;//同步状态(0-新增 1-更新 2-删除)
protected Date syncDate;//同步时间 yyyy-MM-dd HH24:mi:ss
protected int syncState;//同步状态(0-新增 1-更新 2-删除)
/**
* 对接公司编码
*/
......
package com.yeejoin.amos.api.openapi.face.model;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
* <pre>
* 装备分类 model
* </pre>
*
* @author gwb
* @version $Id: EquipmentCategory.java, v 0.1 2021年10月15日 上午11:23:03 gwb Exp $
*/
@Data
public class EquipmentCategoryModel implements Serializable {
/**
* <pre>
*
* </pre>
*/
private static final long serialVersionUID = 8586846201861760731L;
/**
* 主键
*/
private Long id;
/**
*
*/
private String parentId;
/**
* 装备分类编码
*/
private String code;
/**
* 装备分类名称
*/
private String name;
/**
* 描述
*/
private String description;
/**
* 备注
*/
private String remark;
/**
*
*/
private Date createDate;
/**
* 行业编码
*/
private String industryCode;
}
//package com.yeejoin.amos.api.openapi.face.model;
//
//import java.io.Serializable;
//import java.util.Date;
//
//import lombok.Data;
//
///**
// *
// * <pre>
// * 装备分类 model
// * </pre>
// *
// * @author gwb
// * @version $Id: EquipmentCategory.java, v 0.1 2021年10月15日 上午11:23:03 gwb Exp $
// */
//@Data
//public class EquipmentCategoryModel implements Serializable {
//
// /**
// * <pre>
// *
// * </pre>
// */
// private static final long serialVersionUID = 8586846201861760731L;
//
// /**
// * 主键
// */
// private Long id;
// /**
// *
// */
// private String parentId;
// /**
// * 装备分类编码
// */
// private String code;
// /**
// * 装备分类名称
// */
// private String name;
// /**
// * 描述
// */
// private String description;
// /**
// * 备注
// */
// private String remark;
// /**
// *
// */
// private Date createDate;
// /**
// * 行业编码
// */
// private String industryCode;
//
//}
//
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-锅炉
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamBoilerDto", description="安全追溯-锅炉Dto")
public class EquipTechParamBoilerModel extends AbstractBaseModel {
public class MidEquipTechParamBoilerModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-电梯
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamElevatorDto", description="安全追溯-电梯Dto")
public class EquipTechParamElevatorModel extends AbstractBaseModel {
public class MidEquipTechParamElevatorModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-起重机械
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamLiftingDto", description="安全追溯-起重机械Dto")
public class EquipTechParamLiftingModel extends AbstractBaseModel {
public class MidEquipTechParamLiftingModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-压力管道
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamPipelineDto", description="安全追溯-压力管道Dto")
public class EquipTechParamPipelineModel extends AbstractBaseModel {
public class MidEquipTechParamPipelineModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-游乐设施
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamRidesDto", description="安全追溯-游乐设施Dto")
public class EquipTechParamRidesModel extends AbstractBaseModel {
public class MidEquipTechParamRidesModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-索道
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamRopewayDto", description="安全追溯-索道Dto")
public class EquipTechParamRopewayModel extends AbstractBaseModel {
public class MidEquipTechParamRopewayModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-场内车辆
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamVehicleDto", description="安全追溯-场内车辆Dto")
public class EquipTechParamVehicleModel extends AbstractBaseModel {
public class MidEquipTechParamVehicleModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -7,8 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-压力容器
*
......@@ -18,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipTechParamVesselDto", description="安全追溯-压力容器Dto")
public class EquipTechParamVesselModel extends AbstractBaseModel {
public class MidEquipTechParamVesselModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
......@@ -6,7 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
/**
* 安全追溯-维保备案信息表
*
......@@ -16,7 +16,7 @@ import com.yeejoin.amos.api.openapi.face.model.AbstractBaseModel;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="MidEquipMaintenanceRecordInfoDto", description="安全追溯-维保备案信息表Dto")
public class MaintenanceInfoModel extends AbstractBaseModel {
public class MidMaintenanceInfoModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface ESCylinderFillingRecordRepository extends PagingAndSortingRepository<ESCylinderFillingRecordDto, Long> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface ESCylinderInfoRepository extends PagingAndSortingRepository<ESCylinderInfoDto, Long> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.boot.module.cylinder.api.entity.EsCylinder;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.stereotype.Repository;
/**
* @author fengwang
* @date 2021-09-26.
*/
@Repository
public interface ESCylinderRepository extends PagingAndSortingRepository<EsCylinder, Long> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipmentCategory;
/**
*
* <pre>
* 装备分类 Mapper 接口
* </pre>
*
* @author gwb
* @version $Id: EquipmentCategoryMapper.java, v 0.1 2021年10月15日 下午2:24:49 gwb Exp $
*/
public interface EquipmentCategoryMapper extends BaseMapper<EquipmentCategory> {
}
\ No newline at end of file
//package com.yeejoin.amos.api.openapi.face.orm.dao;
//
//import com.baomidou.mybatisplus.core.mapper.BaseMapper;
//import com.yeejoin.amos.api.openapi.face.orm.entity.EquipmentCategory;
//
///**
// *
// * <pre>
// * 装备分类 Mapper 接口
// * </pre>
// *
// * @author gwb
// * @version $Id: EquipmentCategoryMapper.java, v 0.1 2021年10月15日 下午2:24:49 gwb Exp $
// */
//public interface EquipmentCategoryMapper extends BaseMapper<EquipmentCategory> {
//
//}
\ No newline at end of file
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.ConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidConstructionInfo;
/**
* 特种设备基本信息-施工信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.ConstructionInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface MidConstructionInfoMapper extends BaseMapper<ConstructionInfo> {
public interface MidConstructionInfoMapper extends BaseMapper<MidConstructionInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.OtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipOtherInfo;
/**
* 特种设备基本信息-其他信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.OtherInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface OtherInfoMapper extends BaseMapper<OtherInfo> {
public interface MidEquipOtherInfoMapper extends BaseMapper<MidEquipOtherInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProduceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProduceInfo;
/**
* 特种设备基本信息-制造信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.ProduceInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface ProduceInfoMapper extends BaseMapper<ProduceInfo> {
public interface MidEquipProduceInfoMapper extends BaseMapper<MidEquipProduceInfo> {
}
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.RegistrationInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
......@@ -15,9 +15,9 @@ import java.util.Set;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface RegistrationInfoMapper extends BaseMapper<RegistrationInfo> {
public interface MidEquipRegistrationInfoMapper extends BaseMapper<MidEquipRegistrationInfo> {
@DS("tzs")
@Query("SELECT DISTINCT r.* FROM idx_biz_jg_use_info i, idx_biz_jg_register_info r WHERE i.data_source = 'jg' AND i.RECORD = r.RECORD AND r.EQU_CODE IN :values")
List<RegistrationInfo> getUseInfoByEquipCode(@Param("values") Set<String> sequenceCodes);
List<MidEquipRegistrationInfo> getUseInfoByEquipCode(@Param("values") Set<String> sequenceCodes);
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamBoiler;
import lombok.Data;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamBoiler;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface EquipTechParamBoilerMapper extends BaseMapper<EquipTechParamBoiler> {
public interface MidEquipTechParamBoilerMapper extends BaseMapper<MidEquipTechParamBoiler> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamElevator;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamElevator;
public interface EquipTechParamElevatorMapper extends BaseMapper<EquipTechParamElevator> {
public interface MidEquipTechParamElevatorMapper extends BaseMapper<MidEquipTechParamElevator> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamLifting;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamLifting;
public interface EquipTechParamLiftingMapper extends BaseMapper<EquipTechParamLifting> {
public interface MidEquipTechParamLiftingMapper extends BaseMapper<MidEquipTechParamLifting> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamPipeline;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamPipeline;
public interface EquipTechParamPipelineMapper extends BaseMapper<EquipTechParamPipeline> {
public interface MidEquipTechParamPipelineMapper extends BaseMapper<MidEquipTechParamPipeline> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRides;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamRides;
public interface EquipTechParamRidesMapper extends BaseMapper<EquipTechParamRides> {
public interface MidEquipTechParamRidesMapper extends BaseMapper<MidEquipTechParamRides> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRopeway;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamRopeway;
public interface EquipTechParamRopewayMapper extends BaseMapper<EquipTechParamRopeway> {
public interface MidEquipTechParamRopewayMapper extends BaseMapper<MidEquipTechParamRopeway> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVehicle;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamVehicle;
public interface EquipTechParamVehicleMapper extends BaseMapper<EquipTechParamVehicle> {
public interface MidEquipTechParamVehicleMapper extends BaseMapper<MidEquipTechParamVehicle> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVessel;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamVessel;
public interface EquipTechParamVesselMapper extends BaseMapper<EquipTechParamVessel> {
public interface MidEquipTechParamVesselMapper extends BaseMapper<MidEquipTechParamVessel> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidMaintenanceInfo;
/**
* 特种设备基本信息-维保备案信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface MaintenanceInfoMapper extends BaseMapper<MaintenanceInfo> {
public interface MidMaintenanceInfoMapper extends BaseMapper<MidMaintenanceInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.StaffBaseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidStaffBaseInfo;
/**
* 人员数据信息-基本信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.StaffBaseInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface StaffBaseInfoMapper extends BaseMapper<StaffBaseInfo> {
public interface MidStaffBaseInfoMapper extends BaseMapper<MidStaffBaseInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.StaffQualifInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidStaffQualifInfo;
/**
* 人员数据信息-资质信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.StaffQualifInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface StaffQualifInfoMapper extends BaseMapper<StaffQualifInfo> {
public interface MidStaffQualifInfoMapper extends BaseMapper<MidStaffQualifInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddMainParts;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
......@@ -9,6 +9,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author duanwei
* @date 2023-04-10
*/
public interface MidEquipMainPartsMapper extends BaseMapper<MainParts> {
public interface MiddEquipMainPartsMapper extends BaseMapper<MiddMainParts> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProtectionDevices;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
......@@ -9,6 +9,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author duanwei
* @date 2023-04-10
*/
public interface MidEquipProtectionDevicesMapper extends BaseMapper<ProtectionDevices> {
public interface MiddEquipProtectionDevicesMapper extends BaseMapper<MidEquipProtectionDevices> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.SuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipSuperviseInfo;
/**
* 特种设备基本信息-监督管理信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.SuperviseInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface SuperviseInfoMapper extends BaseMapper<SuperviseInfo> {
public interface MiddEquipSuperviseInfoMapper extends BaseMapper<MiddEquipSuperviseInfo> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.UseInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipUseInfo;
/**
* 特种设备基本信息-使用信息 Mapper 接口
......@@ -9,6 +9,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.UseInfo;
* @author Zhang Yingbin
* @date 2022-07-19
*/
public interface UseInfoMapper extends BaseMapper<UseInfo> {
public interface MiddEquipUseInfoMapper extends BaseMapper<MiddEquipUseInfo> {
}
......@@ -12,6 +12,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.CylinderDateInfo;
* @author gwb
* @version $Id: ElevatorMapper.java, v 0.1 2021年9月30日 下午3:28:31 gwb Exp $
*/
public interface CylinderDateInfoMapper extends BaseMapper<CylinderDateInfo> {
public interface TmCylinderDateInfoMapper extends BaseMapper<CylinderDateInfo> {
}
\ No newline at end of file
......@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.api.openapi.face.model.EquipmentModel;
import com.yeejoin.amos.api.openapi.face.orm.entity.Equipment;
public interface EquipmentMapper extends BaseMapper<Equipment> {
public interface TmEquipmentMapper extends BaseMapper<Equipment> {
IPage<EquipmentModel> page(Page<EquipmentModel> page, Date startTime,Date endTime);
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
@Data
@Accessors(chain = true)
@Document(indexName = "cylinder_filling", shards = 6, replicas = 2)
public class ESCylinderFillingRecordDto {
@Id
private Long sequenceNbr;
//充装单位
@Field(type = FieldType.Text)
private String fillingUnitName;
//出厂编号
@Field(type = FieldType.Text)
private String factoryNum;
//气瓶品种code
@Field(type = FieldType.Integer)
private Integer cylinderVariety;
//气瓶品种名称
@Field(type = FieldType.Text)
private String cylinderVarietyName;
//二维码编号
@Field(type = FieldType.Text)
private String qrCode;
//电子标签编号
@Field(type = FieldType.Text)
private String electronicLabelCode;
//气瓶唯一标识
@Field(type = FieldType.Text)
private String sequenceCode;
//单位内部编号
@Field(type = FieldType.Text)
private String unitInnerCode;
//产权单位名称
@Field(type = FieldType.Text)
private String unitName;
//气瓶状态code
@Field(type = FieldType.Integer)
private Integer cylinderStatus;
//气瓶状态名称
@Field(type = FieldType.Text)
private String cylinderStatusStr;
//充装开始时间
@Field(type = FieldType.Text)
private String fillingStartTime;
//充装结束时间
@Field(type = FieldType.Text)
private String fillingEndTime;
//充装人员姓名
@Field(type = FieldType.Text)
private String fillingUser;
//充装量(Kg)
@Field(type = FieldType.Double)
private Double fillingQuantity;
//室温
@Field(type = FieldType.Double)
private Double temperature;
//异常情况
@Field(type = FieldType.Text)
private String abnormalStr;
//充装前检查人员姓名
@Field(type = FieldType.Text)
private String inspectorUser;
//充装前检查时间
@Field(type = FieldType.Text)
private String inspectionDate;
//充装前检查时间毫秒值
@Field(type = FieldType.Long)
private Long inspectionDateMs;
//充装前检查结果
@Field(type = FieldType.Text)
private String fillingResult;
//重装后检查人员姓名
@Field(type = FieldType.Text)
private String inspector;
//重装后检查时间
@Field(type = FieldType.Text)
private String inspectionDateAfter;
//充装前检查结果毫秒值
@Field(type = FieldType.Long)
private Long inspectionDateAfterMS;
//重装后检查结果
@Field(type = FieldType.Text)
private String checkResult;
//appid
@Field(type = FieldType.Text)
private String appId;
//统一社会信用代码
@Field(type = FieldType.Text)
private String creditCode;
//行政区划代码
@Field(type = FieldType.Text)
private String regionCode;
//appid+气瓶唯一标识
private String appIdAndSequenceCode;
}
package com.yeejoin.amos.api.openapi.face.orm.entity;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
@Data
@Accessors(chain = true)
@Document(indexName = "cylinder_info", shards = 6, replicas = 2)
public class ESCylinderInfoDto {
@Id
private Long sequenceNbr;
//产权单位名称
@Field(type = FieldType.Text)
private String unitName;
//出厂编号
@Field(type = FieldType.Text)
private String factoryNum;
//气瓶品种code
@Field(type = FieldType.Integer)
private Integer cylinderVariety;
//气瓶品种名称
@Field(type = FieldType.Text)
private String cylinderVarietyName;
//二维码标签
@Field(type = FieldType.Text)
private String qrCode;
//电子标签编号
@Field(type = FieldType.Text)
private String electronicLabelCode;
//气瓶状态code
@Field(type = FieldType.Integer)
private Integer cylinderStatus;
//气瓶状态名称
@Field(type = FieldType.Text)
private String cylinderStatusStr;
//充装介质
@Field(type = FieldType.Text)
private String fillingMediaName;
//公称压力
@Field(type = FieldType.Double)
private Double nominalWorkPressure;
//容积
@Field(type = FieldType.Double)
private Double volume;
//制造日期
@Field(type = FieldType.Text)
private String manufacturingDate;
//制造单位
@Field(type = FieldType.Text)
private String manufacturingUnit;
//检验日期
@Field(type = FieldType.Text)
private String inspectionDate;
//检验日期
@Field(type = FieldType.Long)
private Long inspectionDateMs;
//气瓶唯一标识
@Field(type = FieldType.Text)
private String sequenceCode;
//单位内部编号
@Field(type = FieldType.Text)
private String unitInnerCode;
//appid
@Field(type = FieldType.Text)
private String appId;
//统一社会信用代码
@Field(type = FieldType.Text)
private String creditCode;
@Field(type = FieldType.Text)
private String regionCode;
}
package com.yeejoin.amos.api.openapi.face.orm.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
*
* <pre>
* 装备分类
* </pre>
*
* @author gwb
* @version $Id: EquipmentCategory.java, v 0.1 2021年10月15日 上午11:23:03 gwb Exp $
*/
@Data
@TableName("tz_equipment_category")
public class EquipmentCategory implements Serializable {
/**
* <pre>
*
* </pre>
*/
private static final long serialVersionUID = 5715164115243510569L;
/**
* 主键
*/
@TableField("id")
private Long id;
/**
*
*/
@TableField("parent_id")
private String parentId;
/**
* 装备分类编码
*/
@TableField("code")
private String code;
/**
* 装备分类名称
*/
@TableField("name")
private String name;
/**
* 描述
*/
@TableField("description")
private String description;
/**
* 备注
*/
@TableField("remark")
private String remark;
/**
*
*/
@TableField("create_date")
private Date createDate;
/**
* 行业编码
*/
@TableField("industry_code")
private String industryCode;
}
//package com.yeejoin.amos.api.openapi.face.orm.entity;
//
//import java.io.Serializable;
//import java.util.Date;
//
//import com.baomidou.mybatisplus.annotation.TableField;
//import com.baomidou.mybatisplus.annotation.TableName;
//
//import lombok.Data;
//
///**
// *
// * <pre>
// * 装备分类
// * </pre>
// *
// * @author gwb
// * @version $Id: EquipmentCategory.java, v 0.1 2021年10月15日 上午11:23:03 gwb Exp $
// */
//@Data
//@TableName("tz_equipment_category")
//public class EquipmentCategory implements Serializable {
//
//
// /**
// * <pre>
// *
// * </pre>
// */
// private static final long serialVersionUID = 5715164115243510569L;
// /**
// * 主键
// */
// @TableField("id")
// private Long id;
// /**
// *
// */
// @TableField("parent_id")
// private String parentId;
// /**
// * 装备分类编码
// */
// @TableField("code")
// private String code;
// /**
// * 装备分类名称
// */
// @TableField("name")
// private String name;
// /**
// * 描述
// */
// @TableField("description")
// private String description;
// /**
// * 备注
// */
// @TableField("remark")
// private String remark;
// /**
// *
// */
// @TableField("create_date")
// private Date createDate;
// /**
// * 行业编码
// */
// @TableField("industry_code")
// private String industryCode;
//
//}
//
package com.yeejoin.amos.api.openapi.face.orm.entity;
import lombok.Data;
import lombok.experimental.Accessors;
import org.elasticsearch.common.geo.GeoPoint;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
import org.springframework.data.elasticsearch.annotations.GeoPointField;
/**
* @author tb
* @date 2022-04-20.
*/
@Data
@Accessors(chain = true)
@Document(indexName = "cylinder", shards = 6, replicas = 2)
public class EsCylinder {
/**
* 主键
*/
@Id
private Long sequenceNbr;
/**
* 气瓶出厂编号
*/
@Field(type = FieldType.Text)
private String factoryNum;
// /**
// * 所属省
// */
// @Field(type = FieldType.Text)
// private String province;
//
// /**
// * 所属地市
// */
// @Field(type = FieldType.Text)
// private String city;
//
// /**
// * 所属区县
// */
// @Field(type = FieldType.Text)
// private String district;
//
/**
* 所属区域代码
*/
@Field(type = FieldType.Text, searchAnalyzer = "ik_max_word", analyzer = "ik_max_word")
private String regionCode;
/**
* 产权单位名称
*/
@Field(type = FieldType.Text)
private String unitName;
/**
* 经度
*/
@Field(type = FieldType.Double)
private Double longitude;
/**
* 纬度
*/
@Field(type = FieldType.Double)
private Double latitude;
/**
* 经纬度字段
*/
@GeoPointField
private GeoPoint location;
/**
* 地址
*/
@Field(type = FieldType.Text, searchAnalyzer = "ik_max_word", analyzer = "ik_max_word")
private String address;
}
......@@ -17,7 +17,7 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_construction_info")
public class ConstructionInfo extends AbstractEquipBaseEntity {
public class MidConstructionInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -15,7 +15,7 @@ import lombok.experimental.Accessors;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_other_info")
public class OtherInfo extends AbstractEquipBaseEntity {
public class MidEquipOtherInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
......@@ -17,7 +17,7 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_factory_info")
public class ProduceInfo extends AbstractEquipBaseEntity {
public class MidEquipProduceInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
......@@ -19,7 +19,7 @@ import java.util.Date;
@Accessors(chain = true)
@ApiModel(value="MidEquipProtectionDevices对象", description="")
@TableName(value = "mid_equip_protection_devices")
public class ProtectionDevices extends AbstractEquipBaseEntity {
public class MidEquipProtectionDevices extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -17,7 +17,7 @@ import java.math.BigDecimal;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_register_info")
public class RegistrationInfo extends AbstractEquipBaseEntity {
public class MidEquipRegistrationInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
......@@ -18,7 +18,7 @@ import java.math.BigDecimal;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_boiler")
public class EquipTechParamBoiler extends AbstractEquipBaseEntity {
public class MidEquipTechParamBoiler extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -17,7 +17,7 @@ import java.math.BigDecimal;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_elevator")
public class EquipTechParamElevator extends AbstractEquipBaseEntity {
public class MidEquipTechParamElevator extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-起重机械
*
......@@ -22,7 +19,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_lifting")
public class EquipTechParamLifting extends AbstractEquipBaseEntity {
public class MidEquipTechParamLifting extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-压力管道
*
......@@ -22,7 +19,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_pipeline")
public class EquipTechParamPipeline extends AbstractEquipBaseEntity {
public class MidEquipTechParamPipeline extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-游乐设施
*
......@@ -22,7 +19,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_rides")
public class EquipTechParamRides extends AbstractEquipBaseEntity {
public class MidEquipTechParamRides extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-索道
*
......@@ -22,7 +17,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@Data
@Accessors(chain = true)
@TableName(value = "mid_equip_tech_param_ropeway")
public class EquipTechParamRopeway extends AbstractEquipBaseEntity{
public class MidEquipTechParamRopeway extends AbstractEquipBaseEntity{
private static final long serialVersionUID = 1L;
/**
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-场内车辆
*
......@@ -22,7 +19,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_vehicle")
public class EquipTechParamVehicle extends AbstractEquipBaseEntity {
public class MidEquipTechParamVehicle extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 安全追溯-压力容器
*
......@@ -22,7 +19,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_tech_param_vessel")
public class EquipTechParamVessel extends AbstractEquipBaseEntity {
public class MidEquipTechParamVessel extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -17,7 +17,7 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_maintenance_record_info")
public class MaintenanceInfo extends AbstractEquipBaseEntity {
public class MidMaintenanceInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
package com.yeejoin.amos.api.openapi.face.orm.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 lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 人员数据信息-基本信息
*
......@@ -21,7 +18,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_staff_base_info")
public class StaffBaseInfo extends AbstractEquipBaseEntity {
public class MidStaffBaseInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
package com.yeejoin.amos.api.openapi.face.orm.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 lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
/**
* 人员数据信息-资质信息
*
......@@ -21,7 +18,7 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractBaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_staff_qualif_info")
public class StaffQualifInfo extends AbstractEquipBaseEntity {
public class MidStaffQualifInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -15,7 +15,7 @@ import lombok.experimental.Accessors;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_supervision_info")
public class SuperviseInfo extends AbstractEquipBaseEntity {
public class MiddEquipSuperviseInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
private String record;
......
......@@ -18,7 +18,7 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mid_equip_use_info")
public class UseInfo extends AbstractEquipBaseEntity {
public class MiddEquipUseInfo extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -20,7 +20,7 @@ import java.util.Date;
@Accessors(chain = true)
@ApiModel(value="MidEquipMainParts对象", description="")
@TableName(value = "mid_equip_main_parts")
public class MainParts extends AbstractEquipBaseEntity {
public class MiddMainParts extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
......
......@@ -15,7 +15,7 @@ import java.util.Set;
@DS("tzs")
@Component
public class BaseEnterpriseInfoService extends AppBaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper> {
@DS("tzs")
public List<TzBaseEnterpriseInfoDto> getEnterpriseInfoByCreditCode(@Condition(Operator.in) Set<String> useCode) {
return this.queryForList("", false, useCode);
}
......
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.ConstructionInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidConstructionInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.ConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidConstructionInfo;
import com.yeejoin.amos.api.openapi.feign.TzsServiceFeignClient;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -22,7 +22,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class ConstructionInfoService extends AppBaseService<ConstructionInfoModel, ConstructionInfo, MidConstructionInfoMapper> {
public class ConstructionInfoService extends AppBaseService<ConstructionInfoModel, MidConstructionInfo, MidConstructionInfoMapper> {
private static final Logger logger = LogManager.getLogger(ConstructionInfoService.class);
@Autowired
......@@ -32,7 +32,7 @@ public class ConstructionInfoService extends AppBaseService<ConstructionInfoMode
* @param constructionInfo 施工信息
* @return "OK"
*/
public String saveConstructionInfo(ConstructionInfo constructionInfo) {
public String saveConstructionInfo(MidConstructionInfo constructionInfo) {
try {
tzsServiceFeignClient.saveConstructionInfo(constructionInfo);
} catch (Exception e) {
......@@ -51,12 +51,12 @@ public class ConstructionInfoService extends AppBaseService<ConstructionInfoMode
* @return 成功返回“OK”
*/
@Transactional(rollbackFor= {Exception.class})
public String saveConstructionInfo(List<ConstructionInfo> model) {
public String saveConstructionInfo(List<MidConstructionInfo> model) {
//TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("施工信息为空.");
}
for (ConstructionInfo models : model) {
for (MidConstructionInfo models : model) {
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
......@@ -6,7 +6,7 @@ import com.yeejoin.amos.api.openapi.constant.Constant;
import com.yeejoin.amos.api.openapi.face.model.BizTokenModel;
import com.yeejoin.amos.api.openapi.face.model.CylinderDateInfoModel;
import com.yeejoin.amos.api.openapi.face.model.CylinderTableModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.CylinderDateInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.dao.TmCylinderDateInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.CylinderDateInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFilling;
import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingCheck;
......@@ -45,7 +45,7 @@ import java.util.List;
* @version $Id: ElevatorService.java, v 0.1 2021年9月30日 下午3:28:55 gwb Exp $
*/
@Component
public class CylinderDateInfoService extends BaseService<CylinderDateInfoModel, CylinderDateInfo, CylinderDateInfoMapper> {
public class CylinderDateInfoService extends BaseService<CylinderDateInfoModel, CylinderDateInfo, TmCylinderDateInfoMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Autowired
......
......@@ -3,8 +3,8 @@ package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.enums.*;
import com.yeejoin.amos.api.openapi.face.model.*;
import com.yeejoin.amos.api.openapi.face.orm.dao.RegistrationInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.RegistrationInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipRegistrationInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo;
import com.yeejoin.amos.boot.module.cylinder.api.dto.TzBaseEnterpriseInfoDto;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
......@@ -27,7 +27,7 @@ public class CylinderFillingDataValidationService {
@Autowired
BaseEnterpriseInfoService enterpriseInfoService;
@Autowired
RegistrationInfoMapper registrationInfoMapper;
MidEquipRegistrationInfoMapper registrationInfoMapper;
/**
* 企业信息校验
......@@ -39,19 +39,19 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(CylinderUnitFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList())).toString());
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList())).toString());
}
// 2.本次上传数据唯一性校验
errorRows = validateUnique(CylinderUnitFieldEnum.getAllUniqueKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList())).toString());
}
// 3.检查企业统一社会信用代码是否存在
Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject(errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList())).toString());
}
// // 3.检查企业统一社会信用代码是否存在
// Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
// errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject(errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList())).toString());
// }
return true;
}
......@@ -66,25 +66,25 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(CylinderInfoFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList())).toString());
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList())).toString());
}
// 2.本次上传数据唯一性校验
errorRows = validateUnique(CylinderInfoFieldEnum.getAllUniqueKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList())).toString());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
}
// 4.检查企业统一社会信用代码是否存在
Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList())).toString());
}
// // 3.检查气瓶唯一标识码是否存在
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
// }
// // 4.检查企业统一社会信用代码是否存在
// Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
// errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList())).toString());
// }
return true;
}
......@@ -98,7 +98,7 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(CylinderTagFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList())).toString());
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList())).toString());
}
// 2.本次上传数据唯一性校验
......@@ -107,11 +107,11 @@ public class CylinderFillingDataValidationService {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList())).toString());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
}
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
// }
return true;
}
......@@ -120,12 +120,12 @@ public class CylinderFillingDataValidationService {
* @param inspectionData
* @return
*/
boolean validateCylinderInspection(List<TmCylinderInspectionModel> inspectionData) {
public boolean validateCylinderInspection(List<TmCylinderInspectionModel> inspectionData) {
JSONArray jsonArray = JSONArray.fromObject(inspectionData);
// 1.必填校验
List<String> errorRows = validateRequired(CylinderInspectionFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList())).toString());
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList())).toString());
}
// 2.本次上传数据唯一性校验
......@@ -134,11 +134,11 @@ public class CylinderFillingDataValidationService {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList())).toString());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
}
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
// }
return true;
}
......@@ -148,12 +148,12 @@ public class CylinderFillingDataValidationService {
* @param inspectionData
* @return
*/
boolean validateCylinderFillingExamineModel(List<TmCylinderFillingExamineModel> inspectionData) {
public boolean validateCylinderFillingExamineModel(List<TmCylinderFillingExamineModel> inspectionData) {
JSONArray jsonArray = JSONArray.fromObject(inspectionData);
// 1.必填校验
List<String> errorRows = validateRequired(CylinderFillingAuditFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList())).toString());
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList())).toString());
}
// 2.本次上传数据唯一性校验
......@@ -162,11 +162,11 @@ public class CylinderFillingDataValidationService {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList())).toString());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
}
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// throw new BadRequest(JSONArray.fromObject( errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList())).toString());
// }
return true;
}
......@@ -176,6 +176,18 @@ public class CylinderFillingDataValidationService {
*/
public CylinderFillingDataValidationResultModel validateFilling(JSONObject jsonobject) throws ExecutionException, InterruptedException {
CylinderFillingDataValidationResultModel result = new CylinderFillingDataValidationResultModel();
if (ObjectUtils.isEmpty(jsonobject)) {
throw new BadRequest("上传数据不能为空!!!");
}
if (!jsonobject.containsKey("fillingBefore") || ObjectUtils.isEmpty(jsonobject.get("fillingBefore"))) {
throw new BadRequest("充装前检查数据不能为空!!!");
}
if (!jsonobject.containsKey("filling") || ObjectUtils.isEmpty(jsonobject.get("filling"))) {
throw new BadRequest("充装数据不能为空!!!");
}
if (!jsonobject.containsKey("fillingAfter") || ObjectUtils.isEmpty(jsonobject.get("fillingAfter"))) {
throw new BadRequest("充装后复查数据不能为空!!!");
}
CompletableFuture<List<String>> beforeFuture = CompletableFuture.supplyAsync(() -> {
// 异步校验检验前数据
return validateFillingBeforeData(jsonobject.getJSONArray("fillingBefore"));
......@@ -210,25 +222,25 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(FillingBeforeFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList());
return errorRows.stream().map(e -> "必填字段不能为空:" + e).collect(Collectors.toList());
}
// 2.本次上传数据唯一性校验
errorRows = validateUnique(FillingBeforeFieldEnum.getAllUniqueKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
}
// 4.检查企业统一社会信用代码是否存在
Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
}
// // 3.检查气瓶唯一标识码是否存在
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
// }
// // 4.检查企业统一社会信用代码是否存在
// Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
// errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
// }
return null;
}
......@@ -241,25 +253,25 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(FillingRecordFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList());
return errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList());
}
// 2.本次上传数据唯一性校验
errorRows = validateUnique(FillingRecordFieldEnum.getAllUniqueKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
}
// 4.检查企业统一社会信用代码是否存在
Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
}
// // 3.检查气瓶唯一标识码是否存在
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
// }
// // 4.检查企业统一社会信用代码是否存在
// Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
// errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
// }
return null;
}
......@@ -273,25 +285,25 @@ public class CylinderFillingDataValidationService {
// 1.必填校验
List<String> errorRows = validateRequired(FillingAfterFieldEnum.getAllRequireKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "必填字段为空::" + e).collect(Collectors.toList());
return errorRows.stream().map(e -> "必填字段不能为空::" + e).collect(Collectors.toList());
}
// 2.本次上传数据唯一性校验
errorRows = validateUnique(FillingAfterFieldEnum.getAllUniqueKeys(), jsonArray);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "上传数据重复:" + e).collect(Collectors.toList());
}
// 3.检查气瓶唯一标识码是否存在
Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
errorRows = getNotExistSequenceCodes(sequenceCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
}
// 4.检查企业统一社会信用代码是否存在
Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
if (!ObjectUtils.isEmpty(errorRows)) {
return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
}
// // 3.检查气瓶唯一标识码是否存在
// Set<String> sequenceCodes = getAllData(FillingBeforeFieldEnum.sequenceCode.name(), jsonArray);
// errorRows = getNotExistSequenceCodes(sequenceCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "气瓶唯一标识码不存在:" + e).collect(Collectors.toList());
// }
// // 4.检查企业统一社会信用代码是否存在
// Set<String> creditCodes = getAllData(FillingBeforeFieldEnum.creditCode.name(), jsonArray);
// errorRows = getNotExistEnterpriseInfoByCreditCode(creditCodes);
// if (!ObjectUtils.isEmpty(errorRows)) {
// return errorRows.stream().map(e -> "企业统一社会信用代码不存在:" + e).collect(Collectors.toList());
// }
return null;
}
......@@ -306,7 +318,7 @@ public class CylinderFillingDataValidationService {
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject row = jsonArray.getJSONObject(i);
for (String key : keys) {
if (!row.containsKey(key) || row.get(key) == null) {
if (!row.containsKey(key) || ObjectUtils.isEmpty(row.get(key) )) {
errorList.add(row.toString());
}
}
......@@ -375,7 +387,7 @@ public class CylinderFillingDataValidationService {
* @return
*/
public List<String> getNotExistSequenceCodes(Set<String> sequenceCodes) {
List<RegistrationInfo> useInfos = registrationInfoMapper.getUseInfoByEquipCode(sequenceCodes);
List<MidEquipRegistrationInfo> useInfos = registrationInfoMapper.getUseInfoByEquipCode(sequenceCodes);
if (useInfos.size() < sequenceCodes.size()) {
List<String> equipCodes = useInfos.stream().map(e -> e.getEquCode()).collect(Collectors.toList());
return sequenceCodes.stream().filter(c -> !equipCodes.contains(c)).collect(Collectors.toList());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamBoilerModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamBoilerMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamBoiler;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamBoilerModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamBoilerMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamBoiler;
public class EquipTechParamBoilerService extends AppBaseService<EquipTechParamBoilerModel, EquipTechParamBoiler, EquipTechParamBoilerMapper>{
public class EquipTechParamBoilerService extends AppBaseService<MidEquipTechParamBoilerModel, MidEquipTechParamBoiler, MidEquipTechParamBoilerMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamElevatorMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamElevator;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamElevatorMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamElevator;
public class EquipTechParamElevatorService extends AppBaseService<EquipTechParamElevatorMapper, EquipTechParamElevator,EquipTechParamElevatorMapper> {
public class EquipTechParamElevatorService extends AppBaseService<MidEquipTechParamElevatorMapper, MidEquipTechParamElevator, MidEquipTechParamElevatorMapper> {
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamLiftingModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamLiftingMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamLifting;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamLiftingModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamLiftingMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamLifting;
public class EquipTechParamLiftingService extends AppBaseService<EquipTechParamLiftingModel, EquipTechParamLifting, EquipTechParamLiftingMapper> {
public class EquipTechParamLiftingService extends AppBaseService<MidEquipTechParamLiftingModel, MidEquipTechParamLifting, MidEquipTechParamLiftingMapper> {
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamPipelineModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamPipelineMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamPipeline;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamPipelineModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamPipelineMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamPipeline;
public class EquipTechParamPipelineService extends AppBaseService<EquipTechParamPipelineModel, EquipTechParamPipeline, EquipTechParamPipelineMapper>{
public class EquipTechParamPipelineService extends AppBaseService<MidEquipTechParamPipelineModel, MidEquipTechParamPipeline, MidEquipTechParamPipelineMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamRidesModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamRidesMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRides;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamRidesModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamRidesMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamRides;
public class EquipTechParamRidesService extends AppBaseService<EquipTechParamRidesModel, EquipTechParamRides, EquipTechParamRidesMapper>{
public class EquipTechParamRidesService extends AppBaseService<MidEquipTechParamRidesModel, MidEquipTechParamRides, MidEquipTechParamRidesMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamRopewayModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamRopewayMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRopeway;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamRopewayModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamRopewayMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamRopeway;
public class EquipTechParamRopewayService extends AppBaseService<EquipTechParamRopewayModel, EquipTechParamRopeway, EquipTechParamRopewayMapper> {
public class EquipTechParamRopewayService extends AppBaseService<MidEquipTechParamRopewayModel, MidEquipTechParamRopeway, MidEquipTechParamRopewayMapper> {
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamVehicleModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamVehicleMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVehicle;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamVehicleModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamVehicleMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamVehicle;
public class EquipTechParamVehicleService extends AppBaseService<EquipTechParamVehicleModel, EquipTechParamVehicle,EquipTechParamVehicleMapper>{
public class EquipTechParamVehicleService extends AppBaseService<MidEquipTechParamVehicleModel, MidEquipTechParamVehicle, MidEquipTechParamVehicleMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.EquipTechParamVesselModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamVesselMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVessel;
import org.springframework.stereotype.Service;
import com.yeejoin.amos.api.openapi.face.model.MidEquipTechParamVesselModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipTechParamVesselMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipTechParamVessel;
public class EquipTechParamVesselService extends AppBaseService<EquipTechParamVesselModel, EquipTechParamVessel, EquipTechParamVesselMapper>{
public class EquipTechParamVesselService extends AppBaseService<MidEquipTechParamVesselModel, MidEquipTechParamVessel, MidEquipTechParamVesselMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import java.util.List;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.yeejoin.amos.api.openapi.face.model.EquipmentCategoryModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipmentCategoryMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipmentCategory;
/**
*
* <pre>
* 装备分类 服务类
* </pre>
*
* @author gwb
* @version $Id: EquipmentCategoryService.java, v 0.1 2021年10月15日 下午2:28:29 gwb Exp $
*/
@Component
public class EquipmentCategoryService extends
BaseService<EquipmentCategoryModel, EquipmentCategory, EquipmentCategoryMapper>
{
/**
*
* <pre>
* 查询所有装备分类
* </pre>
*
* @return
*/
public List<EquipmentCategoryModel> queryAllForlist()
{
return this.queryForList("id", true);
}
}
//package com.yeejoin.amos.api.openapi.face.service;
//
//import java.util.List;
//
//import org.springframework.stereotype.Component;
//import org.typroject.tyboot.core.rdbms.service.BaseService;
//
//import com.yeejoin.amos.api.openapi.face.model.EquipmentCategoryModel;
//import com.yeejoin.amos.api.openapi.face.orm.dao.EquipmentCategoryMapper;
//import com.yeejoin.amos.api.openapi.face.orm.entity.EquipmentCategory;
//
///**
// *
// * <pre>
// * 装备分类 服务类
// * </pre>
// *
// * @author gwb
// * @version $Id: EquipmentCategoryService.java, v 0.1 2021年10月15日 下午2:28:29 gwb Exp $
// */
//@Component
//public class EquipmentCategoryService extends
// BaseService<EquipmentCategoryModel, EquipmentCategory, EquipmentCategoryMapper>
//{
//
// /**
// *
// * <pre>
// * 查询所有装备分类
// * </pre>
// *
// * @return
// */
// public List<EquipmentCategoryModel> queryAllForlist()
// {
// return this.queryForList("id", true);
// }
//
//}
......@@ -8,15 +8,15 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.api.openapi.face.model.EquipmentModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipmentMapper;
import com.yeejoin.amos.api.openapi.face.orm.dao.TmEquipmentMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.Equipment;
import com.yeejoin.amos.api.openapi.face.orm.entity.PageParam;
@Service
public class EquipmentService extends AppBaseService<EquipmentModel, Equipment, EquipmentMapper> {
public class EquipmentService extends AppBaseService<EquipmentModel, Equipment, TmEquipmentMapper> {
@Autowired
EquipmentMapper equipmentMapper;
TmEquipmentMapper equipmentMapper;
public IPage<EquipmentModel> page(PageParam pageParam, Date startTime,Date endTime) {
Page<EquipmentModel> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.MainPartsModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipMainPartsMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
import com.yeejoin.amos.api.openapi.face.orm.dao.MiddEquipMainPartsMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddMainParts;
/**
* 服务实现类
......@@ -10,6 +10,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
* @author duanwei
* @date 2023-04-10
*/
public class MainPartsServiceImpl extends AppBaseService<MainPartsModel, MainParts, MidEquipMainPartsMapper>{
public class MainPartsServiceImpl extends AppBaseService<MainPartsModel, MiddMainParts, MiddEquipMainPartsMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.MaintenanceInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MaintenanceInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.model.MidMaintenanceInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidMaintenanceInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidMaintenanceInfo;
import com.yeejoin.amos.api.openapi.feign.TzsServiceFeignClient;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -24,7 +24,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class MaintenanceInfoService extends AppBaseService<MaintenanceInfoModel, MaintenanceInfo, MaintenanceInfoMapper> {
public class MaintenanceInfoService extends AppBaseService<MidMaintenanceInfoModel, MidMaintenanceInfo, MidMaintenanceInfoMapper> {
private static final Logger logger = LogManager.getLogger(ConstructionInfoService.class);
......@@ -41,7 +41,7 @@ public class MaintenanceInfoService extends AppBaseService<MaintenanceInfoModel,
* @return 成功返回“OK”
*/
@Transactional(rollbackFor = {Exception.class})
public String saveMaintenanceInfo(MaintenanceInfo maintenanceInfo) {
public String saveMaintenanceInfo(MidMaintenanceInfo maintenanceInfo) {
try {
tzsServiceFeignClient.saveMaintenanceRecordInfo(maintenanceInfo);
} catch (Exception e) {
......@@ -58,18 +58,18 @@ public class MaintenanceInfoService extends AppBaseService<MaintenanceInfoModel,
* @return 成功返回“OK”
*/
@Transactional(rollbackFor = {Exception.class})
public String saveMaintenanceInfo(List<MaintenanceInfoModel> model) {
public String saveMaintenanceInfo(List<MidMaintenanceInfoModel> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("维保备案信息为空.");
}
List<MaintenanceInfo> mainList = new ArrayList<>();
List<MidMaintenanceInfo> mainList = new ArrayList<>();
// List<JgFile> fileList = new ArrayList<>();
// List<JgFile> repairInformList;
for (MaintenanceInfoModel models : model) {
MaintenanceInfo maintenanceInfo = new MaintenanceInfo();
for (MidMaintenanceInfoModel models : model) {
MidMaintenanceInfo maintenanceInfo = new MidMaintenanceInfo();
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.OtherInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.OtherInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.OtherInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipOtherInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipOtherInfo;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
......@@ -18,7 +18,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class OtherInfoService extends AppBaseService<OtherInfoModel, OtherInfo, OtherInfoMapper> {
public class OtherInfoService extends AppBaseService<OtherInfoModel, MidEquipOtherInfo, MidEquipOtherInfoMapper> {
/**
*
......@@ -28,13 +28,13 @@ public class OtherInfoService extends AppBaseService<OtherInfoModel, OtherInfo,
* @return 成功返回“OK”
*/
@Transactional(rollbackFor= {Exception.class})
public String saveOtherInfo(List<OtherInfo> model) {
public String saveOtherInfo(List<MidEquipOtherInfo> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("其他信息为空.");
}
for (OtherInfo models : model) {
for (MidEquipOtherInfo models : model) {
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.api.openapi.enums.JgFileAttributeEnum;
import com.yeejoin.amos.api.openapi.enums.JgFileObjectEnum;
import com.yeejoin.amos.api.openapi.face.model.ProduceInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.ProduceInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.JgFile;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProduceInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipProduceInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProduceInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
......@@ -23,7 +18,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class ProduceInfoService extends AppBaseService<ProduceInfoModel, ProduceInfo, ProduceInfoMapper> {
public class ProduceInfoService extends AppBaseService<ProduceInfoModel, MidEquipProduceInfo, MidEquipProduceInfoMapper> {
@Autowired
private JgFileService fileService;
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.ProtectionDevicesModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipProtectionDevicesMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
import com.yeejoin.amos.api.openapi.face.orm.dao.MiddEquipProtectionDevicesMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipProtectionDevices;
/**
* 服务实现类
......@@ -10,6 +10,6 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
* @author duanwei
* @date 2023-04-10
*/
public class ProtectionDevicesServiceImpl extends AppBaseService<ProtectionDevicesModel, ProtectionDevices, MidEquipProtectionDevicesMapper>{
public class ProtectionDevicesServiceImpl extends AppBaseService<ProtectionDevicesModel, MidEquipProtectionDevices, MiddEquipProtectionDevicesMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.api.openapi.enums.JgFileAttributeEnum;
import com.yeejoin.amos.api.openapi.enums.JgFileObjectEnum;
import com.yeejoin.amos.api.openapi.face.model.RegistrationInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.RegistrationInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.JgFile;
import com.yeejoin.amos.api.openapi.face.orm.entity.RegistrationInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipRegistrationInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
......@@ -24,7 +19,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class RegistrationInfoService extends AppBaseService<RegistrationInfoModel, RegistrationInfo, RegistrationInfoMapper> {
public class RegistrationInfoService extends AppBaseService<RegistrationInfoModel, MidEquipRegistrationInfo, MidEquipRegistrationInfoMapper> {
@Autowired
private JgFileService fileService;
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.StaffBaseInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.StaffBaseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.StaffBaseInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidStaffBaseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidStaffBaseInfo;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
......@@ -18,7 +18,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class StaffBaseInfoService extends AppBaseService<StaffBaseInfoModel, StaffBaseInfo, StaffBaseInfoMapper> {
public class StaffBaseInfoService extends AppBaseService<StaffBaseInfoModel, MidStaffBaseInfo, MidStaffBaseInfoMapper> {
/**
*
......@@ -28,13 +28,13 @@ public class StaffBaseInfoService extends AppBaseService<StaffBaseInfoModel, Sta
* @return 成功返回“OK”
*/
@Transactional(rollbackFor= {Exception.class})
public String saveStaffBaseInfo(List<StaffBaseInfo> model) {
public String saveStaffBaseInfo(List<MidStaffBaseInfo> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("人员基本信息为空.");
}
for (StaffBaseInfo models : model) {
for (MidStaffBaseInfo models : model) {
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.api.openapi.enums.JgFileAttributeEnum;
import com.yeejoin.amos.api.openapi.enums.JgFileObjectEnum;
import com.yeejoin.amos.api.openapi.face.model.StaffQualifInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.StaffQualifInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.JgFile;
import com.yeejoin.amos.api.openapi.face.orm.entity.StaffQualifInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidStaffQualifInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidStaffQualifInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
......@@ -24,7 +19,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class StaffQualifInfoService extends AppBaseService<StaffQualifInfoModel, StaffQualifInfo, StaffQualifInfoMapper> {
public class StaffQualifInfoService extends AppBaseService<StaffQualifInfoModel, MidStaffQualifInfo, MidStaffQualifInfoMapper> {
@Autowired
private JgFileService fileService;
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.SuperviseInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.SuperviseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.SuperviseInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MiddEquipSuperviseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipSuperviseInfo;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
......@@ -18,7 +18,7 @@ import java.util.List;
* @date 2022-07-19
*/
@Component
public class SuperviseInfoService extends AppBaseService<SuperviseInfoModel, SuperviseInfo, SuperviseInfoMapper> {
public class SuperviseInfoService extends AppBaseService<SuperviseInfoModel, MiddEquipSuperviseInfo, MiddEquipSuperviseInfoMapper> {
/**
*
......@@ -28,12 +28,12 @@ public class SuperviseInfoService extends AppBaseService<SuperviseInfoModel, Sup
* @return 成功返回“OK”
*/
@Transactional(rollbackFor= {Exception.class})
public String saveSuperviseInfo(List<SuperviseInfo> model) {
public String saveSuperviseInfo(List<MiddEquipSuperviseInfo> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("监督管理信息为空.");
}
for (SuperviseInfo models : model) {
for (MiddEquipSuperviseInfo models : model) {
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.google.common.collect.Lists;
import com.yeejoin.amos.api.openapi.face.model.*;
import com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderFillingRecordRepository;
import com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderInfoRepository;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.*;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StopWatch;
import org.typroject.tyboot.core.foundation.utils.Bean;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFilling;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingCheck;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingExamine;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingRecord;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInfo;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInspection;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderTags;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderUnit;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderUnitVideo;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderUnitMapper;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Slf4j
@Component
@DS("tzs")
public class SyncCylinderDataService
// extends ServiceImpl implements IService
{
@DS("tzs")
public void syncCylinderUnit(List<CylinderUnitDto> cylinderUnitDto) {
/**
* 气瓶企业信息
*/
@Autowired
private CylinderUnitMapper cylinderUnitMapper;
/**
* 气瓶基本信息
*/
@Autowired
private CylinderInfoMapper cylinderInfoMapper;
/**
* 气瓶充装信息--充装前检查
*/
@Autowired
private CylinderFillingMapper cylinderFillingMapper;
/**
* 液化气体气瓶充装信息-充装后复查
*/
@Autowired
private CylinderFillingCheckMapper cylinderFillingCheckMapper;
@Autowired
private CylCylinderFillingCheckMapper cylCylinderFillingCheckMapper;
/**
* 液化气体气瓶充装信息审核
*/
@Autowired
private CylinderFillingExamineMapper cylinderFillingExamineMapper;
/**
* 气瓶标签信息
*/
@Autowired
private CylinderTagsMapper cylinderTagsMapper;
/**
* 气瓶检验信息
*/
@Autowired
private CylinderInspectionMapper cylinderInspectionMapper;
@Autowired
CylinderFillingRecordMapper cylinderFillingRecordMapper;
@Autowired
ESCylinderFillingRecordRepository esCylinderFillingRecordRepository;
@Autowired
ESCylinderInfoRepository esCylinderInfoRepository;
public void syncCylinderUnit(List<TmCylinderUnitModel> cylinderUnitDto) {
// List<CylinderUnit> cylinderUnits = Bean.toModels(cylinderUnitDto,CylinderUnit.class);
// LambdaQueryWrapper<CylinderUnit> wrapper = new LambdaQueryWrapper<>();
// List<CylinderUnit> cylinderUnitList = this.getBaseMapper().selectList(wrapper);
List<CylinderUnit> cylinderUnitList = Bean.toModels(cylinderUnitDto,CylinderUnit.class);
cylinderUnitMapper.saveOrUpdateBatch(cylinderUnitList);
}
public void syncCylinderInfo(final List<TmCylinderInfoModel> cylinderInfoDto) {
List<CylinderInfo> cylinderUnitList = Bean.toModels(cylinderInfoDto,CylinderInfo.class);
cylinderInfoMapper.saveOrUpdateBatch(cylinderUnitList);
}
public void syncCylinderFillingExamine(List<TmCylinderFillingExamineModel> cylinderFillingExamineDto) {
List<CylinderFillingExamine> cylinderFillingExamineList = Bean.toModels(cylinderFillingExamineDto,
CylinderFillingExamine.class);
cylinderFillingExamineMapper.saveOrUpdateBatch(cylinderFillingExamineList);
}
public void syncCylinderFillingRecord(List<TmCylinderFillingRecordModel> cylinderFillingRecordDtos) {
List<CylinderFillingRecord> cylinderFillingRecordList = Bean.toModels(cylinderFillingRecordDtos, CylinderFillingRecord.class);
cylCylinderFillingCheckMapper.batchInsertOrUpdate(cylinderFillingRecordList);
}
public void syncCylinderInspection(List<TmCylinderInspectionModel> cylinderInspectionDto) {
List<CylinderInspection> cylinderInspectionList = Bean.toModels(cylinderInspectionDto, CylinderInspection.class);
cylinderInspectionMapper.saveOrUpdateBatch(cylinderInspectionList);
}
public void syncCylinderTag(List<TmCylinderTagsModel> cylinderTagsDtos) {
List<CylinderTags> cylinderTagsList = Bean.toModels(cylinderTagsDtos, CylinderTags.class);
cylinderTagsMapper.saveOrUpdateBatch(cylinderTagsList);
}
public void syncCylinderFillingBefore(List<TmCylinderFillingModel> cylinderFillingDtos) {
List<CylinderFilling> cylinderFillingList = Bean.toModels(cylinderFillingDtos, CylinderFilling.class);
cylCylinderFillingCheckMapper.saveAndBatchInsert(cylinderFillingList);
}
public void syncCylinderFillingAfter(List<TmCylinderFillingCheckModel> cylinderFillingCheckDtos) {
List<CylinderFillingCheck> cylinderFillingChecList = Bean.toModels(cylinderFillingCheckDtos, CylinderFillingCheck.class);
cylinderFillingCheckMapper.saveOrUpdateByCondition(cylinderFillingChecList);
}
public void createCylinderFillingRecord(List<ESCylinderFillingRecordDto> cylinderFillingRecord) {
if (!ObjectUtils.isEmpty(cylinderFillingRecord)) {
List<String> appIds = cylinderFillingRecord.stream().map(ESCylinderFillingRecordDto::getAppId).collect(Collectors.toList());
List<String> sequenceCodeS = cylinderFillingRecord.stream().map(ESCylinderFillingRecordDto::getSequenceCode).collect(Collectors.toList());
List<ESCylinderFillingRecordDto> cylinderFillingRecordInfo = cylinderFillingRecordMapper.getCylinderFillingRecordInfo(appIds, sequenceCodeS);
cylinderFillingRecord.stream().map(item -> {
List<ESCylinderFillingRecordDto> collect = cylinderFillingRecordInfo.stream().filter(e -> item.getAppIdAndSequenceCode().equals(e.getAppIdAndSequenceCode())).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(collect)) {
item.setUnitName(collect.get(0).getUnitName());
item.setFactoryNum(collect.get(0).getFactoryNum());
item.setCylinderVariety(collect.get(0).getCylinderVariety());
item.setCylinderVarietyName(collect.get(0).getCylinderVarietyName());
item.setUnitInnerCode(collect.get(0).getUnitInnerCode());
item.setSequenceCode(collect.get(0).getSequenceCode());
item.setQrCode(collect.get(0).getQrCode());
item.setElectronicLabelCode(collect.get(0).getElectronicLabelCode());
item.setAppId(collect.get(0).getAppId());
item.setCreditCode(collect.get(0).getCreditCode());
item.setRegionCode(collect.get(0).getRegionCode());
try {
item.setInspectionDateMs(ObjectUtils.isEmpty(item.getFillingStartTime()) ? 0L : DateUtils.dateParseWithPattern(item.getFillingStartTime()).getTime());
item.setInspectionDateAfterMS(ObjectUtils.isEmpty(item.getFillingEndTime()) ? 0L : DateUtils.dateParseWithPattern(item.getFillingEndTime()).getTime());
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
return item;
}).collect(Collectors.toList());
saveCylinderFillingRecord2ES(cylinderFillingRecord);
}
}
public void saveCylinderFillingRecord2ES(List<ESCylinderFillingRecordDto> records) {
List<String> ids = new ArrayList<>();
for (ESCylinderFillingRecordDto record : records) {
CylinderFillingRecord cylinderFillingRecord = new CylinderFillingRecord();
BeanUtils.copyProperties(record, cylinderFillingRecord);
ids.add(String.valueOf(record.getSequenceNbr()));
}
esCylinderFillingRecordRepository.saveAll(records);
cylinderFillingRecordMapper.updateCylinderFillingToEsStatus(ids);
}
public void createCylinderInfo2ES(TmCylinderInfoModel cylinderInfoModel) {
CylinderInfoDto cylinderInfoDto = Bean.toModel(cylinderInfoModel, new CylinderInfoDto());
List<ESCylinderInfoDto> esCylinderInfoDto = new ArrayList<>();
ESCylinderInfoDto esCylinderInfo = new ESCylinderInfoDto();
BeanUtils.copyProperties(cylinderInfoDto, esCylinderInfo);
esCylinderInfoDto.add(esCylinderInfo);
try {
esCylinderInfo.setInspectionDateMs(ObjectUtils.isEmpty(esCylinderInfo.getInspectionDate()) ? 0L : DateUtils.dateParse(esCylinderInfo.getInspectionDate(), DateUtils.DATE_TIME_PATTERN).getTime());
} catch (ParseException e) {
throw new RuntimeException(e);
}
List<String> ids = Lists.newArrayList();
StopWatch stopWatch = new StopWatch();
stopWatch.start();
esCylinderInfoRepository.saveAll(esCylinderInfoDto);
ids.add(String.valueOf(cylinderInfoDto.getSequenceNbr()));
stopWatch.stop();
if (log.isInfoEnabled()) {
log.info("存入es耗时:{} 秒", stopWatch.getTotalTimeSeconds());
}
StopWatch stopWatch1 = new StopWatch();
stopWatch1.start();
cylinderInfoMapper.updateEsCylinderInfoStatus(ids);
stopWatch1.stop();
if (log.isInfoEnabled()) {
log.info("更新业务数据耗时:{} 秒", stopWatch1.getTotalTimeSeconds());
}
}
}
package com.yeejoin.amos.api.openapi.face.service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.common.restful.utils.ApplicationContextUtils;
import com.yeejoin.amos.api.openapi.constant.Constant;
import com.yeejoin.amos.api.openapi.enums.EightCategorySubformEnum;
import com.yeejoin.amos.api.openapi.enums.EquipTypeEnum;
import com.yeejoin.amos.api.openapi.face.model.BizTokenModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamBoilerMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.AbstractEquipBaseEntity;
import com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRopeway;
import net.sf.json.JSONObject;
import org.apache.catalina.core.ApplicationContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.ui.context.support.UiApplicationContextUtils;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
......
......@@ -4,12 +4,16 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderFillingCheckDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderFillingDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.yeejoin.amos.api.openapi.constant.Constant;
......@@ -32,12 +36,15 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingCheck;
public class TmCylinderFillingCheckService extends BaseService<TmCylinderFillingCheckModel, TmCylinderFillingCheck, TmCylinderFillingCheckMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderFillingAfter(List<TmCylinderFillingCheckModel> model) {
// TODO Auto-generated method stub
// if (ValidationUtil.isEmpty(model))
// throw new BadRequest("气瓶标签信息为空.");
syncCylinderFillingAfter(model);
for (TmCylinderFillingCheckModel cylinderFillingCheckModel : model) {
cylinderFillingCheckModel.setRecDate(new Date());
cylinderFillingCheckModel.setAppId(getAppId());
......@@ -46,6 +53,10 @@ public class TmCylinderFillingCheckService extends BaseService<TmCylinderFilling
return "OK";
}
private void syncCylinderFillingAfter(List<TmCylinderFillingCheckModel> model) {
syncCylinderDataService.syncCylinderFillingAfter(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
......
......@@ -4,12 +4,17 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.api.openapi.face.model.TmCylinderUnitModel;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderFillingExamineDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
......@@ -34,12 +39,16 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingExamine;
public class TmCylinderFillingExamineService extends BaseService<TmCylinderFillingExamineModel, TmCylinderFillingExamine, TmCylinderFillingExamineMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderFillingExamine(List<TmCylinderFillingExamineModel> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model))
throw new BadRequest("液化气体气瓶充装信息审核为空.");
syncCylinderFillingExamine(model);
for (TmCylinderFillingExamineModel cylinderFillingExamineModel : model) {
cylinderFillingExamineModel.setRecDate(new Date());
cylinderFillingExamineModel.setAppId(getAppId());
......@@ -53,4 +62,8 @@ public class TmCylinderFillingExamineService extends BaseService<TmCylinderFilli
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
return bizTokenModel.getAppId();
}
private void syncCylinderFillingExamine(List<TmCylinderFillingExamineModel> model ) {
syncCylinderDataService.syncCylinderFillingExamine(model);
}
}
package com.yeejoin.amos.api.openapi.face.service;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderFillingRecordRepository;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderFillingRecordDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingRecord;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderFillingRecordMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.yeejoin.amos.api.openapi.constant.Constant;
......@@ -32,12 +47,22 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingRecord;
public class TmCylinderFillingRecordService extends BaseService<TmCylinderFillingRecordModel, TmCylinderFillingRecord, TmCylinderFillingRecordMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
CylinderFillingRecordMapper cylinderFillingRecordMapper;
@Autowired
ESCylinderFillingRecordRepository esCylinderFillingRecordRepository;
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderFilling(List<TmCylinderFillingRecordModel> model) {
// TODO Auto-generated method stub
// if (ValidationUtil.isEmpty(model))
// throw new BadRequest("气瓶标签信息为空.");
syncCylinderFilling(model);
for (TmCylinderFillingRecordModel cylinderFillingRecordModel : model) {
cylinderFillingRecordModel.setRecDate(new Date());
cylinderFillingRecordModel.setAppId(getAppId());
......@@ -46,6 +71,14 @@ public class TmCylinderFillingRecordService extends BaseService<TmCylinderFillin
return "OK";
}
@DS("tzs")
private void syncCylinderFilling(List<TmCylinderFillingRecordModel> model) {
syncCylinderDataService.syncCylinderFillingRecord(model);
ArrayList<ESCylinderFillingRecordDto> models = Bean.toModels(model, ESCylinderFillingRecordDto.class);
syncCylinderDataService.createCylinderFillingRecord(models);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
......@@ -55,4 +88,5 @@ public class TmCylinderFillingRecordService extends BaseService<TmCylinderFillin
public List<String> getDateList() {
return baseMapper.getDateList();
}
}
......@@ -4,12 +4,18 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.api.openapi.face.model.TmCylinderUnitModel;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderFillingDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.yeejoin.amos.api.openapi.constant.Constant;
......@@ -32,12 +38,16 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFilling;
public class TmCylinderFillingService extends BaseService<TmCylinderFillingModel, TmCylinderFilling, TmCylinderFillingMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderFillingBefore(List<TmCylinderFillingModel> model) {
// TODO Auto-generated method stub
// if (ValidationUtil.isEmpty(model))
// throw new BadRequest("气瓶标签信息为空.");
syncCylinderFillingBefore(model);
for (TmCylinderFillingModel cylinderFillingModel : model) {
cylinderFillingModel.setRecDate(new Date());
cylinderFillingModel.setAppId(getAppId());
......@@ -46,11 +56,15 @@ public class TmCylinderFillingService extends BaseService<TmCylinderFillingModel
return "OK";
}
private void syncCylinderFillingBefore(List<TmCylinderFillingModel> model) {
syncCylinderDataService.syncCylinderFillingBefore(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
return bizTokenModel.getAppId();
}
}
package com.yeejoin.amos.api.openapi.face.service;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.google.common.collect.Lists;
import com.yeejoin.amos.api.openapi.face.model.TmCylinderUnitModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderInfoRepository;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderInfoMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StopWatch;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
......@@ -31,25 +47,44 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderInfo;
* @version $Id: ElevatorService.java, v 0.1 2021年9月30日 下午3:28:55 gwb Exp $
*/
@Component
@Slf4j
public class TmCylinderInfoService extends BaseService<TmCylinderInfoModel, TmCylinderInfo, TmCylinderInfoMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
CylinderInfoMapper cylinderInfoMapper;
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@Autowired
ESCylinderInfoRepository esCylinderInfoRepository;
@DSTransactional
public String createCylinderInfo(List<TmCylinderInfoModel> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model))
throw new BadRequest("气瓶基本信息数据为空.");
syncCylinderInfo(model);
for (TmCylinderInfoModel cylinderInfoModel : model) {
cylinderInfoModel.setRecDate(new Date());
cylinderInfoModel.setAppId(getAppId());
syncCylinderDataService.createCylinderInfo2ES(cylinderInfoModel);
this.createWithModel(cylinderInfoModel);
}
return "OK";
}
private void syncCylinderInfo(List<TmCylinderInfoModel> model ) {
syncCylinderDataService.syncCylinderInfo(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
return bizTokenModel.getAppId();
}
}
......@@ -4,12 +4,16 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInspectionDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
......@@ -34,11 +38,14 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderInspection;
public class TmCylinderInspectionService extends BaseService<TmCylinderInspectionModel, TmCylinderInspection, TmCylinderInspectionMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderInspection(List<TmCylinderInspectionModel> model) {
if (ValidationUtil.isEmpty(model))
throw new BadRequest("气瓶检验信息为空.");
syncCylinderInspectionModel(model);
for (TmCylinderInspectionModel cylinderInspectionModel : model) {
cylinderInspectionModel.setRecDate(new Date());
cylinderInspectionModel.setAppId(getAppId());
......@@ -47,6 +54,10 @@ public class TmCylinderInspectionService extends BaseService<TmCylinderInspectio
return "OK";
}
private void syncCylinderInspectionModel(List<TmCylinderInspectionModel> model) {
syncCylinderDataService.syncCylinderInspection(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
......
......@@ -4,12 +4,16 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInspectionDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderTagsDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
......@@ -34,12 +38,15 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderTags;
public class TmCylinderTagsService extends BaseService<TmCylinderTagsModel, TmCylinderTags, TmCylinderTagsMapper> {
@Autowired
private RedisTemplate redisTemplate;
@Transactional(rollbackFor= {Exception.class})
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@DSTransactional
public String createCylinderTag(List<TmCylinderTagsModel> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model))
throw new BadRequest("气瓶标签信息为空.");
syncCylinderTag(model);
for (TmCylinderTagsModel cylinderTagsModel : model) {
cylinderTagsModel.setRecDate(new Date());
cylinderTagsModel.setAppId(getAppId());
......@@ -48,6 +55,10 @@ public class TmCylinderTagsService extends BaseService<TmCylinderTagsModel, TmCy
return "OK";
}
private void syncCylinderTag(List<TmCylinderTagsModel> model) {
syncCylinderDataService.syncCylinderTag(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
BizTokenModel bizTokenModel = (BizTokenModel) redisTemplate.opsForValue().get(tokenKey);
......
......@@ -4,6 +4,7 @@ package com.yeejoin.amos.api.openapi.face.service;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
......@@ -39,11 +40,12 @@ public class TmCylinderUnitService extends BaseService<TmCylinderUnitModel, TmCy
private RedisTemplate redisTemplate;
@Autowired
private SyncCylinderDataService syncCylinderDataService;
@Transactional(rollbackFor= {Exception.class})
@DSTransactional
public String createCylinderUnit(List<TmCylinderUnitModel> model) {
if (ValidationUtil.isEmpty(model))
throw new BadRequest("气瓶企业信息数据为空.");
syncCylinderUnitModel(model);
for (TmCylinderUnitModel cylinderUnitModel : model) {
cylinderUnitModel.setRecDate(new Date());
cylinderUnitModel.setAppId(getAppId());
......@@ -52,8 +54,7 @@ public class TmCylinderUnitService extends BaseService<TmCylinderUnitModel, TmCy
return "OK";
}
private void syncCylinderUnitModel(List<TmCylinderUnitModel> model ) {
List<CylinderUnitDto> cylinderUnitDto = Bean.toModels(model,CylinderUnitDto.class);
syncCylinderDataService.syncCylinderUnit(cylinderUnitDto);
syncCylinderDataService.syncCylinderUnit(model);
}
private String getAppId() {
String tokenKey = Redis.genKey(Constant.TOKEN_PREFIX,RequestContext.getToken());
......
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.dto.EquipmentInfoDto;
import com.yeejoin.amos.api.openapi.face.model.UnitLicenceModel;
import com.yeejoin.amos.api.openapi.face.model.UseInfoModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.UseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.UseInfo;
import com.yeejoin.amos.api.openapi.face.orm.dao.MiddEquipUseInfoMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MiddEquipUseInfo;
import com.yeejoin.amos.api.openapi.feign.TzsAccessFeignService;
import com.yeejoin.amos.api.openapi.feign.TzsServiceFeignClient;
import com.yeejoin.amos.api.openapi.feign.TzsTcmServiceFeignClient;
......@@ -29,7 +28,7 @@ import java.util.Map;
* @date 2022-07-19
*/
@Component
public class UseInfoService extends AppBaseService<UseInfoModel, UseInfo, UseInfoMapper> {
public class UseInfoService extends AppBaseService<UseInfoModel, MiddEquipUseInfo, MiddEquipUseInfoMapper> {
private static final Logger logger = LogManager.getLogger(UseInfoService.class);
......@@ -51,13 +50,13 @@ public class UseInfoService extends AppBaseService<UseInfoModel, UseInfo, UseInf
* @return 成功返回“OK”
*/
@Transactional(rollbackFor = {Exception.class})
public String saveUseInfo(List<UseInfo> model) {
public String saveUseInfo(List<MiddEquipUseInfo> model) {
// TODO Auto-generated method stub
if (ValidationUtil.isEmpty(model)) {
throw new BadRequest("使用信息为空.");
}
for (UseInfo models : model) {
for (MiddEquipUseInfo models : model) {
// checkModel(models);
models.setRecDate(new Date());
models.setAppId(getAppId());
......
......@@ -5,8 +5,8 @@ import com.yeejoin.amos.api.openapi.face.dto.EquipmentCategoryDto;
import com.yeejoin.amos.api.openapi.face.dto.EquipmentInfoDto;
import com.yeejoin.amos.api.openapi.face.model.InspectionDetectionInfoModel;
import com.yeejoin.amos.api.openapi.face.model.UnitLicenceModel;
import com.yeejoin.amos.api.openapi.face.orm.entity.ConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MaintenanceInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidConstructionInfo;
import com.yeejoin.amos.api.openapi.face.orm.entity.MidMaintenanceInfo;
import com.yeejoin.amos.boot.biz.common.feign.FeignConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
......@@ -77,7 +77,7 @@ public interface TzsServiceFeignClient {
* @return
*/
@RequestMapping(value = "/equipment-category/saveConstructionInfoData", method = RequestMethod.POST)
ResponseModel<Boolean> saveConstructionInfo(@RequestBody ConstructionInfo constructionInfo);
ResponseModel<Boolean> saveConstructionInfo(@RequestBody MidConstructionInfo constructionInfo);
/**
* 保存监管维保数据
......@@ -86,7 +86,7 @@ public interface TzsServiceFeignClient {
* @return
*/
@RequestMapping(value = "/equipment-category/saveMaintenanceRecordInfoData", method = RequestMethod.POST)
ResponseModel<Boolean> saveMaintenanceRecordInfo(@RequestBody MaintenanceInfo maintenanceInfo);
ResponseModel<Boolean> saveMaintenanceRecordInfo(@RequestBody MidMaintenanceInfo maintenanceInfo);
/**
* 删除监管设备数据
......
......@@ -2,33 +2,33 @@ spring.application.name=AMOS-API-OPENAPI
server.servlet.context-path=/openapi
server.port=11001
# jdbc_config
spring.datasource.url=jdbc:vastbase://172.16.10.243:5432/tzs_amos_tzs_biz_init?currentSchema=amos_openapi_cyl&allowMultiQueries=true
spring.datasource.username=admin
spring.datasource.password=Yeejoin@2023
spring.datasource.driver-class-name=cn.com.vastbase.Driver
spring.datasource.dynamic.primary=openapi
#spring.datasource.url=jdbc:vastbase://172.16.10.243:5432/tzs_amos_tzs_biz_init?currentSchema=amos_openapi_cyl&allowMultiQueries=true
#spring.datasource.username=admin
#spring.datasource.password=Yeejoin@2023
#spring.datasource.driver-class-name=cn.com.vastbase.Driver
#ds tzs
spring.datasource.dynamic.datasource.openapi.url=jdbc:vastbase://172.16.10.243:5432/tzs_amos_tzs_biz_init?currentSchema=amos_openapi_cyl&allowMultiQueries=true
spring.datasource.dynamic.datasource.openapi.username=admin
spring.datasource.dynamic.datasource.openapi.password=Yeejoin@2023
spring.datasource.dynamic.datasource.openapi.driver-class-name=cn.com.vastbase.Driver
#ds cyl
spring.datasource.dynamic.datasource.tzs.url=jdbc:vastbase://172.16.10.243:5432/tzs_amos_tzs_biz_init?currentSchema=amos_openapi_cyl&allowMultiQueries=true
spring.datasource.dynamic.datasource.tzs.url=jdbc:vastbase://172.16.10.243:5432/tzs_amos_tzs_biz_init?currentSchema=amos_tzs_biz&allowMultiQueries=true
spring.datasource.dynamic.datasource.tzs.username=admin
spring.datasource.dynamic.datasource.tzs.password=Yeejoin@2023
spring.datasource.dynamic.datasource.tzs.driver-class-name=cn.com.vastbase.Driver
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.hikari.minimum-idle=5
spring.datasource.hikari.maximum-pool-size=15
spring.datasource.hikari.auto-commit=true
spring.datasource.hikari.idle-timeout=30000
spring.datasource.hikari.pool-name=DatebookHikariCP
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.connection-test-query=SELECT 1
spring.datasource.dynamic.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.dynamic.hikari.minimum-idle=1
spring.datasource.dynamic.hikari.maximum-pool-size=5
spring.datasource.dynamic.hikari.auto-commit=true
spring.datasource.dynamic.hikari.idle-timeout=30000
spring.datasource.dynamic.hikari.pool-name=DatebookHikariCP
spring.datasource.dynamic.hikari.max-lifetime=1800000
spring.datasource.dynamic.hikari.connection-timeout=30000
spring.datasource.dynamic.hikari.connection-test-query=SELECT 1
# REDIS (RedisProperties)
spring.redis.database=1
......@@ -46,11 +46,11 @@ eureka.client.service-url.defaultZone =http://admin:a1234560@172.16.10.243:10001
eureka.instance.prefer-ip-address=true
management.endpoint.health.show-details=always
management.endpoints.web.exposure.include=*
eureka.instance.health-check-url=http://172.16.3.89:${server.port}${server.servlet.context-path}/actuator/health
eureka.instance.health-check-url=http://172.16.3.7:${server.port}${server.servlet.context-path}/actuator/health
eureka.instance.metadata-map.management.context-path=${server.servlet.context-path}/actuator
eureka.instance.status-page-url=http://172.16.3.89:${server.port}${server.servlet.context-path}/actuator/info
eureka.instance.metadata-map.management.api-docs=http://172.16.3.89:${server.port}${server.servlet.context-path}/doc.html
eureka.instance.ip-address = 172.16.3.89
eureka.instance.status-page-url=http://172.16.3.7:${server.port}${server.servlet.context-path}/actuator/info
eureka.instance.metadata-map.management.api-docs=http://172.16.3.7:${server.port}${server.servlet.context-path}/doc.html
eureka.instance.ip-address = 172.16.3.7
##emqx
emqx.clean-session=true
......@@ -60,4 +60,9 @@ emqx.client-user-name=super
emqx.client-password=123456
##biz custem properties
biz.lxyd.lift.url=http://39.106.181.149:8088/elevatorapi
\ No newline at end of file
biz.lxyd.lift.url=http://39.106.181.149:8088/elevatorapi
## ES properties:
elasticsearch.username=elastic
elasticsearch.password=a123456
spring.elasticsearch.rest.uris=http://172.16.10.243:9200
\ No newline at end of file
......@@ -9,7 +9,7 @@ spring.servlet.multipart.maxRequestSize=3MB
## redis失效时间
redis.cache.failure.time=10800
# mybatis-plus
mybatis-plus.mapper-locations=classpath:mapper/*Mapper.xml
mybatis-plus.mapper-locations=classpath*:mapper/*Mapper.xml
mybatis-plus.type-aliases-super-type=org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
mybatis-plus.global-config.db-config.id-type=ID_WORKER
spring.main.allow-bean-definition-overriding=true
......@@ -22,14 +22,6 @@
<version>${amos-boot-biz.version}</version>
</dependency>
<dependency>
<groupId>net.javacrumbs.shedlock</groupId>
<artifactId>shedlock-spring</artifactId>
</dependency>
<dependency>
<groupId>net.javacrumbs.shedlock</groupId>
<artifactId>shedlock-provider-redis-spring</artifactId>
</dependency>
<dependency>
<artifactId>amos-component-rule</artifactId>
<groupId>com.yeejoin</groupId>
</dependency>
......
package com.yeejoin.amos.boot.module.cylinder.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author Administrator
*/
@AllArgsConstructor
@Getter
public enum QuestionTypeEnum {
/**
* 问题类型
*/
XKCQ("1", "许可超期"),
WBLSYDJ("2", "未办理使用登记"),
JYCQ("3", "检验超期"),
JYBHG("4", "检验不合格"),
WJXCZJJ("5", "未进行充装检查"),
CZJCBHG("6", "充装检查不合格");
private String code;
private String name;
}
......@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -15,6 +16,7 @@ import lombok.EqualsAndHashCode;
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@ApiModel(value="CityCylinderInfoDto", description="地市气瓶信息汇总")
public class CityCylinderInfoDto extends BaseDto {
......@@ -31,10 +33,10 @@ public class CityCylinderInfoDto extends BaseDto {
private boolean isAlarm;
@ApiModelProperty(value = "气站数量")
private Integer stationCount;
private Long stationCount;
@ApiModelProperty(value = "气瓶数量")
private Integer cylindersCount;
private Long cylindersCount;
@ApiModelProperty(value = "经度")
private String longitude;
......
......@@ -42,4 +42,16 @@ public class CylinderAreaDataDto extends BaseDto {
@ApiModelProperty(value = "预警数量")
private Long warnNum;
@ApiModelProperty(value = "区域层级")
private String level;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
@ApiModelProperty(value = "超期数量")
private Integer outOfDateNum;
}
......@@ -157,4 +157,9 @@ public class CylinderInfoDto extends BaseDto {
private String inspectionDateEnd;
private String inspectionDateStart;
/**
* 最新检验一条数据
*/
private String lastInspectionId;
}
package com.yeejoin.amos.boot.module.cylinder.flc.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
......@@ -15,52 +16,53 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="CylinderInspectionDto", description="气瓶检验信息")
public class CylinderInspectionDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModel(value = "CylinderInspectionDto", description = "气瓶检验信息")
public class CylinderInspectionDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id")
@ApiModelProperty(value = "id")
private Long sequenceNbr;
private Long sequenceNbr;
@ApiModelProperty(value = "检验单位")
private String inspectionUnit;
@ApiModelProperty(value = "检验单位")
private String inspectionUnit;
@ApiModelProperty(value = "气瓶唯一标识码")
private String sequenceCode;
@ApiModelProperty(value = "气瓶唯一标识码")
private String sequenceCode;
@ApiModelProperty(value = "检验日期")
private String inspectionDate;
@ApiModelProperty(value = "检验日期")
private String inspectionDate;
@ApiModelProperty(value = "下次检验日期")
private String nextInspectionDate;
@ApiModelProperty(value = "下次检验日期")
private String nextInspectionDate;
@ApiModelProperty(value = "检验结果")
private String inspectionResult;
@ApiModelProperty(value = "检验结果")
private String inspectionResult;
@ApiModelProperty(value = "创建时间")
private Date recDate;
@ApiModelProperty(value = "创建时间")
private Date recDate;
@ApiModelProperty(value = "操作人员")
private String recUserId;
@ApiModelProperty(value = "操作人员")
private String recUserId;
@ApiModelProperty(value = "同步时间 yyyy-MM-dd HH24:mi:ss")
private Date syncDate;
@ApiModelProperty(value = "同步时间 yyyy-MM-dd HH24:mi:ss")
private Date syncDate;
@ApiModelProperty(value = "0-新增 1-更新 2-删除")
private Integer syncState;
@ApiModelProperty(value = "0-新增 1-更新 2-删除")
private Integer syncState;
@ApiModelProperty(value = "对接公司编码")
private String appId;
@ApiModelProperty(value = "对接公司编码")
private String appId;
@ApiModelProperty(value = "数据完整度")
private Double integrity;
@ApiModelProperty(value = "数据完整度")
private Double integrity;
@ApiModelProperty(value = "不合格报废数量")
private String scrapQuantity;
@ApiModelProperty(value = "不合格报废数量")
private String scrapQuantity;
@ApiModelProperty(value = "是否处理生过问题")
private Boolean isDealQuestion;
}
......@@ -105,8 +105,13 @@ public class CylinderUnitDto extends BaseDto {
private String evaluate;
private boolean outOfDate = false;
private Boolean outOfDate = false;
@ApiModelProperty(value = "技术服务商")
private String developerAgency;
/**
* 资质到期日期
*/
private Date expireDate;
}
......@@ -51,5 +51,5 @@ public class CylinderUnitVideoDto extends BaseDto {
/**
* 单位ID
*/
private Long unitSeq;
private String unitSeq;
}
package com.yeejoin.amos.boot.module.cylinder.flc.api.dto;
import lombok.Data;
import java.util.Collection;
/**
* @author LiuLin
* @date 2024年06月01日 13:44
*/
@Data
public class NewRegionModel {
private Long parentId;
private Integer regionCode;
private Integer parentRegionCode;
private String regionName;
private String level;
private String levelName;
private String longitude;
private String latitude;
private String agencyCode;
private Collection<NewRegionModel> children;
private Long sequenceNbr;
private String label;
private Integer value;
}
......@@ -64,4 +64,26 @@ public class CylinderAreaData extends BaseEntity {
@TableField("warn_num")
private Long warnNum;
/**
* 区域层级
*/
@TableField("level")
private String level;
/**
* 经度
*/
@TableField("longitude")
private String longitude;
/**
* 纬度
*/
@TableField("latitude")
private String latitude;
/**
* 超期数量
*/
@TableField("out_of_date_num")
private Integer outOfDateNum;
}
......@@ -123,4 +123,7 @@ public class CylinderInfo extends BaseEntity {
@ApiModelProperty(value = "是否保存到es(1标识已经保存过)")
private String isNotEs;
@ApiModelProperty(value = "最新检验一条数据")
private String lastInspectionId;
}
package com.yeejoin.amos.boot.module.cylinder.flc.api.entity;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.TableName;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import java.util.Date;
/**
* 气瓶检验信息
*
......@@ -19,14 +20,12 @@ import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tz_cylinder_inspection")
@ApiModel(value="TzCylinderInspection对象", description="气瓶检验信息")
@ApiModel(value = "TzCylinderInspection对象", description = "气瓶检验信息")
public class CylinderInspection extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "检验单位")
private String inspectionUnit;
......@@ -43,7 +42,6 @@ public class CylinderInspection extends BaseEntity {
private String inspectionResult;
@ApiModelProperty(value = "同步时间 yyyy-MM-dd HH24:mi:ss")
private Date syncDate;
......@@ -58,4 +56,7 @@ public class CylinderInspection extends BaseEntity {
@ApiModelProperty(value = "不合格报废数量")
private String scrapQuantity;
@ApiModelProperty(value = "是否处理生过问题")
private Boolean isDealQuestion = false;
}
......@@ -69,5 +69,5 @@ public class CylinderUnitVideo extends BaseEntity{/**
* 单位ID
*/
@TableField("unit_seq")
private Long unitSeq;
private String unitSeq;
}
......@@ -34,7 +34,7 @@ public interface CylCylinderFillingCheckMapper extends BaseMapper<CylinderFillin
boolean updataSyncFilling(@Param("ids") List<Long> appIds);
boolean saveAndBatchInsert(@Param("list") List<CylinderFilling> list);
void saveAndBatchInsert(@Param("list") List<CylinderFilling> list);
Long selectCountTotal();
......
......@@ -3,6 +3,8 @@ package com.yeejoin.amos.boot.module.cylinder.flc.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingExamine;
import java.util.List;
/**
* 液化气体气瓶充装信息审核 Mapper 接口
*
......@@ -11,4 +13,5 @@ import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingExami
*/
public interface CylinderFillingExamineMapper extends BaseMapper<CylinderFillingExamine> {
void saveOrUpdateBatch(List<CylinderFillingExamine> cylinderFillingExamineList);
}
package com.yeejoin.amos.boot.module.cylinder.flc.api.mapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
......@@ -54,6 +55,14 @@ public interface CylinderInfoMapper extends BaseMapper<CylinderInfo> {
Integer getWarnNum(String code);
/**
* 查询超期数量
* @author LiuLin
* @param code 区域code
* @return
*/
Integer getOutOfDateNum(String code);
Integer getMonthInfoTotalUnit(@Param("appId") String appId);
......@@ -107,4 +116,12 @@ public interface CylinderInfoMapper extends BaseMapper<CylinderInfo> {
Map<String, Object> countFillingTimesAndQuantityByCompany(@Param("companyId") String companyId, @Param("startTime") String startTime, @Param("endTime") String endTime);
List<CylinderInfoDto> queryCylinderOfInspectionOverdue();
List<CylinderInfoDto> queryCylinderOfUnqualifiedQuestion();
List<Map<String, Object>> countFillingTimesAndQuantityByCity();
String getAttachmentByUnitCode (@Param("appId") String appId);
}
......@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInfo;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInspection;
import java.util.List;
/**
* 气瓶检验信息 Mapper 接口
*
......@@ -15,4 +17,5 @@ public interface CylinderInspectionMapper extends BaseMapper<CylinderInspection>
Page<CylinderInfo> queryOutOfDateCylinder(Page<CylinderInfo> pageBean, String appId);
void saveOrUpdateBatch(List<CylinderInspection> cylinderInspectionList);
}
......@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderTags;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 气瓶标签信息 Mapper 接口
*
......@@ -13,4 +15,6 @@ import org.apache.ibatis.annotations.Param;
public interface CylinderTagsMapper extends BaseMapper<CylinderTags> {
Double queryIntegirtyByAppId(@Param("appId") String appId);
void saveOrUpdateBatch(@Param("list") List<CylinderTags> cylinderTagsList);
}
......@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.cylinder.flc.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CityCylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderUnit;
import org.apache.ibatis.annotations.Param;
......@@ -55,4 +56,14 @@ public interface CylinderUnitMapper extends BaseMapper<CylinderUnit> {
* @return list
*/
List<CityCylinderInfoDto> getCylinderDataByLevel(@Param("level") String level);
void saveOrUpdateBatch(@Param("list") List<CylinderUnit> list);
/**
* 查询资质超期但是还没生成问题的单位
* @param questionType 问题类型
* @return List<CylinderInfoDto>
*/
List<CylinderUnitDto> queryCylinderUnitOfPermissionExpire(@Param("questionType") String questionType);
}
......@@ -56,6 +56,4 @@ public interface ICylinderInfoService {
void saveCylinderInfo2ES(List<CylinderInfoDto> records);
Integer getInfoTotal();
List<CityCylinderInfoDto> getCityCylinderData(String level);
}
......@@ -13,5 +13,5 @@ import java.util.List;
*/
public interface ICylinderUnitVideoService {
List<CommonVideoDto> getUnitVideoUrl(Long unitSeq);
List<CommonVideoDto> getUnitVideoUrl(String unitSeq);
}
......@@ -141,10 +141,8 @@
LIMIT 1000
</select>
<insert id="saveAndBatchInsert">
INSERT INTO "amos_tzs_biz"."tz_cylinder_filling"
(
sequence_nbr,
<insert id="saveAndBatchInsert" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingRecord">
INSERT INTO tz_cylinder_filling( sequence_nbr,
filling_before_id,
filling_unit_name,
sequence_code,
......
<?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="com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderFillingExamineMapper">
<insert id="saveOrUpdateBatch" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingExamine">
INSERT INTO "tz_cylinder_filling_examine"(sequence_nbr,filling_examine_id,filling_audit_date,filling_audit_url,filling_audit_name,rec_date,rec_user_id,sync_date,sync_state,app_id)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.sequenceNbr},
#{item.fillingExamineId},
#{item.fillingAuditDate},
#{item.fillingAuditUrl},
#{item.fillingAuditName},
#{item.recDate},
#{item.recUserId},
#{item.syncDate},
#{item.syncState},
#{item.appId})
</foreach>
on conflict (app_id,filling_examine_id) do update set
"filling_examine_id" = EXCLUDED."filling_examine_id",
"filling_audit_date" = EXCLUDED."filling_audit_date",
"filling_audit_url" = EXCLUDED."filling_audit_url",
"filling_audit_name" = EXCLUDED."filling_audit_name",
"rec_date" = EXCLUDED."rec_date",
"rec_user_id" = EXCLUDED."rec_user_id",
"sync_date" = EXCLUDED."sync_date",
"sync_state" = EXCLUDED."sync_state",
"app_id" = EXCLUDED."app_id"
</insert>
</mapper>
......@@ -61,6 +61,11 @@
<select id="getWarnNum" resultType="java.lang.Integer">
select count(1) from view_cylider_outofdate v where v.app_id in (<include refid="selectAPPIdByRegionCode"/>)
</select>
<select id="getOutOfDateNum" resultType="java.lang.Integer">
select count(1) from view_cylider_outofdate v where v.app_id in (<include refid="selectAPPIdByRegionCode"/>)
and v.next_inspection_date <![CDATA[ > ]]> now()
</select>
<select id="getMonthInfoTotalUnit" resultType="java.lang.Integer">
select
......@@ -402,6 +407,29 @@
</if>
</where>
</select>
<select id="countFillingTimesAndQuantityByCity" resultType="java.util.Map">
SELECT regionCode AS regionCode,
COUNT(cfr.app_id) AS fillingTimes,
ROUND(SUM(cfr.filling_quantity)) AS fillingQuantity
FROM (SELECT cu.app_id,
SUBSTRING_INDEX(SUBSTRING_INDEX(cu.region_code, '#', 2), '#', -1) AS regionCode
FROM tz_cylinder_unit cu) cu
LEFT JOIN tz_cylinder_filling_record cfr ON cu.app_id = cfr.app_id
GROUP BY regionCode
</select>
<select id="getAttachmentByUnitCode" resultType="java.lang.String">
select qualification_certificate_attachment as qualificationCertificateAttachment
FROM view_cylinder_unit_info
<where>
<if test="appId != null and appId != ''">
"app_id" = #{appId}
</if>
</where>
limit 1
</select>
<select id="countNumber" resultType="java.lang.Integer">
SELECT count(DISTINCT(onlyCode))
FROM(
......@@ -438,6 +466,41 @@
</if>
</select>
<select id="queryCylinderOfInspectionOverdue" resultType="com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto">
SELECT
a.app_id,
u.unit_name,
u.region_code,
a.factory_num,
a.sequence_code
FROM
tz_cylinder_info a,
tz_cylinder_inspection b,
tz_cylinder_unit u
where
a.sequence_code = b.sequence_code
and u.app_id = a.app_id
and a.last_inspection_id = b.sequence_nbr
and date_gt(CURRENT_DATE, cast(b.next_inspection_date as date))
</select>
<select id="queryCylinderOfUnqualifiedQuestion" resultType="com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto">
SELECT
b.sequence_nbr,
a.sequence_code,
a.app_id,
u.unit_name,
u.region_code,
a.factory_num
FROM
tz_cylinder_info a,
tz_cylinder_inspection b,
tz_cylinder_unit u
where
a.sequence_code = b.sequence_code
and u.app_id = a.app_id
and a.last_inspection_id = b.sequence_nbr
and (b.is_deal_question = false or b.is_deal_question is null)
</select>
<update id="updateEsCylinderInfoStatus">
UPDATE tz_cylinder_info SET "is_not_es" = 1 WHERE "sequence_nbr" IN
......@@ -446,8 +509,8 @@
</foreach>
</update>
<insert id="saveOrUpdateBatch">
INSERT INTO "amos_tzs_biz"."tz_cylinder_info"
<insert id="saveOrUpdateBatch" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInfo">
INSERT INTO "tz_cylinder_info" ("sequence_nbr","unit_name","factory_num","cylinder_status","cylinder_variety","volume","manufacturing_date","manufacturing_unit","unit_inner_code","sequence_code","early_warning_level","early_warning_level_cal_date","end_custom_code","rec_date","rec_user_id","sync_date","sync_state","app_id","integrity","longitude","latitude","credit_code","filling_media","product_name","product_qualified","proof_quality","supervision_inspec","type_experiments","valve_manufactur_unit","nominal_work_pressure","cylinder_variety_name","filling_media_name","is_not_es")
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.sequenceNbr},
......@@ -485,7 +548,6 @@
null)
</foreach>
on conflict (app_id,sequence_code) do update set
"sequence_nbr" = EXCLUDED."sequence_nbr",
"unit_name" = EXCLUDED."unit_name",
"factory_num" = EXCLUDED."factory_num",
"cylinder_status" = EXCLUDED."cylinder_status",
......@@ -516,7 +578,6 @@
"valve_manufactur_unit" = EXCLUDED."valve_manufactur_unit",
"nominal_work_pressure" = EXCLUDED."nominal_work_pressure",
"cylinder_variety_name" = EXCLUDED."cylinder_variety_name",
"filling_media_name" = EXCLUDED."filling_media_name",
"is_not_es" = EXCLUDED."is_not_es"
"filling_media_name" = EXCLUDED."filling_media_name"
</insert>
</mapper>
......@@ -12,4 +12,34 @@
AND info.app_id = #{appId}
</select>
<insert id="saveOrUpdateBatch" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInspection">
INSERT INTO "tz_cylinder_inspection"(sequence_nbr,inspection_unit,sequence_code,inspection_date,next_inspection_date,inspection_result,rec_date,rec_user_id,sync_date,sync_state,app_id,scrap_quantity)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.sequenceNbr},
#{item.inspectionUnit},
#{item.sequenceCode},
#{item.inspectionDate},
#{item.nextInspectionDate},
#{item.inspectionResult},
#{item.recDate},
#{item.recUserId},
#{item.syncDate},
#{item.syncState},
#{item.appId},
#{item.scrapQuantity})
</foreach>
on conflict (app_id,sequence_code) do update set
"inspection_unit" = EXCLUDED."inspection_unit",
"sequence_code" = EXCLUDED."sequence_code",
"inspection_date" = EXCLUDED."inspection_date",
"next_inspection_date" = EXCLUDED."next_inspection_date",
"inspection_result" = EXCLUDED."inspection_result",
"rec_date" = EXCLUDED."rec_date",
"rec_user_id" = EXCLUDED."rec_user_id",
"sync_date" = EXCLUDED."sync_date",
"sync_state" = EXCLUDED."sync_state",
"app_id" = EXCLUDED."app_id",
"scrap_quantity" = EXCLUDED."scrap_quantity"
</insert>
</mapper>
......@@ -8,4 +8,43 @@
</select>
<insert id="saveOrUpdateBatch" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderTags">
INSERT INTO "tz_cylinder_tags"(
sequence_nbr,
sequence_code,
qrcode,
electronic_label_code,
rec_date,
rec_user_id,
sync_date,
sync_state,
app_id,
integrity,
gas_cylinder_stamp)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.sequenceNbr},
#{item.sequenceCode},
#{item.qrCode},
#{item.electronicLabelCode},
#{item.recDate},
#{item.recUserId},
#{item.syncDate},
#{item.syncState},
#{item.appId},
#{item.integrity},
#{item.gasCylinderStamp})
</foreach>
on conflict (app_id,sequence_code) do update set
"qrcode" = EXCLUDED."qrcode",
"electronic_label_code" = EXCLUDED."electronic_label_code",
"rec_date" = EXCLUDED."rec_date",
"rec_user_id" = EXCLUDED."rec_user_id",
"sync_date" = EXCLUDED."sync_date",
"sync_state" = EXCLUDED."sync_state",
"app_id" = EXCLUDED."app_id",
"integrity" = EXCLUDED."integrity",
"gas_cylinder_stamp" = EXCLUDED."gas_cylinder_stamp"
</insert>
</mapper>
......@@ -65,4 +65,59 @@
FROM tz_cylinder_unit tcu
WHERE tcu.region_code like concat('%', #{regionCode}, '%')
</select>
<select id="queryCylinderUnitOfPermissionExpire" resultType="com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto">
SELECT
(SELECT min(l.expiry_date) from tz_base_unit_licence l where l."UNIT_CODE" = u.credit_code) as expire_date,
u.app_id,
u.unit_name,
u.region_code,
u.credit_code
FROM
tz_cylinder_unit u
where
date_gt(CURRENT_DATE, expire_date)
and not EXISTS (select 1 from tz_cylinder_question_info q where u.credit_code = q.question_object_id and q.question_type = #{questionType} )
</select>
<insert id="saveOrUpdateBatch" parameterType="com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderUnit">
INSERT INTO "tz_cylinder_unit" ("sequence_nbr","unit_id","region_code","unit_name","credit_code","address","unit_person","person_mobile_phone","person_telephone","postal_code","rec_date","rec_user_id","sync_date","sync_state","app_id","security_adm","security_adm_phone","region_name")
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.sequenceNbr},
#{item.unitId},
#{item.regionCode},
#{item.unitName},
#{item.creditCode},
#{item.address},
#{item.unitPerson},
#{item.personMobilePhone},
#{item.personTelephone},
#{item.postalCode},
#{item.recDate},
#{item.recUserId},
#{item.syncDate},
#{item.syncState},
#{item.appId},
#{item.securityAdm},
#{item.securityAdmPhone},
#{item.regionName})
</foreach>
on conflict (app_id) do update set
"unit_id" = EXCLUDED."unit_id",
"region_code" = EXCLUDED."region_code",
"unit_name" = EXCLUDED."unit_name",
"credit_code" = EXCLUDED."credit_code",
"address" = EXCLUDED."address",
"unit_person" = EXCLUDED."unit_person",
"person_mobile_phone" = EXCLUDED."person_mobile_phone",
"person_telephone" = EXCLUDED."person_telephone",
"postal_code" = EXCLUDED."postal_code",
"rec_date" = EXCLUDED."rec_date",
"rec_user_id" = EXCLUDED."rec_user_id",
"sync_date" = EXCLUDED."sync_date",
"sync_state" = EXCLUDED."sync_state",
"app_id" = EXCLUDED."app_id",
"security_adm" = EXCLUDED."security_adm",
"security_adm_phone" = EXCLUDED."security_adm_phone",
"region_name" = EXCLUDED."region_name"
</insert>
</mapper>
......@@ -30,6 +30,14 @@
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
</dependency>
<dependency>
<groupId>net.javacrumbs.shedlock</groupId>
<artifactId>shedlock-spring</artifactId>
</dependency>
<dependency>
<groupId>net.javacrumbs.shedlock</groupId>
<artifactId>shedlock-provider-redis-spring</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
......
......@@ -96,12 +96,13 @@ public class CylinderQuestionInfoController extends BaseController {
@ApiOperation(httpMethod = "GET", value = "问题信息列表分页查询", notes = "问题信息列表分页查询")
public ResponseModel<Page<CylinderQuestionInfoDto>> queryForPage(@ApiParam(value = "页数") @RequestParam(value = "current") int current,
@ApiParam(value = "每页大小") @RequestParam(value = "size") int size,
@ApiParam(value = "appId") @RequestParam(value = "appId",required = false) String appId,
@ApiParam(value = "问题类型枚举") @RequestParam(value = "questionType",required = false) String questionType,
@ApiParam(value = "行政区域code") @RequestParam(value = "regionCode",required = false) String regionCode) {
Page<CylinderQuestionInfoDto> page = new Page<CylinderQuestionInfoDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(cylinderQuestionInfoServiceImpl.queryForCylinderQuestionInfoPage(page,questionType, regionCode));
return ResponseHelper.buildResponse(cylinderQuestionInfoServiceImpl.queryForCylinderQuestionInfoPage(page,questionType, regionCode, appId));
}
}
......@@ -5,10 +5,12 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.cylinder.api.entity.TzsCitInfo;
import com.yeejoin.amos.boot.module.cylinder.api.service.TzsAuthService;
import com.yeejoin.amos.boot.module.cylinder.biz.service.impl.TzsCitInfoServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.NewRegionModel;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -16,17 +18,14 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 特种设备权限controller
......@@ -91,19 +90,42 @@ public class TzsAuthController extends BaseController {
}
/**
* 获取用户组织机构树-到省市区级别三级
* 获取三级组织机构树
*
* @author LiuLin
* @date 2025-05-31
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getThreeUserReginTree")
@ApiOperation(httpMethod = "GET", value = "获取三级用户组织机构树", notes = "获取三级用户组织机构树")
public ResponseModel<Collection<RegionModel>> getThreeUserReginTree() {
List<RegionModel> result = tzsAuthService.getThreeUserReginTree();
return ResponseHelper.buildResponse(result);
@ApiOperation(httpMethod = "GET", value = "获取组织机构树", notes = "获取组织机构树")
public ResponseModel<Collection<NewRegionModel>> getRegionTree(@RequestParam(value = "parentId",required = false) Long parentId) {
return ResponseHelper.buildResponse(thirdLevelRegion(Systemctl.regionClient.queryForTree(null).getResult()));
}
/**
* 去区域树中level多余空格以及保留三级
* @param result
*/
public List<NewRegionModel> thirdLevelRegion(Collection<RegionModel> result) {
List<NewRegionModel> newRegionList = new ArrayList<>();
for (RegionModel regionModel : result) {
if (!"4".equals(regionModel.getLevel())) {
NewRegionModel newRegion = new NewRegionModel();
newRegion.setRegionCode(regionModel.getRegionCode());
newRegion.setRegionName(regionModel.getRegionName().trim());
newRegion.setLabel(regionModel.getRegionName().trim());
newRegion.setValue(regionModel.getRegionCode());
newRegion.setLevel(regionModel.getLevel().trim());
if (!ValidationUtil.isEmpty(regionModel.getChildren())) {
newRegion.setChildren(thirdLevelRegion(regionModel.getChildren()));
}
newRegionList.add(newRegion);
}
}
return newRegionList;
}
/**
* 获取用户监管机构
*/
......
package com.yeejoin.amos.boot.module.cylinder.biz.job;
import com.yeejoin.amos.boot.module.cylinder.api.entity.CylinderQuestionInfo;
import com.yeejoin.amos.boot.module.cylinder.api.enums.QuestionTypeEnum;
import com.yeejoin.amos.boot.module.cylinder.biz.service.impl.CylinderQuestionInfoServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderUnitDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderUnitMapper;
import net.javacrumbs.shedlock.spring.annotation.SchedulerLock;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author Administrator
*/
@Component
@EnableScheduling
public class CompanyQuestionJob {
private CylinderUnitMapper cylinderUnitMapper;
private CylinderQuestionInfoServiceImpl questionInfoService;
public CompanyQuestionJob(CylinderUnitMapper cylinderUnitMapper,
CylinderQuestionInfoServiceImpl questionInfoService) {
this.cylinderUnitMapper = cylinderUnitMapper;
this.questionInfoService = questionInfoService;
}
/**
* 资质超期
*/
@SchedulerLock(name = "genCompanyQuestionOfPermissionExpireJob", lockAtMostFor = "PT4M")
@Scheduled(cron = "${inspection.cert.expire.job.cron:0 0/2 * * * ?}")
@Transactional(rollbackFor = Exception.class)
public void genCompanyQuestionOfPermissionExpire() {
List<CylinderUnitDto> cylinderUnitDtoList = cylinderUnitMapper.queryCylinderUnitOfPermissionExpire(QuestionTypeEnum.XKCQ.getCode());
List<CylinderQuestionInfo> cylinderQuestionInfos = cylinderUnitDtoList.stream().map(cylinderUnitDto -> {
CylinderQuestionInfo cylinderQuestionInfo = new CylinderQuestionInfo();
cylinderQuestionInfo.setQuestionType(QuestionTypeEnum.XKCQ.getCode());
cylinderQuestionInfo.setQuestionTypeName(QuestionTypeEnum.XKCQ.getName());
return this.fillCommonField(cylinderUnitDto, cylinderQuestionInfo);
}).collect(Collectors.toList());
if (cylinderQuestionInfos.size() > 0) {
questionInfoService.saveBatch(cylinderQuestionInfos);
}
}
@NotNull
private CylinderQuestionInfo fillCommonField(CylinderUnitDto cylinderUnitDto, CylinderQuestionInfo cylinderQuestionInfo) {
cylinderQuestionInfo.setHappenDate(new Date());
cylinderQuestionInfo.setRecDate(new Date());
cylinderQuestionInfo.setRegionCode(cylinderUnitDto.getRegionCode());
cylinderQuestionInfo.setQuestionObjectId(cylinderUnitDto.getCreditCode());
cylinderQuestionInfo.setQuestionObjectName(cylinderUnitDto.getUnitName());
cylinderQuestionInfo.setQuestionAttributionId(cylinderUnitDto.getAppId());
cylinderQuestionInfo.setQuestionAttributionName(cylinderUnitDto.getUnitName());
return cylinderQuestionInfo;
}
}
package com.yeejoin.amos.boot.module.cylinder.biz.job;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yeejoin.amos.boot.module.cylinder.api.entity.CylinderQuestionInfo;
import com.yeejoin.amos.boot.module.cylinder.api.enums.QuestionTypeEnum;
import com.yeejoin.amos.boot.module.cylinder.biz.service.impl.CylinderQuestionInfoServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderInspection;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderInfoMapper;
import com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl.CylinderInspectionServiceImpl;
import net.javacrumbs.shedlock.spring.annotation.SchedulerLock;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @author Administrator
*/
@Component
@EnableScheduling
public class InspectionQuestionJob {
private CylinderInfoMapper cylinderInfoMapper;
private CylinderInspectionServiceImpl cylinderInspectionService;
private CylinderQuestionInfoServiceImpl questionInfoService;
public InspectionQuestionJob(CylinderInfoMapper cylinderInfoMapper,
CylinderInspectionServiceImpl cylinderInspectionService,
CylinderQuestionInfoServiceImpl questionInfoService) {
this.cylinderInfoMapper = cylinderInfoMapper;
this.questionInfoService = questionInfoService;
this.cylinderInspectionService = cylinderInspectionService;
}
/**
* 检验超期
*/
@SchedulerLock(name = "genOverdueQuestionJobCylinder2", lockAtMostFor = "PT1H")
@Scheduled(cron = "${inspection.overdue.job.cron:0 0 1 * * ?}")
@Transactional(rollbackFor = Exception.class)
public void genOverdueQuestion() {
List<CylinderInfoDto> cylinderList = cylinderInfoMapper.queryCylinderOfInspectionOverdue();
List<CylinderQuestionInfo> cylinderQuestionInfos = cylinderList.stream().map(cylinderInfoDto -> {
CylinderQuestionInfo cylinderQuestionInfo = new CylinderQuestionInfo();
cylinderQuestionInfo.setQuestionType(QuestionTypeEnum.JYCQ.getCode());
cylinderQuestionInfo.setQuestionTypeName(QuestionTypeEnum.JYCQ.getName());
return fillCommonField(cylinderInfoDto, cylinderQuestionInfo);
}).collect(Collectors.toList());
// 已经生成的数据不再重复生成
List<CylinderQuestionInfo> needToDbQuestionInfos = this.removeRepeatData(cylinderQuestionInfos);
if (needToDbQuestionInfos.size() > 0) {
questionInfoService.saveBatch(needToDbQuestionInfos);
}
}
private List<CylinderQuestionInfo> removeRepeatData(List<CylinderQuestionInfo> cylinderQuestionInfos) {
if (cylinderQuestionInfos.size() > 0) {
Set<String> questionObjectIds = cylinderQuestionInfos.stream().map(CylinderQuestionInfo::getQuestionObjectId).collect(Collectors.toSet());
Set<String> appIds = cylinderQuestionInfos.stream().map(CylinderQuestionInfo::getQuestionAttributionId).collect(Collectors.toSet());
// 已经生成问题的气瓶
List<CylinderQuestionInfo> questionInfos = questionInfoService.list(new LambdaQueryWrapper<CylinderQuestionInfo>()
.in(CylinderQuestionInfo::getQuestionObjectId, questionObjectIds)
.in(CylinderQuestionInfo::getQuestionAttributionId, appIds).eq(CylinderQuestionInfo::getQuestionType, QuestionTypeEnum.JYCQ.getCode()));
// 去掉已经生成的气瓶问题,不在重复生成问题
return cylinderQuestionInfos.stream().filter(c -> questionInfos.stream().noneMatch(d -> d.getQuestionObjectId().equals(c.getQuestionObjectId()) &&
d.getQuestionAttributionId().equals(c.getQuestionAttributionId()))).collect(Collectors.toList());
}
return new ArrayList<>();
}
/**
* 检验不合格任务
*/
@SchedulerLock(name = "genInspectionUnqualifiedQuestionJobCylinder2", lockAtMostFor = "PT20M")
@Scheduled(cron = "${inspection.unqualified.job.cron:0 0/10 * * * ?}")
@Transactional(rollbackFor = Exception.class)
public void genInspectionUnqualifiedQuestion() {
List<CylinderInfoDto> cylinderList = cylinderInfoMapper.queryCylinderOfUnqualifiedQuestion();
List<CylinderQuestionInfo> cylinderQuestionInfos = cylinderList.stream().map(cylinderInfoDto -> {
CylinderQuestionInfo cylinderQuestionInfo = new CylinderQuestionInfo();
cylinderQuestionInfo.setQuestionType(QuestionTypeEnum.JYBHG.getCode());
cylinderQuestionInfo.setQuestionTypeName(QuestionTypeEnum.JYBHG.getName());
return fillCommonField(cylinderInfoDto, cylinderQuestionInfo);
}).collect(Collectors.toList());
if (cylinderQuestionInfos.size() > 0) {
questionInfoService.saveBatch(cylinderQuestionInfos);
updateDealStatusAfterJobDeal(cylinderList);
}
}
private void updateDealStatusAfterJobDeal(List<CylinderInfoDto> cylinderList) {
LambdaUpdateWrapper<CylinderInspection> updateWrapper = new LambdaUpdateWrapper<>();
cylinderList.forEach(cylinder -> {
updateWrapper.eq(BaseEntity::getSequenceNbr, cylinder.getSequenceNbr());
updateWrapper.set(CylinderInspection::getIsDealQuestion, true);
cylinderInspectionService.update(updateWrapper);
});
}
@NotNull
private CylinderQuestionInfo fillCommonField(CylinderInfoDto cylinderInfoDto, CylinderQuestionInfo cylinderQuestionInfo) {
cylinderQuestionInfo.setHappenDate(new Date());
cylinderQuestionInfo.setRecDate(new Date());
cylinderQuestionInfo.setRegionCode(cylinderInfoDto.getRegionCode());
cylinderQuestionInfo.setQuestionObjectId(cylinderInfoDto.getSequenceCode());
cylinderQuestionInfo.setQuestionObjectName(cylinderInfoDto.getFactoryNum());
cylinderQuestionInfo.setQuestionAttributionId(cylinderInfoDto.getAppId());
cylinderQuestionInfo.setQuestionAttributionName(cylinderInfoDto.getUnitName());
return cylinderQuestionInfo;
}
}
......@@ -21,8 +21,8 @@ public class CylinderQuestionInfoServiceImpl extends BaseService<CylinderQuestio
/**
* 分页查询
*/
public Page<CylinderQuestionInfoDto> queryForCylinderQuestionInfoPage(Page<CylinderQuestionInfoDto> page, String questionType, @Condition(value = Operator.like) String regionCode) {
return this.queryForPage(page, "happen_date", true, questionType, regionCode);
public Page<CylinderQuestionInfoDto> queryForCylinderQuestionInfoPage(Page<CylinderQuestionInfoDto> page, String questionType, @Condition(value = Operator.like) String regionCode, String questionAttributionId) {
return this.queryForPage(page, "happen_date", true, questionType, regionCode, questionAttributionId);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.cylinder.flc.biz.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
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.metadata.IPage;
......@@ -50,6 +52,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* 气瓶基本信息
......@@ -99,6 +102,8 @@ public class CylinderInfoController extends BaseController {
@Autowired
private RedisUtils redisUtils;
@Autowired
private CylinderAreaDataServiceImpl cylinderAreaDataService;
/**
* 新增气瓶基本信息
*
......@@ -1341,7 +1346,7 @@ public class CylinderInfoController extends BaseController {
@GetMapping(value = "/getCityCylinderData")
@ApiOperation(httpMethod = "GET", value = "获取地市气瓶,气站信息统计", notes = "获取地市气瓶,气站信息统计")
public ResponseModel<Collection<CityCylinderInfoDto>> getCityCylinderData(@RequestParam( value="level") String level) {
List<CityCylinderInfoDto> result = cylinderInfoServiceImpl.getCityCylinderData(level);
List<CityCylinderInfoDto> result = cylinderAreaDataService.getCityCylinderData(level);
return ResponseHelper.buildResponse(result);
}
......@@ -1349,9 +1354,37 @@ public class CylinderInfoController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "某个企业充装次数及累计充装量统计")
@GetMapping(value = "/countFillingTimesAndQuantityByCompany")
public ResponseModel<Map<String,Object>> countFillingTimesAndQuantityByCompany(@RequestParam(value = "companyId") String companyId,
@RequestParam(value = "startTime", required = false) String startTime,
@RequestParam(value = "endTime", required = false) String endTime) {
return ResponseHelper.buildResponse(cylinderInfoServiceImpl.getBaseMapper().countFillingTimesAndQuantityByCompany(companyId, startTime, endTime));
public ResponseModel<JSONObject> countFillingTimesAndQuantityByCompany(@RequestParam(value = "companyId") String companyId,
@RequestParam(value = "startTime", required = false) String startTime,
@RequestParam(value = "endTime", required = false) String endTime) {
return ResponseHelper.buildResponse(cylinderInfoServiceImpl.countFillingTimesAndQuantityByCompany(companyId, startTime, endTime));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "市级为维度,各市的充装次数和累计充装量")
@GetMapping(value = "/countFillingTimesAndQuantityByCity")
public ResponseModel<Map<String, Object>> countFillingTimesAndQuantityByCity() {
return ResponseHelper.buildResponse(cylinderInfoServiceImpl.countFillingTimesAndQuantityByCity());
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "资质附件,轮播图用")
@GetMapping(value = "/getAttachmentByUnitCode")
public ResponseModel<List<String>> getAttachmentByUnitCode(@RequestParam(value = "companyId") String companyId) {
List<String> result = new ArrayList<>();
String attachmentByUnitCode = cylinderInfoServiceImpl.getBaseMapper().getAttachmentByUnitCode(companyId);
if (attachmentByUnitCode != null && !attachmentByUnitCode.isEmpty()) {
JSONArray jsonArray = JSON.parseArray(attachmentByUnitCode);
if (jsonArray != null) {
jsonArray.stream()
.filter(JSONObject.class::isInstance)
.map(JSONObject.class::cast)
.map(obj -> obj.getString("url"))
.filter(Objects::nonNull)
.forEach(result::add);
}
}
return ResponseHelper.buildResponse(result);
}
}
......@@ -84,7 +84,7 @@ public class CylinderUnitController extends BaseController {
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个气瓶企业信息", notes = "根据sequenceNbr查询单个气瓶企业信息")
public ResponseModel<CylinderUnitDto> selectOne(@RequestParam Long id) {
CylinderUnitDto unit = cylinderUnitServiceImpl.queryBySeq(id);
unit.setEvaluate("5");
unit.setEvaluate("★★★★★");
// 查询气瓶数量以及过期数量
Map<String, String> cylinderInfo = iCylinderInfoService.queryNumAndOutOfDateNum(unit.getSequenceNbr());
......@@ -126,7 +126,7 @@ public class CylinderUnitController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getUnitVideoUrl")
@ApiOperation(httpMethod = "GET", value = "根据气瓶企业seq查询视频链接", notes = "根据气瓶企业seq查询视频链接")
public ResponseModel<List<CommonVideoDto>> getUnitVideoUrl(@RequestParam Long unitSeq) {
public ResponseModel<List<CommonVideoDto>> getUnitVideoUrl(@RequestParam String unitSeq) {
return ResponseHelper.buildResponse(icylinderUnitVideoService.getUnitVideoUrl(unitSeq));
}
}
package com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CityCylinderInfoDto;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
......@@ -30,6 +31,7 @@ import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 气瓶区域统计表服务实现类
......@@ -60,6 +62,20 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
return this.queryForList("" , false);
}
public List<CityCylinderInfoDto> getCityCylinderData(String level) {
return this.queryForList("", false, level).stream()
.map(v -> CityCylinderInfoDto.builder()
.regionName(v.getAreaName())
.regionCode(v.getRegionCode())
.longitude(v.getLongitude())
.latitude(v.getLatitude())
.isAlarm(v.getOutOfDateNum() != 0)
.cylindersCount(v.getCylinderNum())
.stationCount(v.getUnitNum())
.build())
.collect(Collectors.toList());
}
public Page<Map<String, Object>> getEarlyWarningStatistics(String regionCode, String appId) {
Page<Map<String, Object>> page = new Page<>();
List<Map<String, Object>> list = Lists.newArrayList();
......
......@@ -166,6 +166,38 @@ public class CylinderFillingRecordServiceImpl extends BaseService<CylinderFillin
}
}
public void createCylinderFillingRecord(List<ESCylinderFillingRecordDto> cylinderFillingRecord) {
if (!ObjectUtils.isEmpty(cylinderFillingRecord)) {
List<String> appIds = cylinderFillingRecord.stream().map(ESCylinderFillingRecordDto::getAppId).collect(Collectors.toList());
List<String> sequenceCodeS = cylinderFillingRecord.stream().map(ESCylinderFillingRecordDto::getSequenceCode).collect(Collectors.toList());
List<ESCylinderFillingRecordDto> cylinderFillingRecordInfo = cylinderFillingRecordMapper.getCylinderFillingRecordInfo(appIds, sequenceCodeS);
cylinderFillingRecord.stream().map(item -> {
List<ESCylinderFillingRecordDto> collect = cylinderFillingRecordInfo.stream().filter(e -> item.getAppIdAndSequenceCode().equals(e.getAppIdAndSequenceCode())).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(collect)) {
item.setUnitName(collect.get(0).getUnitName());
item.setFactoryNum(collect.get(0).getFactoryNum());
item.setCylinderVariety(collect.get(0).getCylinderVariety());
item.setCylinderVarietyName(collect.get(0).getCylinderVarietyName());
item.setUnitInnerCode(collect.get(0).getUnitInnerCode());
item.setSequenceCode(collect.get(0).getSequenceCode());
item.setQrCode(collect.get(0).getQrCode());
item.setElectronicLabelCode(collect.get(0).getElectronicLabelCode());
item.setAppId(collect.get(0).getAppId());
item.setCreditCode(collect.get(0).getCreditCode());
item.setRegionCode(collect.get(0).getRegionCode());
try {
item.setInspectionDateMs(ObjectUtils.isEmpty(item.getFillingStartTime()) ? 0L : DateUtils.dateParseWithPattern(item.getFillingStartTime()).getTime());
item.setInspectionDateAfterMS(ObjectUtils.isEmpty(item.getFillingEndTime()) ? 0L : DateUtils.dateParseWithPattern(item.getFillingEndTime()).getTime());
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
return item;
}).collect(Collectors.toList());
saveCylinderFillingRecord2ES(cylinderFillingRecord);
}
}
@Override
public List<ESCylinderFillingRecordDto> getCylinderFillingRecordTest() {
List<ESCylinderFillingRecordDto> cylinderFillingRecord = cylinderFillingRecordMapper.getCylinderFillingRecord();
......@@ -305,6 +337,14 @@ public class CylinderFillingRecordServiceImpl extends BaseService<CylinderFillin
boolMust.must(query);
}
//应用id
if (!ObjectUtils.isEmpty(esCylinderFillingRecordDto.getAppId())) {
flag = false;
BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.termsQuery("appId", esCylinderFillingRecordDto.getAppId().toLowerCase()));
boolMust.must(query);
}
//匹配气瓶品种
if (!ObjectUtils.isEmpty(esCylinderFillingRecordDto.getCylinderVariety())) {
flag = false;
......
package com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
......@@ -9,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.cylinder.api.dto.WarningMsgDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.MsgLog;
import com.yeejoin.amos.boot.module.cylinder.api.enums.EarlyWarningLevelEnum;
......@@ -33,6 +35,11 @@ import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.aggregations.Aggregation;
import org.elasticsearch.search.aggregations.AggregationBuilders;
import org.elasticsearch.search.aggregations.Aggregations;
import org.elasticsearch.search.aggregations.metrics.*;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.search.sort.SortOrder;
import org.springframework.beans.BeanUtils;
......@@ -54,9 +61,11 @@ import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
import java.util.function.IntConsumer;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/**
* 气瓶基本信息服务实现类
......@@ -69,6 +78,11 @@ import java.util.stream.Collectors;
public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, CylinderInfo, CylinderInfoMapper>
implements ICylinderInfoService {
public static final String REGION_CODE = "regionCode";
public static final String FILLING_TIMES = "fillingTimes";
public static final String FILLING_QUANTITY = "fillingQuantity";
public static final String REGION_NAME = "regionName";
private static final String INDEX_NAME = "cylinder_filling";
@Autowired
CylinderUnitServiceImpl cylinderUnitServiceImpl;
......@@ -200,6 +214,10 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
return baseMapper.getWarnNum(code);
}
public Integer getOutOfDateNum(String code) {
return baseMapper.getOutOfDateNum(code);
}
/**
* 按单位统计
*/
......@@ -236,7 +254,7 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
* 按区域统计
*/
@Transactional(rollbackFor = Exception.class)
@Scheduled(cron = "0 0 2 * * ?")
@Scheduled(cron = "0 0 4 * * ?")
@SchedulerLock(name = "synAreaDataTask", lockAtMostFor = "PT60M")
public void synAreaDataJob() {
this.synAreaData();
......@@ -267,6 +285,10 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
temp.setRegionCode(regionModel.getRegionCode() + "");
temp.setUnitNum(Long.valueOf(cylinderUnitTotal));
temp.setWarnNum((long) warmTotal);
temp.setLevel(regionModel.getLevel().trim());
temp.setLatitude(regionModel.getLatitude());
temp.setLongitude(regionModel.getLongitude());
temp.setOutOfDateNum(this.getOutOfDateNum(code));
cylinderAreaDataServiceImpl.createWithModel(temp);
});
}
......@@ -808,35 +830,38 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
}
}
@Override
public Integer getInfoTotal() {
return cylinderInfoMapper.getInfoTotal();
public void createCylinderInfo2ES(CylinderInfoDto cylinderInfoDto) {
List<ESCylinderInfoDto> esCylinderInfoDto = new ArrayList<>();
ESCylinderInfoDto esCylinderInfo = new ESCylinderInfoDto();
BeanUtils.copyProperties(cylinderInfoDto, esCylinderInfo);
esCylinderInfoDto.add(esCylinderInfo);
try {
esCylinderInfo.setInspectionDateMs(ObjectUtils.isEmpty(esCylinderInfo.getInspectionDate()) ? 0L : DateUtils.dateParse(esCylinderInfo.getInspectionDate(), DateUtils.DATE_TIME_PATTERN).getTime());
} catch (ParseException e) {
throw new RuntimeException(e);
}
List<String> ids = Lists.newArrayList();
StopWatch stopWatch = new StopWatch();
stopWatch.start();
esCylinderInfoRepository.saveAll(esCylinderInfoDto);
stopWatch.stop();
if (log.isInfoEnabled()) {
log.info("存入es耗时:{} 秒", stopWatch.getTotalTimeSeconds());
}
StopWatch stopWatch1 = new StopWatch();
stopWatch1.start();
cylinderInfoMapper.updateEsCylinderInfoStatus(ids);
stopWatch1.stop();
if (log.isInfoEnabled()) {
log.info("更新业务数据耗时:{} 秒", stopWatch1.getTotalTimeSeconds());
}
}
@Override
public List<CityCylinderInfoDto> getCityCylinderData(String level) {
List<RegionModel> result = Systemctl.regionClient.queryByLevel(level).getResult();
List<CityCylinderInfoDto> cylinderInfoDtoList = cylinderUnitServiceImpl.getCylinderDataByLevel(level);
Map<String, CityCylinderInfoDto> dtoMap = cylinderInfoDtoList.stream()
.collect(Collectors.toMap(CityCylinderInfoDto::getRegionCode, dto -> dto));
result.forEach(regionModel -> {
String regionCode = regionModel.getRegionCode()+"";
CityCylinderInfoDto dto = dtoMap.computeIfAbsent(regionCode, key -> {
CityCylinderInfoDto newDto = new CityCylinderInfoDto();
newDto.setRegionCode(regionCode);
newDto.setRegionName(regionModel.getRegionName());
newDto.setLatitude(regionModel.getLatitude());
newDto.setLongitude(regionModel.getLongitude());
cylinderInfoDtoList.add(newDto);
return newDto;
});
dto.setLatitude(regionModel.getLatitude());
dto.setLongitude(regionModel.getLongitude());
dto.setRegionName(regionModel.getRegionName());
});
return cylinderInfoDtoList;
public Integer getInfoTotal() {
return cylinderInfoMapper.getInfoTotal();
}
@Override
......@@ -883,14 +908,15 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
boolMust.should(appIdBuilder);
}
//匹配appid
//应用id
if (!ObjectUtils.isEmpty(cylinderInfoDto.getAppId())) {
flag = false;
BoolQueryBuilder appIdBuilder = QueryBuilders.boolQuery();
appIdBuilder.must(QueryBuilders.matchQuery("appId", "*" + cylinderInfoDto.getAppId() + "*"));
boolMust.should(appIdBuilder);
BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.termsQuery("appId", cylinderInfoDto.getAppId().toLowerCase()));
boolMust.must(query);
}
//匹配产权单位
if (!ObjectUtils.isEmpty(cylinderInfoDto.getUnitName())) {
flag = false;
......@@ -1208,4 +1234,158 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
public Page<CylinderInfoDto> cyinderOutInfoList(Page<CylinderInfoDto> page, CylinderInfoDto cylinderInfoDto, String sort, List<String> appids) {
return cylinderInfoMapper.cyinderOutInfoList(page, cylinderInfoDto, sort, appids);
}
public JSONObject countFillingTimesAndQuantityByCompany(String companyId, String startTime, String endTime) {
Map<String, Object> stringObjectMap = cylinderInfoMapper.countFillingTimesAndQuantityByCompany(companyId, startTime, endTime);
// 组装成柱状图能渲染的格式
//{
// "seriesData": [
// {
// "data": [
// 3
// ],
// "name": "充装次数(次)"
// },
// {
// "data": [
// 1
// ],
// "name": "累计充装量(kg)"
// }
// ],
// "axisData": [
// "总数"
// ]
// }
String template = "{\"seriesData\": [{\"data\": [%s],\"name\": \"充装次数(次)\"},{\"data\": [%s],\"name\": \"累计充装量(kg)\"}],\"axisData\": [\"总数\"]}";
String format = String.format(template,
ObjectUtils.isEmpty(stringObjectMap.get("fillingTimes")) ? 0 : stringObjectMap.get("fillingTimes"),
ObjectUtils.isEmpty(stringObjectMap.get("fillingQuantity")) ? 0 : stringObjectMap.get("fillingQuantity"));
return JSON.parseObject(format);
}
public Map<String, Object> countFillingTimesAndQuantityByCity() {
// 查询所有的市级城市
List<RegionModel> regionModelList = Systemctl.regionClient.queryByLevel("2").getResult();
// 并行处理每个城市的数据
List<CompletableFuture<Map<String, Object>>> futures = regionModelList.stream()
.map(regionModel -> CompletableFuture.supplyAsync(() -> esQuery(regionModel)))
.collect(Collectors.toList());
List<Map<String, Object>> collect = futures.stream()
.map(CompletableFuture::join)
.collect(Collectors.toList());
return assemblingHistogramData(collect);
// Map<String, Object> stringObjectMap = esQuery(regionModelList.get(3));
// ArrayList<Map<String, Object>> ss = new ArrayList<>();
// ss.add(stringObjectMap);
// return assemblingHistogramData(ss);
}
private static Map<String, Object> assemblingHistogramData(List<Map<String, Object>> collect) {
// 组装数据
// {
// "seriesData": [
// {
// "data": [
// 3,
// 2,
// 2,
// 3,
// 1
// ],
// "name": "正常点",
// "stack": "正常点"
// },
// {
// "data": [
// 1,
// 1,
// 2,
// 1,
// 2
// ],
// "name": "异常点",
// "stack": "巡检点"
// }
// ],
// "axisData": [
// "A",
// "B",
// "C",
// "D",
// "E"
// ]
// }
Map<String, Object> result = new HashMap<>();
List<Map<String, Object>> seriesData = new ArrayList<>();
List<String> axisData = new ArrayList<>();
List<String> seriesFillingTimesDataList = new ArrayList<>();
List<String> seriesCumulativeFillingQuantityDataList = new ArrayList<>();
collect.forEach(x->{
axisData.add(String.valueOf(x.get("regionName")));
seriesFillingTimesDataList.add(String.valueOf(x.get("fillingTimes")));
seriesCumulativeFillingQuantityDataList.add(String.valueOf(x.get("fillingQuantity")));
});
HashMap<String, Object> temMap1 = new HashMap<>();
temMap1.put("data",seriesFillingTimesDataList);
temMap1.put("name","充装次数");
temMap1.put("stack","充装次数");
HashMap<String, Object> temMap2 = new HashMap<>();
temMap2.put("data",seriesCumulativeFillingQuantityDataList);
temMap2.put("name","累计充装量");
temMap2.put("stack","累计充装量");
seriesData.add(temMap1);
seriesData.add(temMap2);
result.put("seriesData",seriesData);
result.put("axisData",axisData);
return result;
}
private Map<String, Object> esQuery(RegionModel regionModel) {
SearchRequest searchRequest = new SearchRequest(INDEX_NAME);
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
// 将 regionModel.getRegionCode() 转换成匹配中间部分的格式
String regionCodePattern = "*" + regionModel.getRegionCode() + "*";
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(QueryBuilders.wildcardQuery("regionCode", regionCodePattern));
searchSourceBuilder.query(boolQueryBuilder);
searchSourceBuilder.aggregation(
AggregationBuilders.cardinality("total_filling_count")
.field("sequenceNbr")
);
searchSourceBuilder.aggregation(
AggregationBuilders.sum("total_filling_quantity")
.field("fillingQuantity")
);
searchRequest.source(searchSourceBuilder);
System.out.println("Search Request: " + searchRequest);
try {
// 执行搜索请求
SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
// 获取所有聚合结果
Aggregations aggregations = searchResponse.getAggregations();
ParsedCardinality cardinalityAgg = aggregations.get("total_filling_count");
long uniqueCount = cardinalityAgg.getValue();
Sum sumAgg = aggregations.get("total_filling_quantity");
double totalSum = sumAgg.getValue();
System.out.println("填充数量的唯一值数量: " + uniqueCount);
System.out.println("填充量的总和: " + totalSum);
Map<String, Object> resultMap = new HashMap<>();
resultMap.put(REGION_CODE, regionModel.getRegionCode());
resultMap.put(REGION_NAME, regionModel.getRegionName());
resultMap.put(FILLING_TIMES, uniqueCount);
resultMap.put(FILLING_QUANTITY, totalSum);
return resultMap;
} catch (IOException e) {
e.printStackTrace();
}
return Collections.emptyMap();
}
}
\ No newline at end of file
......@@ -42,7 +42,7 @@ public class CylinderUnitVideoServiceImpl extends BaseService<CylinderUnitVideoD
private static final String CODE_404 = "404";
private static final String CODE_20001 = "20001";
@Override
public List<CommonVideoDto> getUnitVideoUrl(Long unitSeq) {
public List<CommonVideoDto> getUnitVideoUrl(String unitSeq) {
List<CommonVideoDto> result = new ArrayList<CommonVideoDto>();
LambdaQueryWrapper<CylinderUnitVideo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CylinderUnitVideo::getUnitSeq,unitSeq);
......
......@@ -62,7 +62,7 @@ public class InspectionExpireRemindJob {
}
@Scheduled(cron = "${inspection.expire.remind.job.cron:0 0 8 * * ?}")
@SchedulerLock(name = "sendReminderMessageJob", lockAtMostFor = "PT1H")
@SchedulerLock(name = "sendReminderMessage", lockAtMostFor = "PT1H")
public void sendReminderMessage() {
// 1.查询临期和超期的设备
List<NeedTipEquipInfo> needTipEquipList = getNeedTipEquipList();
......
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