fuliqi
2024-07-18 d96427842163d9f2539576b737e38c2cc49ff87b
对接接口调整
25个文件已修改
6个文件已添加
251 ■■■■ 已修改文件
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/AttrRecognitionParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CarDetectParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CodeByAreaParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CoordinateByAreaParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CrossDetailParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/DataIntegrityMonitoringParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDetectParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDeviceInspectionParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDeviceSamplingParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/MonitoringDetailParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/OrganizationTreeParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/PicAccessParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/SnapshotDataMonitorParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/SnapshotDelayMonitorParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/VehicleDeviceInspectionParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/VehicleDeviceSamplingParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckTemplateQuery.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/BaseResult.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDeviceInspectionResult.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/VehicleDeviceInspectionResult.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/PlatformApplication.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/config/HKFeignConfig.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/config/YYFeignConfig.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/interceptor/HKFeignInterceptor.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/controller/CheckTemplateController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateRuleServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/task/HKTask.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/web/HKClient.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/web/UYClient.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/application-dev.yml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/AttrRecognitionParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CarDetectParam.java
@@ -32,7 +32,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 监测资源 – 编号(关注监测资源查询接口获取)。查询指定监测资源下的所有设备或卡口详情
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CodeByAreaParam.java
@@ -38,7 +38,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 采集设备类型:1、所有采集设备;2、人脸采集设备;3、车辆采集设备;4、其他采集设备。不传,默认查询所有采集设备。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CoordinateByAreaParam.java
@@ -38,7 +38,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 采集设备类型:1、所有采集设备;2、人脸采集设备;3、车辆采集设备;4、其他采集设备。不传,默认查询所有采集设备。此参数在deviceType为1即采集设备时有效。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/CrossDetailParam.java
@@ -32,7 +32,7 @@
    /**
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/DataIntegrityMonitoringParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDetectParam.java
@@ -32,7 +32,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 监测资源 – 编号(关注监测资源查询接口获取)。查询指定监测资源下的所有设备或卡口详情
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDeviceInspectionParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/FaceDeviceSamplingParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/MonitoringDetailParam.java
@@ -32,7 +32,7 @@
    /**
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/OrganizationTreeParam.java
@@ -21,7 +21,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/PicAccessParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/SnapshotDataMonitorParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 监测资源 – 编号(关注监测资源查询接口获取)。查询指定监测资源下的所有设备或卡口详情
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/SnapshotDelayMonitorParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 类型:1、卡口过车数据;2、人脸数据;11、设备过车数据
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/VehicleDeviceInspectionParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/param/HK/VehicleDeviceSamplingParam.java
@@ -33,7 +33,7 @@
     * 日期:需要哪天的异常数据。格式:yyyy-mm-dd
     * 必填
     */
    private Date date;
    private String date;
    /**
     * 组织编号,查询该组织及其所有直属下级异常情况。若不传,返回所有组织异常情况。
ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckTemplateQuery.java
@@ -89,6 +89,7 @@
    private Short frequency;
    /** 考核描述 */
    private String description;
    /** 考核规则 */
    private List<Map<String,Object>> ruleFormList;
}
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/BaseResult.java
New file
@@ -0,0 +1,17 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.bson.types.ObjectId;
import org.springframework.data.annotation.Id;
import java.util.Date;
@Data
public class BaseResult {
    @Id
    private ObjectId id;
    /**
     * 数据日期
     */
    private Date createTime;
}
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDeviceInspectionResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 人脸设备全检指标监测结果,2.3.0版本新增
@@ -8,7 +9,8 @@
 * @author gonghl
 */
@Data
public class FaceDeviceInspectionResult {
@Document(collection = "face_device_inspection")
public class FaceDeviceInspectionResult extends BaseResult{
    /**
     * 设备名称
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/VehicleDeviceInspectionResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 车辆设备全检指标监测结果,2.3.0版本新增
@@ -8,17 +9,19 @@
 * @author gonghl
 */
@Data
public class VehicleDeviceInspectionResult {
@Document(collection = "vehicle_device_inspection")
public class VehicleDeviceInspectionResult extends BaseResult{
    /**
     * 设备编号,dataType为1时表示卡口内码,dataType为11时表示采集设备内码
     */
    private String externalIndexCode;
    /**
     * 设备名称
     */
    private String deviceName;
    /**
     * 设备编号,dataType为1时表示卡口内码,dataType为11时表示采集设备内码
     */
    private String externalIndexCode;
    /**
     * 卡口内码或采集设备内码
ycl-server/src/main/java/com/ycl/PlatformApplication.java
@@ -2,15 +2,18 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.cloud.openfeign.FeignAutoConfiguration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@Slf4j
@EnableCaching
@EnableTransactionManagement
@EnableFeignClients(basePackages = {"com.ycl.web"})
@ImportAutoConfiguration({FeignAutoConfiguration.class})
@SpringBootApplication
public class PlatformApplication {
    public static void main(String[] args) {
ycl-server/src/main/java/com/ycl/config/HKFeignConfig.java
New file
@@ -0,0 +1,15 @@
package com.ycl.config;
import com.ycl.interceptor.HKFeignInterceptor;
import feign.RequestInterceptor;
import org.springframework.context.annotation.Bean;
public class HKFeignConfig {
    /**
     * 注入拦截器
     */
    @Bean
    public RequestInterceptor requestInterceptor(){
        return new HKFeignInterceptor();
    }
}
ycl-server/src/main/java/com/ycl/config/YYFeignConfig.java
New file
@@ -0,0 +1,15 @@
package com.ycl.config;
import com.ycl.interceptor.YYFeignInterceptor;
import feign.RequestInterceptor;
import org.springframework.context.annotation.Bean;
public class YYFeignConfig {
    /**
     * 注入拦截器
     */
    @Bean
    public RequestInterceptor requestInterceptor(){
        return new YYFeignInterceptor();
    }
}
ycl-server/src/main/java/com/ycl/interceptor/HKFeignInterceptor.java
New file
@@ -0,0 +1,14 @@
package com.ycl.interceptor;
import feign.RequestInterceptor;
import feign.RequestTemplate;
/**
 * 海康请求拦截器
 */
public class HKFeignInterceptor implements RequestInterceptor {
    @Override
    public void apply(RequestTemplate requestTemplate) {
    }
}
ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java
New file
@@ -0,0 +1,14 @@
package com.ycl.interceptor;
import feign.RequestInterceptor;
import feign.RequestTemplate;
/**
 * 优云请求拦截器
 */
public class YYFeignInterceptor implements RequestInterceptor {
    @Override
    public void apply(RequestTemplate requestTemplate) {
        requestTemplate.header("token", "auth");
    }
}
ycl-server/src/main/java/com/ycl/platform/controller/CheckTemplateController.java
@@ -98,6 +98,7 @@
    @PutMapping("/weight")
    public AjaxResult editWeight(@RequestBody CheckTemplateRule checkTemplateRule)
    {
        return toAjax(checkTemplateRuleService.updateCheckTemplateRule(checkTemplateRule));
    }
    /**
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateRuleServiceImpl.java
@@ -11,7 +11,7 @@
/**
 * 考核模板-规则中间Service业务层处理
 *
 *
 * @author ruoyi
 * @date 2024-04-01
 */
@@ -23,7 +23,7 @@
    /**
     * 查询考核模板-规则中间
     *
     *
     * @param id 考核模板-规则中间主键
     * @return 考核模板-规则中间
     */
@@ -35,7 +35,7 @@
    /**
     * 查询考核模板-规则中间列表
     *
     *
     * @param checkTemplateRule 考核模板-规则中间
     * @return 考核模板-规则中间
     */
@@ -47,7 +47,7 @@
    /**
     * 新增考核模板-规则中间
     *
     *
     * @param checkTemplateRule 考核模板-规则中间
     * @return 结果
     */
@@ -59,19 +59,20 @@
    /**
     * 修改考核模板-规则中间
     *
     *
     * @param checkTemplateRule 考核模板-规则中间
     * @return 结果
     */
    @Override
    public int updateCheckTemplateRule(CheckTemplateRule checkTemplateRule)
    {
        return checkTemplateRuleMapper.updateCheckTemplateRule(checkTemplateRule);
    }
    /**
     * 批量删除考核模板-规则中间
     *
     *
     * @param ids 需要删除的考核模板-规则中间主键
     * @return 结果
     */
@@ -83,7 +84,7 @@
    /**
     * 删除考核模板-规则中间信息
     *
     *
     * @param id 考核模板-规则中间主键
     * @return 结果
     */
ycl-server/src/main/java/com/ycl/task/HKTask.java
New file
@@ -0,0 +1,94 @@
package com.ycl.task;
import com.alibaba.fastjson2.JSONObject;
import com.ycl.platform.domain.param.HK.FaceDeviceInspectionParam;
import com.ycl.platform.domain.param.HK.VehicleDeviceInspectionParam;
import com.ycl.platform.domain.result.HK.FaceDeviceInspectionResult;
import com.ycl.platform.domain.result.HK.VehicleDeviceInspectionResult;
import com.ycl.web.HKClient;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Slf4j
@Component("HKTask")
public class HKTask {
    @Autowired
    private MongoTemplate mongoTemplate;
    @Autowired
    private HKClient hkClient;
    private final static Integer pageNo = 1;
    private final static Integer pageSize = 5000;
    //成功状态码
    private final static String successCode = "0";
    //车辆设备全检指标监测结果
    public void VehicleDeviceInspectionTask() {
        log.info("开始执行车辆设备全检指标监测结果数据同步");
        VehicleDeviceInspectionParam param = new VehicleDeviceInspectionParam();
        param.setPageNO(pageNo).setPageSize(pageSize).setDate(getToday());
        JSONObject jsonObject = hkClient.VehicleDeviceInspection(param);
        if (jsonObject != null && successCode.equals(jsonObject.getString("code"))) {
            JSONObject data = jsonObject.getJSONObject("data");
            if (data == null) {
                throw new RuntimeException("车辆设备全检指标监测结果数据为空");
            }
            List<VehicleDeviceInspectionResult> list = data.getList("list", VehicleDeviceInspectionResult.class);
            list.forEach(item ->item.setCreateTime(new Date()));
            if (CollectionUtils.isEmpty(list)) {
                throw new RuntimeException("车辆设备全检指标监测结果数据为空");
            }
            //TODO:同步的数据可能需要工单阈值等处理
            //存放在mongo中
            mongoTemplate.insert(list);
        } else {
            log.error("同步车辆设备全检指标监测结果失败", jsonObject);
        }
        log.info("结束车辆设备全检指标监测结果数据同步");
    }
    public void FaceDeviceInspectionTask() {
        log.info("开始执行人脸设备全检指标监测结果数据同步");
        FaceDeviceInspectionParam param = new FaceDeviceInspectionParam();
        param.setPageNO(pageNo).setPageSize(pageSize).setDate(getToday());
        JSONObject jsonObject = hkClient.FaceDeviceInspection(param);
        if (jsonObject != null && successCode.equals(jsonObject.getString("code"))) {
            JSONObject data = jsonObject.getJSONObject("data");
            if (data == null) {
                throw new RuntimeException("人脸设备全检指标监测结果数据为空");
            }
            List<FaceDeviceInspectionResult> list = data.getList("list", FaceDeviceInspectionResult.class);
            list.forEach(item ->item.setCreateTime(new Date()));
            if (CollectionUtils.isEmpty(list)) {
                throw new RuntimeException("人脸设备全检指标监测结果数据为空");
            }
            //TODO:同步的数据可能需要工单阈值等处理
            //存放在mongo中
            mongoTemplate.insert(list);
        } else {
            log.error("同步人脸设备全检指标监测结果失败", jsonObject);
        }
        log.info("结束人脸设备全检指标监测结果数据同步");
    }
    private String getToday() {
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String today = sdf.format(date);
        return today;
    }
}
ycl-server/src/main/java/com/ycl/web/HKClient.java
@@ -1,6 +1,7 @@
package com.ycl.web;
import com.alibaba.fastjson2.JSONObject;
import com.ycl.config.HKFeignConfig;
import com.ycl.platform.domain.param.HK.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
@@ -13,7 +14,7 @@
 */
@Component
@FeignClient(name = "HKClient", url = "${request.haiKangDomain}")
@FeignClient(name = "HKClient", url = "${request.haiKangDomain}", configuration = HKFeignConfig.class)
public interface HKClient {
    /**
@@ -188,7 +189,7 @@
     * @return 人脸设备全检指标监测结果
     */
    @PostMapping("/dqd/service/rs/v2/data/faceFullAmount/query")
    JSONObject DataIntegrityMonitoring(FaceDeviceInspectionParam param);
    JSONObject FaceDeviceInspection(FaceDeviceInspectionParam param);
    /**
     * 人脸设备抽检指标监测结果
@@ -199,7 +200,7 @@
     * @return 人脸设备抽检指标监测结果
     */
    @PostMapping("/dqd/service/rs/v2/data/faceSampleAmount/query")
    JSONObject DataIntegrityMonitoring(FaceDeviceSamplingParam param);
    JSONObject FaceDeviceSampling(FaceDeviceSamplingParam param);
    /**
     * 车辆设备全检指标监测结果
ycl-server/src/main/java/com/ycl/web/UYClient.java
@@ -1,6 +1,8 @@
package com.ycl.web;
import com.alibaba.fastjson2.JSONObject;
import com.ycl.config.HKFeignConfig;
import com.ycl.config.YYFeignConfig;
import com.ycl.platform.domain.param.YY.CameraParam;
import com.ycl.platform.domain.param.YY.OnlineParam;
import com.ycl.platform.domain.param.YY.RecordMetaDSumParam;
@@ -15,7 +17,7 @@
 */
@Component
@FeignClient(name = "UYClient", url = "${request.youYunDomain}")
@FeignClient(name = "UYClient", url = "${request.youYunDomain}", configuration = YYFeignConfig.class)
public interface UYClient {
    /**
ycl-server/src/main/resources/application-dev.yml
@@ -123,4 +123,6 @@
      host: 42.193.1.25
      database: zgyw
      port: 27017
      username: admin
      password: ycl@202466