ruwebframe 0.1.0

A brief description of your crate.
Documentation
use displaydoc::Display;
use serde::{Deserialize, Serialize};
use crate::rubase::ruentity;
use crate::rubase::rutils::strutils;

#[derive(Debug, Display, Deserialize, Serialize, Clone)]
pub struct SoftwareDto {
    pub env: String,
    pub webPrefix: String,   //  /mall/v3
    pub projectName: String, //  mall
    pub logLevel: String,    //  DEBU
    pub author: String,      // leijmdas@163.com
}

impl ruentity::BaseEntity for SoftwareDto {

}
impl SoftwareDto {
    pub fn new(
        env: String,
        webPrefix: String,
        projectName: String,
        logLevel: String,
        author: String,
    ) -> SoftwareDto {
        Self {
            env,
            webPrefix,
            projectName,
            logLevel,
            author,
        }
    }
    pub fn default() -> SoftwareDto {
        Self {
            env: "dev".to_string(),
            webPrefix: "/mall/v3".to_string(),
            projectName: "mall".to_string(),
            logLevel: "DEBUG".to_string(),
            author: "leijmdas@163.com".to_string(),
        }
    }
    pub fn parse_env_var(&mut self)   {
        self.env= strutils::parse_env_var(std::mem::take(&mut self.env));
        self.webPrefix= strutils::parse_env_var(std::mem::take(&mut self.webPrefix));
        self.projectName= strutils::parse_env_var(std::mem::take(&mut self.projectName));
        self.logLevel= strutils::parse_env_var(std::mem::take(&mut self.logLevel));
        self.author= strutils::parse_env_var(std::mem::take(&mut self.author));
        
    } 
}