/*
* Copyright (c) 京北方信息技术股份有限公司 Corporation 2023 . All rights reserved.
*
*/
package net.northking.cctp.project.dto.env;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.*;
import java.io.Serializable;
import java.util.Map;

/**
* Restful接口--更新资源--数据传输对象：系统环境数据源信息
*
* createdate:  2023-09-12 10:47:26  <br>
* @author:  maven-cctp-plugin  <br>
* @since:  1.0 <br>
*/
@JsonSerialize
@ApiModel(description = "系统环境数据源信息")
public class CpProjectEnvDsUpdateDto implements Serializable
{
    /**
     * 主键<br>
     */
    @ApiModelProperty("主键")
    @Size(max = 32, message="主键-id: 数据长度不能 > 32" )
    @NotBlank(message = "数据源主键不能为空")
    private String id;
    /**
     * 数据源类型 0-MongoDB，1-mysql，2-Oracle，3-达梦，4-OceanBase，5-db2<br>
     */
    @ApiModelProperty("数据源类型 0-MongoDB，1-mysql，2-Oracle，3-达梦，4-OceanBase，5-db2")
    @NotNull(message = "请选择数据源类型")
    private Integer dsType;
    /**
     * 主机<br>
     */
    @ApiModelProperty("主机")
    @Size(max = 128, message="主机-connHost: 数据长度不能 > 128" )
    @NotBlank(message = "请填写数据源主机地址")
    private String connHost;
    /**
     * 端口<br>
     */
    @ApiModelProperty("端口")
    @NotNull(message = "请填写数据源端口")
    private Integer connPort;
    /**
     * 数据库<br>
     */
    @ApiModelProperty("数据库")
    @Size(max = 32, message="数据库-connDatabase: 数据长度不能 > 32" )
    @NotBlank(message = "请填写数据库名称")
    private String connDatabase;
    /**
     * 用户名<br>
     */
    @ApiModelProperty("用户名")
    @Size(max = 32, message="用户名-connUsername: 数据长度不能 > 32" )
    @NotBlank(message = "请填写数据库用户名")
    private String connUsername;
    /**
     * 密码<br>
     */
    @ApiModelProperty("密码")
    @Size(max = 128, message="密码-connPassword: 数据长度不能 > 128" )
    @NotBlank(message = "请填写数据库密码")
    private String connPassword;
    /**
     * 描述<br>
     */
    @ApiModelProperty("描述")
    @Size(max = 255, message="描述-memo: 数据长度不能 > 255" )
    private String memo;

    /**
     * 高级属性
     */
    @ApiModelProperty("高级属性")
    private Map<String, Object> advancedConfigMap;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Integer getDsType() {
        return dsType;
    }

    public void setDsType(Integer dsType) {
        this.dsType = dsType;
    }

    public String getConnHost() {
        return connHost;
    }

    public void setConnHost(String connHost) {
        this.connHost = connHost;
    }

    public Integer getConnPort() {
        return connPort;
    }

    public void setConnPort(Integer connPort) {
        this.connPort = connPort;
    }

    public String getConnDatabase() {
        return connDatabase;
    }

    public void setConnDatabase(String connDatabase) {
        this.connDatabase = connDatabase;
    }

    public String getConnUsername() {
        return connUsername;
    }

    public void setConnUsername(String connUsername) {
        this.connUsername = connUsername;
    }

    public String getConnPassword() {
        return connPassword;
    }

    public void setConnPassword(String connPassword) {
        this.connPassword = connPassword;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }

    public Map<String, Object> getAdvancedConfigMap() {
        return advancedConfigMap;
    }

    public void setAdvancedConfigMap(Map<String, Object> advancedConfigMap) {
        this.advancedConfigMap = advancedConfigMap;
    }
}