12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- import 'package:flutter/material.dart';
- import 'package:vitalapp/components/button.dart';
- import 'package:vitalapp/pages/check/models/form.dart';
- import 'package:vitalapp/pages/check/widgets/exam_configurable/exam_radio_and_select.dart';
- class ExamMedication extends StatelessWidget {
- final List<dynamic>? currentValues;
- final Function? addVeterinaryDrug;
- final FormObject currentFormObject;
- final Function? deleteVeterinaryDrug;
- const ExamMedication({
- super.key,
- this.currentValues,
- this.addVeterinaryDrug,
- required this.currentFormObject,
- this.deleteVeterinaryDrug,
- });
- @override
- Widget build(BuildContext context) {
- return Stack(
- children: [
- ExamCardRadioSelect(
- title: currentFormObject.label ?? "",
- clickCard: null,
- content: Container(
- alignment: Alignment.centerLeft,
- padding: const EdgeInsets.only(
- right: 20,
- left: 20,
- bottom: 10,
- ),
- child: Column(children: [
- ...currentValues!.asMap().entries.map((entry) {
- var medicationModel = MedicationModel.fromJson(entry.value);
- return Row(
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.start,
- children: [
- Expanded(
- child: Text(
- "药物${entry.key + 1}:${medicationModel.name} 用法:${medicationModel.monthOrDay}${medicationModel.usage}次 每次剂量${medicationModel.dosages} mg",
- style: TextStyle(fontSize: 18, color: Colors.black54),
- textAlign: TextAlign.left,
- ),
- ),
- IconButton(
- onPressed: () {
- deleteVeterinaryDrug!(entry.key);
- },
- icon: Icon(Icons.delete),
- ),
- ],
- );
- }).toList()
- ]),
- ),
- ),
- Positioned(
- right: 16,
- top: 8,
- child: SizedBox(
- width: 130,
- height: 54,
- child: VButton(
- child: Row(
- mainAxisAlignment: MainAxisAlignment.center,
- children: const [
- Icon(Icons.add, size: 24),
- SizedBox(
- width: 8,
- ),
- Text(
- "新增",
- style: TextStyle(
- fontSize: 20,
- ),
- )
- ],
- ),
- onTap: () {
- addVeterinaryDrug!();
- },
- ),
- ),
- ),
- ],
- );
- }
- }
|