lib

Core libraries for Radroots
git clone https://radroots.dev/git/lib.git
Log | Files | Refs | README | LICENSE

farm_member_claim.rs (3410B)


      1 use radroots_types::types::{IResult, IResultList};
      2 use serde::{Deserialize, Serialize};
      3 use serde_json::Value;
      4 
      5 #[derive(Serialize, Deserialize)]
      6 pub struct FarmMemberClaim {
      7     pub id: String,
      8     pub created_at: String,
      9     pub updated_at: String,
     10     pub member_pubkey: String,
     11     pub farm_pubkey: String,
     12 }
     13 
     14 #[derive(Clone, Deserialize, Serialize)]
     15 pub struct IFarmMemberClaimFields {
     16     pub member_pubkey: String,
     17     pub farm_pubkey: String,
     18 }
     19 
     20 #[derive(Clone, Deserialize, Serialize)]
     21 pub struct IFarmMemberClaimFieldsPartial {
     22     pub member_pubkey: Option<serde_json::Value>,
     23     pub farm_pubkey: Option<serde_json::Value>,
     24 }
     25 
     26 #[derive(Clone, Deserialize, Serialize)]
     27 pub struct IFarmMemberClaimFieldsFilter {
     28     pub id: Option<String>,
     29     pub created_at: Option<String>,
     30     pub updated_at: Option<String>,
     31     pub member_pubkey: Option<String>,
     32     pub farm_pubkey: Option<String>,
     33 }
     34 
     35 #[derive(Clone, Deserialize, Serialize)]
     36 #[serde(untagged)]
     37 pub enum FarmMemberClaimQueryBindValues {
     38     Id { id: String },
     39     MemberPubkey { member_pubkey: String },
     40     FarmPubkey { farm_pubkey: String },
     41 }
     42 impl FarmMemberClaimQueryBindValues {
     43     pub fn to_filter_param(&self) -> (&'static str, Value) {
     44         match self {
     45             Self::Id { id } => ("id", Value::from(id.clone())),
     46             Self::MemberPubkey { member_pubkey } => {
     47                 ("member_pubkey", Value::from(member_pubkey.clone()))
     48             }
     49             Self::FarmPubkey { farm_pubkey } => ("farm_pubkey", Value::from(farm_pubkey.clone())),
     50         }
     51     }
     52 
     53     pub fn primary_key(&self) -> Option<String> {
     54         match self {
     55             Self::Id { id } => Some(id.clone()),
     56             _ => None,
     57         }
     58     }
     59 
     60     pub fn lookup_key(&self) -> String {
     61         match self {
     62             Self::Id { id } => id.clone(),
     63             Self::MemberPubkey { member_pubkey } => member_pubkey.clone(),
     64             Self::FarmPubkey { farm_pubkey } => farm_pubkey.clone(),
     65         }
     66     }
     67 }
     68 
     69 pub struct IFarmMemberClaimCreateTs;
     70 pub type IFarmMemberClaimCreate = IFarmMemberClaimFields;
     71 pub struct IFarmMemberClaimCreateResolveTs;
     72 pub type IFarmMemberClaimCreateResolve = IResult<FarmMemberClaim>;
     73 #[derive(Deserialize, Serialize)]
     74 pub struct IFarmMemberClaimFindOneArgs {
     75     pub on: FarmMemberClaimQueryBindValues,
     76 }
     77 
     78 #[derive(Deserialize, Serialize)]
     79 #[serde(untagged)]
     80 pub enum IFarmMemberClaimFindOne {
     81     On(IFarmMemberClaimFindOneArgs),
     82 }
     83 
     84 pub struct IFarmMemberClaimFindOneResolveTs;
     85 pub type IFarmMemberClaimFindOneResolve = IResult<Option<FarmMemberClaim>>;
     86 #[derive(Deserialize, Serialize)]
     87 pub struct IFarmMemberClaimFindManyArgs {
     88     pub filter: Option<IFarmMemberClaimFieldsFilter>,
     89 }
     90 pub type IFarmMemberClaimFindMany = IFarmMemberClaimFindManyArgs;
     91 pub struct IFarmMemberClaimFindManyResolveTs;
     92 pub type IFarmMemberClaimFindManyResolve = IResultList<FarmMemberClaim>;
     93 pub struct IFarmMemberClaimDeleteTs;
     94 pub type IFarmMemberClaimDelete = IFarmMemberClaimFindOne;
     95 pub struct IFarmMemberClaimDeleteResolveTs;
     96 pub type IFarmMemberClaimDeleteResolve = IResult<String>;
     97 #[derive(Deserialize, Serialize)]
     98 pub struct IFarmMemberClaimUpdateArgs {
     99     pub on: FarmMemberClaimQueryBindValues,
    100     pub fields: IFarmMemberClaimFieldsPartial,
    101 }
    102 pub type IFarmMemberClaimUpdate = IFarmMemberClaimUpdateArgs;
    103 pub struct IFarmMemberClaimUpdateResolveTs;
    104 pub type IFarmMemberClaimUpdateResolve = IResult<FarmMemberClaim>;