ruwebframe 0.1.4

a simple webframe for rust actix-web, based on rudi and rbatis.
Documentation
use ruentity::BaseEntity;

use crate::rubase::getself::GetSelf;
use crate::rubase::rudto::cfgdto;
use crate::rubase::{rudto, ruentity};
use crate::rudomain::rudb::dbentity::dbexample;
use crate::{rucfg, rulog};
use std::fs::File;
use std::io::{BufReader, Read};
use std::sync::Arc;

#[test]
fn test_001_parse_config() {
    let config = rucfg::find_bean_ruconfig().unwrap();
    println!("config:\n{:#?}", config);

    let file = File::open("./config/ichub-postgres.yml");
    let mut read = BufReader::new(file.unwrap());
    let mut yaml_str = String::new();
    read.read_to_string(&mut yaml_str).unwrap();

    let ret = serde_yaml::from_str::<cfgdto::cfgdto::CfgDto>(&yaml_str);
    // ✅ 显式指定类型
    println!("{:#?}", ret);
}

#[test]
fn test_004_parse_config() {
    let config = rucfg::find_bean_ruconfig().unwrap().read();
    println!("{:#?}", config);

    rulog::info(config.to_json().as_str());
}
#[test]
fn test_006_from_json() {
    let person = dbexample::Person::default();

    let s = r##"{
            "id": 123,
            "name": "宋双艳",
            "age": 45,
            "active": false
        }"##;
    let p = person.from_json(s.to_string());
    println!("p:{:#?}", p);
}

#[test]
fn test_007_parse_config() {
    let mut config = rucfg::find_bean_ruconfig().unwrap().read();
    println!("{:#?}", config);
    //rulog::info(jsonutils::struct2json(&config) .unwrap().as_str());
    rulog::info(config.to_json().as_str()); // 3. 传 &str
    config.gorm.dbType = "1111".to_string();
    let pp = config.from_json(config.to_json());
    println!("pp:{:#?}", pp);
}
#[test]
fn test_008_parse_config() {
    let mut config = rucfg::find_bean_ruconfig().unwrap().read();
    println!("{:#?}", config);
    rulog::info(config.to_json().as_str());
    config.gorm.dbType = "1111".to_string();
    let pp = config.from_json(config.to_json());
    println!("pp:{:#?}", pp);
}

#[test]
fn test_010_parse_config() {
    let cfg = cfgdto::CfgDto::default();
    println!("{:#?}", cfg);
}
#[test]
fn test_011_parse_config() {
    let cfg = cfgdto::find_bean_cfgdto();
    println!("{:#?}", cfg);
}

#[test]
fn test_012_parse_config() {
    let mut person = dbexample::find_bean_person().unwrap();
    Arc::make_mut(&mut person).name = "leijmdas".to_string();
    rulog::info2("person:", person.to_json().as_str());
    // 从 JSON 字符串反序列化回结构体
    let s = r#"
            {
                "id": 10,
                "name": "songlei",
                "age": 10,
                "active": true
            }
    "#;
    let pp = person.from_json(s.to_string());
    rulog::info2("pp:", pp.to_json().as_str());
}
#[test]
fn test_13_to_json() {
    let mut person = (*dbexample::find_bean_person().unwrap()).clone();
    person.name = "leijmdas".to_string();
    rulog::info2("person:", person.to_json().as_str());
}
#[test]
fn test_14_from_json() {
    let person = dbexample::find_bean_person().unwrap().get_self();
    // 从 JSON 字符串反序列化回结构体
    let json = r#"
                {
                    "id": 10,
                    "name": "songlei",
                    "age": 10,
                    "active": true
                }
        "#;
    let pnew = person.from_json(json.to_string());
    rulog::info2("pnew:", pnew.to_json().as_str());
}
#[test]
fn test_15_from_json() {
    let mut fileDto = rudto::find_bean_filedto().unwrap().get_self();
    println!("{:#?}", fileDto);
    fileDto.size = 4;
}

#[test]
fn test_016_cfg_to_json() {
    println!(
        "cfg:\n{:#?}",
        rucfg::find_bean_ruconfig().unwrap().to_json()
    );

}
#[test]
fn test_017_cfg_get_self() {

 rulog::info2("config:*****************", rucfg::find_bean_ruconfig().unwrap().get_self())
}