
module.exports = {


  friendlyName: 'Delete',


  description: 'Delete admin.',


  inputs: {
    id:{
      type:'number',
      required: true
    }
  },


  exits: {
    notFound:{
      description:"Not found"
    }
  },


  fn: async function (inputs, exits) {

    let admin = await User.find({id: inputs.id}).then(_.first)
    ///console.log('Admin', admin, inputs.id)
    if(!admin){
      return exits.notFound({message:"Utilisateur non trouvé"})
    }
    let facture = await Factures.find({user: admin.id}).then(_.first)
    if(facture){
      return exits.notFound({message:"Suppression impossible car une facture est rattachée à cet Utilisateur, Veuillez plûtot désactiver le compte!"})
    }

    let appro = await Approvisionnements.find({user: admin.id}).then(_.first)
    if(appro){
      return exits.notFound({message:"Suppression impossible car un Approvisionnement est rattaché à cet Utilisateur, Veuillez plûtot désactiver le compte!"})
    }

    let repartition = await Repartitions.find({user: admin.id}).then(_.first)
    if(repartition){
      return exits.notFound({message:"Suppression impossible car une Répartition est rattachée à cet Utilisateur, Veuillez plûtot désactiver le compte!"})
    }

    let userInfo = await UserInfo.find({ username: admin.username }).then(_.first)
    
    await UserInfo.destroy({id: userInfo.id})

    let user = await User.destroy({id: admin.id})

    // All done.
    return exits.success({message:'Done !'})

  }


};
