こんな感じです
コードと簡単説明
- まずは、表示するAlertを作成します。
 - アラートにTextFieldを表示するには、
alert.addTextField(configurationHandler:((UITextField) -> Void)?)を使用します。 
Alert
    func showTextFieldAlert(targetView:UIViewController){
        
        var productNameTextField:UITextField? //Alertに表示したTextField.Textを入れて使います
        var janCodeTextField:UITextField?
        var deadlineDayTextField:UITextField?
        let alert = UIAlertController(title: "データを追加", message:"データを追加する場合は、値を入力して下さい", preferredStyle: .alert)
        alert.addTextField { (alertProductNameTextField:UITextField) in
            alertProductNameTextField.placeholder = "プレスホルダー"
            productNameTextField = alertProductNameTextField) //
        }
        alert.addTextField { (alertJANCodeTextField:UITextField) in
            alertJANCodeTextField.placeholder = "プレスホルダー"
            janCodeTextField = alertJANCodeTextField
        }
        
        alert.addTextField { (alertDeadlineDayTextField:UITextField) in
            alertDeadlineDayTextField.placeholder = "プレスホルダー"
            deadlineDayTextField = alertDeadlineDayTextField
        }
        alert.addAction(UIAlertAction(title: "キャンセル", style: .default, handler: nil))
        
        alert.addAction(UIAlertAction(title: "追加", style: .default, handler: { _ in
            //追加が押された時の処理
         }))
        targetView.present(alert, animated: true, completion: nil)
    }
- FSCalendarで日付のタップを検知するには、
func calendar(_ calendar: FSCalendar, didSelect date: Date, at monthPosition: FSCalendarMonthPosition) {}を使用します。 
FSCalendar
func calendar(_ calendar: FSCalendar, didSelect date: Date, at monthPosition: FSCalendarMonthPosition) {
        
           //カレンダーの日付がタップされた時に働く処理
     }
実際にアプリで書いたコード
Alert
Alert
extension Alert{   
    
    func showTextFieldAlert(targetView:UIViewController){
        
        let realmCRUDModel = RealmCRUDModel()
        
        var productNameTextField:UITextField?
        var janCodeTextField:UITextField?
        var deadlineDayTextField:UITextField?
        let alert = UIAlertController(title: "データを追加", message:"データを追加する場合は、値を入力して下さい", preferredStyle: .alert)
        alert.addTextField { (alertProductNameTextField:UITextField) in
            alertProductNameTextField.placeholder = "商品名"
            productNameTextField = alertProductNameTextField
        }
        alert.addTextField { (alertJANCodeTextField:UITextField) in
            alertJANCodeTextField.placeholder = "JANコード"
            janCodeTextField = alertJANCodeTextField
        }
        
        alert.addTextField { (alertDeadlineDayTextField:UITextField) in
            alertDeadlineDayTextField.placeholder = "期限 例:2021年01月01日"
            deadlineDayTextField = alertDeadlineDayTextField
        }
         
        alert.addAction(UIAlertAction(title: "キャンセル", style: .default, handler: nil))
        
        alert.addAction(UIAlertAction(title: "追加", style: .default, handler: { _ in
            realmCRUDModel.createRealm(createProductName: (productNameTextField?.text)!, createJANCode: (janCodeTextField?.text)!, createDeadlineDay: (deadlineDayTextField?.text)!)
         }))
        targetView.present(alert, animated: true, completion: nil)
    }
        
}
FSCalendar
ViewController
    func calendar(_ calendar: FSCalendar, didSelect date: Date, at monthPosition: FSCalendarMonthPosition) {
            
        alert.showTextFieldAlert(targetView: self)
    
     }
終わり
初めて、TextField入りのAlertを書いた時に
Alert内のTextField.textをどうすれば使えるのか分からなかったのが懐かしい