Carousel
This commit is contained in:
parent
e1d39b59fd
commit
10f4e04004
|
@ -4,6 +4,6 @@ class Constants {
|
|||
static Color k2color = Color.fromARGB(255, 0, 71, 132);
|
||||
|
||||
//static const url = "http://192.168.172.50:8082/api";
|
||||
static const url = 'http://192.168.2.143:8084/api';
|
||||
static const url = 'http://192.168.2.143:8085/api';
|
||||
//static const url = 'http://192.168.153.50:8082/api';
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import 'package:discover_module/provider_class/affiliationsprovider.dart';
|
||||
import 'package:discover_module/provider_class/events_provider.dart';
|
||||
import 'package:discover_module/provider_class/hcp%20_provider.dart';
|
||||
import 'package:discover_module/provider_class/medicalinsightprovider.dart';
|
||||
import 'package:discover_module/provider_class/publications_provider.dart';
|
||||
import 'package:discover_module/provider_class/single_hcpprovider.dart';
|
||||
import 'package:discover_module/provider_class/trials_provider.dart';
|
||||
|
@ -15,6 +16,7 @@ import 'package:discover_module/ui_screen/interactionform/repository/hive_reposi
|
|||
import 'package:discover_module/ui_screen/interactionform/viewinteractionprovider.dart';
|
||||
import 'package:discover_module/ui_screen/listview.dart';
|
||||
import 'package:discover_module/ui_screen/filters_menu.dart';
|
||||
import 'package:discover_module/ui_screen/medical_insight.dart';
|
||||
import 'package:discover_module/ui_screen/new_contacts.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
@ -70,12 +72,14 @@ Future<void> main() async {
|
|||
ChangeNotifierProvider(create: (_) => PublicatioProvider()),
|
||||
ChangeNotifierProvider(create: (_) => EventProvider()),
|
||||
ChangeNotifierProvider(create: (_) => TrialsProvider()),
|
||||
ChangeNotifierProvider(create: (_) => MediacalInsightProvider()),
|
||||
//ChangeNotifierProvider(create: (_) => ConfigDataProvider()),
|
||||
ChangeNotifierProvider<HiveDataRepository>(
|
||||
create: (_) => HiveDataRepository(
|
||||
Hive.box<InteractionConfigData>('InteractionConfigDataBox'))),
|
||||
],
|
||||
child: MyApp(),
|
||||
// child: MedicalInsight(),
|
||||
));
|
||||
}
|
||||
|
||||
|
@ -100,6 +104,7 @@ class _MyAppState extends State<MyApp> {
|
|||
foregroundColor: Colors.white //here you can give the text color
|
||||
)),
|
||||
home: const MyHomePage(title: 'Discover Module'),
|
||||
// home: const MedicalInsight(),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
import 'package:discover_module/service.dart/service.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
|
||||
class MediacalInsightProvider extends ChangeNotifier {
|
||||
final callapi = Callapi();
|
||||
|
||||
List med = [];
|
||||
|
||||
List get trialsinfo => med;
|
||||
|
||||
medicalinsightdata() async {
|
||||
final jsonres = await callapi.getallMedicalInsightdata();
|
||||
med = jsonres;
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
|
@ -152,4 +152,18 @@ class Callapi {
|
|||
print("All_trialsss: $jsontrials");
|
||||
return jsontrials;
|
||||
}
|
||||
|
||||
getallMedicalInsightdata() async {
|
||||
// const url = 'http://127.0.0.1:8000/api/users';
|
||||
// const url = 'http://192.168.2.143:8082/api/users';
|
||||
// const url = 'http://192.168.172.50:8082/api/users';
|
||||
// const url = 'http://192.168.172.50:8081/api/users';
|
||||
|
||||
const url = '$curl/medicalinsight';
|
||||
|
||||
final response = await Dio().get(url);
|
||||
|
||||
final jsonresponse = response.data;
|
||||
return jsonresponse;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
// To parse this JSON data, do
|
||||
//
|
||||
// final medicalInsight = medicalInsightFromJson(jsonString);
|
||||
|
||||
import 'dart:convert';
|
||||
|
||||
List<MedicalInsight> medicalInsightFromJson(String str) =>
|
||||
List<MedicalInsight>.from(
|
||||
json.decode(str).map((x) => MedicalInsight.fromJson(x)));
|
||||
|
||||
String medicalInsightToJson(List<MedicalInsight> data) =>
|
||||
json.encode(List<dynamic>.from(data.map((x) => x.toJson())));
|
||||
|
||||
class MedicalInsight {
|
||||
int id;
|
||||
int interactionId;
|
||||
String therapeuticArea;
|
||||
String product;
|
||||
String sourceType;
|
||||
String topics;
|
||||
String hcpName;
|
||||
DateTime createdAt;
|
||||
DateTime updatedAt;
|
||||
|
||||
MedicalInsight({
|
||||
required this.id,
|
||||
required this.interactionId,
|
||||
required this.therapeuticArea,
|
||||
required this.product,
|
||||
required this.sourceType,
|
||||
required this.topics,
|
||||
required this.hcpName,
|
||||
required this.createdAt,
|
||||
required this.updatedAt,
|
||||
});
|
||||
|
||||
factory MedicalInsight.fromJson(Map<String, dynamic> json) => MedicalInsight(
|
||||
id: json["id"],
|
||||
interactionId: json["Interaction Id"],
|
||||
therapeuticArea: json["Therapeutic Area"],
|
||||
product: json["Product"],
|
||||
sourceType: json["Source Type"],
|
||||
topics: json["Topics"],
|
||||
hcpName: json["HCP Name"],
|
||||
createdAt: DateTime.parse(json["created_at"]),
|
||||
updatedAt: DateTime.parse(json["updated_at"]),
|
||||
);
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
"id": id,
|
||||
"Interaction Id": interactionId,
|
||||
"Therapeutic Area": therapeuticArea,
|
||||
"Product": product,
|
||||
"Source Type": sourceType,
|
||||
"Topics": topics,
|
||||
"HCP Name": hcpName,
|
||||
"created_at": createdAt.toIso8601String(),
|
||||
"updated_at": updatedAt.toIso8601String(),
|
||||
};
|
||||
}
|
|
@ -56,6 +56,8 @@ class _InteractionScreen1State extends State<InteractionScreen1> {
|
|||
|
||||
var item1;
|
||||
|
||||
final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
|
||||
|
||||
int _currentPage = 0;
|
||||
late int _totalPages =
|
||||
Provider.of<InteractionProvider>(context, listen: false)
|
||||
|
|
|
@ -3,6 +3,7 @@ import 'package:discover_module/ui_screen/interactionform/model/save_interaction
|
|||
import 'package:discover_module/ui_screen/interactionform/util.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/view_interaction_screen.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/viewinteractionprovider.dart';
|
||||
import 'package:discover_module/ui_screen/new_editinteraction.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
|
@ -99,11 +100,19 @@ class _SavedFormListScreenState extends State<SavedFormListScreen> {
|
|||
IconButton(
|
||||
onPressed: () async {
|
||||
await provider.initConfigData().then({
|
||||
// Navigator.push(
|
||||
// context,
|
||||
// MaterialPageRoute(
|
||||
// builder: (BuildContext context) =>
|
||||
// EditInteractionScreen(
|
||||
// saveInteraction: provider
|
||||
// .savedList[index],
|
||||
// )))
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (BuildContext context) =>
|
||||
EditInteractionScreen(
|
||||
EditInteractionScreen1(
|
||||
saveInteraction: provider
|
||||
.savedList[index],
|
||||
)))
|
||||
|
|
|
@ -1,3 +1,74 @@
|
|||
// import 'package:flutter/material.dart';
|
||||
// import 'package:flutter/services.dart';
|
||||
|
||||
// // ignore: must_be_immutable
|
||||
// class InteractionTextField extends StatelessWidget {
|
||||
// String labelText;
|
||||
// TextEditingController controller;
|
||||
// String? hintText;
|
||||
// IconButton? suffixIcon;
|
||||
// bool? enabled = true;
|
||||
// bool? obscure = false;
|
||||
// Function onChanged;
|
||||
// TextInputType? inputType;
|
||||
// int? maxchars = 0;
|
||||
// int? maxlines = 1;
|
||||
// int? minlines = 0;
|
||||
// InteractionTextField(
|
||||
// {super.key,
|
||||
// required this.controller,
|
||||
// this.hintText,
|
||||
// required this.labelText,
|
||||
// this.suffixIcon,
|
||||
// this.enabled,
|
||||
// this.maxchars,
|
||||
// this.maxlines,
|
||||
// this.inputType,
|
||||
// this.minlines,
|
||||
// required this.onChanged,
|
||||
// this.obscure});
|
||||
|
||||
// @override
|
||||
// Widget build(BuildContext context) {
|
||||
// return TextField(
|
||||
// controller: controller,
|
||||
// style: const TextStyle(fontSize: 16),
|
||||
// enabled: enabled,
|
||||
// obscureText: obscure ?? false,
|
||||
// onTap: () {},
|
||||
// maxLines: maxlines ?? 1,
|
||||
// minLines: minlines,
|
||||
// keyboardType: inputType ?? TextInputType.name,
|
||||
// onChanged: (value) {
|
||||
// onChanged(value);
|
||||
// },
|
||||
// onSubmitted: (value) {
|
||||
// onChanged(value);
|
||||
// },
|
||||
// inputFormatters: [
|
||||
// inputType == TextInputType.number
|
||||
// ? FilteringTextInputFormatter.digitsOnly
|
||||
// : maxchars == 0
|
||||
// ? LengthLimitingTextInputFormatter(100)
|
||||
// : LengthLimitingTextInputFormatter(maxchars),
|
||||
// ],
|
||||
// decoration: InputDecoration(
|
||||
// isDense: true,
|
||||
// // contentPadding: const EdgeInsets.symmetric(
|
||||
// // horizontal: 10,
|
||||
// // vertical: 18,
|
||||
// // ),
|
||||
// contentPadding: EdgeInsets.all(13.0),
|
||||
// border: OutlineInputBorder(
|
||||
// borderRadius: BorderRadius.circular(10.0),
|
||||
// ),
|
||||
// suffixIcon: suffixIcon,
|
||||
// hintText: hintText,
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
|
|
|
@ -0,0 +1,926 @@
|
|||
// import 'package:discover_module/constants.dart';
|
||||
// import 'package:discover_module/provider_class/medicalinsightprovider.dart';
|
||||
// import 'package:discover_module/ui_screen/view_insight.dart';
|
||||
// import 'package:flutter/cupertino.dart';
|
||||
// import 'package:flutter/material.dart';
|
||||
// import 'package:flutter/widgets.dart';
|
||||
// import 'package:provider/provider.dart';
|
||||
|
||||
// class MedicalInsight extends StatefulWidget {
|
||||
// const MedicalInsight({super.key});
|
||||
|
||||
// @override
|
||||
// State<MedicalInsight> createState() => _MedicalInsightState();
|
||||
// }
|
||||
|
||||
// class _MedicalInsightState extends State<MedicalInsight> {
|
||||
// final List<Map<String, dynamic>> cardData = [
|
||||
// {'id': 'ID ', 'number': 'MI1688128025', 'id1': "jjj", 'number1': '265'},
|
||||
// {'id': 'ID ', 'number': 20},
|
||||
// {'id': 'ID ', 'number': 30},
|
||||
// // Add more data entries as needed
|
||||
// ];
|
||||
|
||||
// String selectedOption = 'None';
|
||||
// late GlobalKey actionKey;
|
||||
|
||||
// var item;
|
||||
|
||||
// @override
|
||||
// void initState() {
|
||||
// actionKey = GlobalKey();
|
||||
// super.initState();
|
||||
// getapicall();
|
||||
// }
|
||||
|
||||
// void getapicall() async {
|
||||
// await Provider.of<MediacalInsightProvider>(context, listen: false)
|
||||
// .medicalinsightdata();
|
||||
// }
|
||||
|
||||
// // GlobalKey actionKey;
|
||||
// // final List<Map<String, dynamic>> data = [
|
||||
// // {'id': 'Data ID 1', 'number': 10},
|
||||
// // {'id': 'Data ID 2', 'number': 20},
|
||||
// // {'id': 'Data ID 3', 'number': 30},
|
||||
// // // Add more data entries as needed
|
||||
// // ];
|
||||
// @override
|
||||
// Widget build(BuildContext context) {
|
||||
// return Directionality(
|
||||
// textDirection: TextDirection.ltr,
|
||||
// child: SafeArea(
|
||||
// child: Scaffold(
|
||||
// backgroundColor: const Color.fromARGB(255, 222, 237, 247),
|
||||
// appBar: AppBar(
|
||||
// title: const Text('Medical Insight'),
|
||||
// ),
|
||||
// body: Consumer<MediacalInsightProvider>(
|
||||
// builder: (context, value, child) {
|
||||
// return Column(
|
||||
// children: [
|
||||
// Padding(
|
||||
// padding: const EdgeInsets.all(15.0),
|
||||
// child: TextField(
|
||||
// //controller: _searchController,
|
||||
// onChanged: (value) {
|
||||
// setState(() {});
|
||||
// },
|
||||
// decoration: InputDecoration(
|
||||
// fillColor: Constants.k2color,
|
||||
// contentPadding: const EdgeInsets.symmetric(vertical: 9.0),
|
||||
// border: const OutlineInputBorder(
|
||||
// borderRadius: BorderRadius.only(
|
||||
// bottomRight: Radius.circular(0))),
|
||||
// labelText: ' Search',
|
||||
// prefixIcon: const Icon(
|
||||
// Icons.search,
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisAlignment: MainAxisAlignment.end,
|
||||
// children: [
|
||||
// OutlinedButton(
|
||||
// style: OutlinedButton.styleFrom(
|
||||
// backgroundColor: Constants.k2color,
|
||||
// foregroundColor: Colors.white),
|
||||
// onPressed: () {},
|
||||
// child: Text("Create Medical Insight"))
|
||||
// ],
|
||||
// ),
|
||||
// Expanded(
|
||||
// child: ListView.builder(
|
||||
// physics: const ScrollPhysics(),
|
||||
// // scrollDirection: Axis.vertical,
|
||||
// shrinkWrap: true,
|
||||
// itemCount: value.med.length,
|
||||
// itemBuilder: (context, index) {
|
||||
// item = value.med[index];
|
||||
|
||||
// print(
|
||||
// "Item_Medical_insight ${item['Therapeutic Area']}");
|
||||
// return GestureDetector(
|
||||
// onTap: () {
|
||||
// _showAlertDialog(context);
|
||||
// },
|
||||
// child: Padding(
|
||||
// padding: const EdgeInsets.all(8.0),
|
||||
// child: Card(
|
||||
// surfaceTintColor: Colors.white,
|
||||
// // shape: RoundedRectangleBorder(
|
||||
// // side: BorderSide(color: Colors.black, width: 1),
|
||||
// // borderRadius: BorderRadius.only(
|
||||
// // bottomRight: Radius.circular(30)),
|
||||
// // ),
|
||||
// child: SizedBox(
|
||||
// width: MediaQuery.sizeOf(context).width,
|
||||
// child: ListTile(
|
||||
// title: Column(
|
||||
// // crossAxisAlignment: CrossAxisAlignment.center,
|
||||
// children: [
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "ID",
|
||||
// style: TextStyle(
|
||||
// fontSize: 16,
|
||||
// fontWeight: FontWeight.bold),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['id'].toString(),
|
||||
// textAlign: TextAlign.left,
|
||||
// style: const TextStyle(fontSize: 16),
|
||||
// ),
|
||||
// ),
|
||||
// // Row(
|
||||
// // mainAxisAlignment:
|
||||
// // MainAxisAlignment.spaceBetween,
|
||||
// // children: [
|
||||
// // Text(
|
||||
// // "Interaction Id",
|
||||
// // style: TextStyle(
|
||||
// // fontSize: 16,
|
||||
// // fontWeight: FontWeight.bold),
|
||||
// // ),
|
||||
// // Text(
|
||||
// // "pokn".toString(),
|
||||
// // style: TextStyle(fontSize: 16),
|
||||
// // ),
|
||||
// // ],
|
||||
// // ),
|
||||
|
||||
// Row(
|
||||
// mainAxisAlignment:
|
||||
// MainAxisAlignment.spaceBetween,
|
||||
// children: [
|
||||
// const Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Therapeutic Area",
|
||||
// style: TextStyle(
|
||||
// fontSize: 16,
|
||||
// fontWeight:
|
||||
// FontWeight.bold),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Therapeutic Area']
|
||||
// .toString(),
|
||||
// style: const TextStyle(
|
||||
// fontSize: 16),
|
||||
// ),
|
||||
// ),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisAlignment:
|
||||
// MainAxisAlignment.spaceBetween,
|
||||
// children: [
|
||||
// const Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Product",
|
||||
// style: TextStyle(
|
||||
// fontSize: 16,
|
||||
// fontWeight:
|
||||
// FontWeight.bold),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Product'].toString(),
|
||||
// style: const TextStyle(
|
||||
// fontSize: 16),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisAlignment:
|
||||
// MainAxisAlignment.spaceBetween,
|
||||
// children: [
|
||||
// const Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Source Type",
|
||||
// style: TextStyle(
|
||||
// fontSize: 16,
|
||||
// fontWeight:
|
||||
// FontWeight.bold),
|
||||
// ),
|
||||
// )),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Source Type'].toString(),
|
||||
// style: const TextStyle(
|
||||
// fontSize: 16),
|
||||
// ),
|
||||
// ),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisAlignment:
|
||||
// MainAxisAlignment.spaceBetween,
|
||||
// children: [
|
||||
// const Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Topics",
|
||||
// style: TextStyle(
|
||||
// fontSize: 16,
|
||||
// fontWeight:
|
||||
// FontWeight.bold),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Topics'].toString(),
|
||||
// style: const TextStyle(
|
||||
// fontSize: 16),
|
||||
// ),
|
||||
// ),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// children: [
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Column(
|
||||
// children: [
|
||||
// Row(
|
||||
// children: [
|
||||
// Icon(
|
||||
// Icons.person,
|
||||
// size: 20,
|
||||
// ),
|
||||
// Text(
|
||||
// "pooja",
|
||||
// style: TextStyle(
|
||||
// fontSize: 14.0),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// children: [
|
||||
// Icon(
|
||||
// Icons.calendar_today,
|
||||
// size: 20,
|
||||
// ),
|
||||
// Text(
|
||||
// "11/11/2022 ",
|
||||
// style: TextStyle(
|
||||
// fontSize: 14.0),
|
||||
// )
|
||||
// ],
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment:
|
||||
// Alignment.centerRight,
|
||||
// child: OutlinedButton(
|
||||
// style:
|
||||
// OutlinedButton.styleFrom(
|
||||
// shape:
|
||||
// CircleBorder()),
|
||||
// onPressed: () {
|
||||
// // final RenderBox renderBox =
|
||||
// // actionKey.currentContext!
|
||||
// // .findRenderObject();
|
||||
// // final position = renderBox
|
||||
// // .localToGlobal(Offset.zero);
|
||||
// final RenderBox renderBox =
|
||||
// actionKey
|
||||
// .currentContext!
|
||||
// .findRenderObject()
|
||||
// as RenderBox;
|
||||
// final position =
|
||||
// renderBox.localToGlobal(
|
||||
// Offset.zero);
|
||||
|
||||
// showMenu(
|
||||
// context: context,
|
||||
// position:
|
||||
// RelativeRect.fromLTRB(
|
||||
// position.dx,
|
||||
// position.dy +
|
||||
// renderBox
|
||||
// .size.height,
|
||||
// position.dx +
|
||||
// renderBox
|
||||
// .size.width,
|
||||
// position.dy +
|
||||
// renderBox
|
||||
// .size.height +
|
||||
// 10,
|
||||
// ),
|
||||
// items: <PopupMenuEntry<
|
||||
// String>>[
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 1',
|
||||
// child:
|
||||
// Text('Option 1'),
|
||||
// ),
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 2',
|
||||
// child:
|
||||
// Text('Option 2'),
|
||||
// ),
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 3',
|
||||
// child:
|
||||
// Text('Option 3'),
|
||||
// ),
|
||||
// ],
|
||||
// ).then((value) {
|
||||
// if (value != null) {
|
||||
// setState(() {
|
||||
// selectedOption =
|
||||
// value;
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
// },
|
||||
// child: Icon(
|
||||
// Icons.more_horiz_rounded,
|
||||
// // color: Constants.k2color,
|
||||
// ),
|
||||
// )),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// // shape: BorderRadius.only(bottomRight: Radius.circular(50)),
|
||||
// ),
|
||||
// ),
|
||||
// );
|
||||
// }),
|
||||
// )
|
||||
// ],
|
||||
// );
|
||||
// }),
|
||||
// ),
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
|
||||
// void _showAlertDialog(BuildContext context) {
|
||||
// showDialog(
|
||||
// context: context,
|
||||
// builder: (BuildContext context) {
|
||||
// return AlertDialog(
|
||||
// // title: Text('Alert'),
|
||||
// content: const MyWidget22(),
|
||||
// actions: <Widget>[
|
||||
// TextButton(
|
||||
// child: const Text('Close'),
|
||||
// onPressed: () {
|
||||
// Navigator.of(context).pop();
|
||||
// },
|
||||
// ),
|
||||
// ],
|
||||
// );
|
||||
// },
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
|
||||
import 'package:discover_module/constants.dart';
|
||||
import 'package:discover_module/provider_class/medicalinsightprovider.dart';
|
||||
import 'package:discover_module/ui_screen/view_insight.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:adoptive_calendar/adoptive_calendar.dart';
|
||||
|
||||
class MedicalInsight extends StatefulWidget {
|
||||
const MedicalInsight({super.key});
|
||||
|
||||
@override
|
||||
State<MedicalInsight> createState() => _MedicalInsightState();
|
||||
}
|
||||
|
||||
class _MedicalInsightState extends State<MedicalInsight> {
|
||||
final List<Map<String, dynamic>> cardData = [
|
||||
{'id': 'ID ', 'number': 'MI1688128025', 'id1': "jjj", 'number1': '265'},
|
||||
{'id': 'ID ', 'number': 20},
|
||||
{'id': 'ID ', 'number': 30},
|
||||
// Add more data entries as needed
|
||||
];
|
||||
|
||||
String selectedOption = 'None';
|
||||
late GlobalKey actionKey;
|
||||
// DateTime? pickedDate;
|
||||
|
||||
var item;
|
||||
final TextEditingController textController = TextEditingController();
|
||||
|
||||
DateTime? selectedDate;
|
||||
|
||||
bool calview = false;
|
||||
String? start, end;
|
||||
@override
|
||||
void initState() {
|
||||
actionKey = GlobalKey();
|
||||
super.initState();
|
||||
getapicall();
|
||||
}
|
||||
|
||||
void getapicall() async {
|
||||
await Provider.of<MediacalInsightProvider>(context, listen: false)
|
||||
.medicalinsightdata();
|
||||
}
|
||||
|
||||
// GlobalKey actionKey;
|
||||
// final List<Map<String, dynamic>> data = [
|
||||
// {'id': 'Data ID 1', 'number': 10},
|
||||
// {'id': 'Data ID 2', 'number': 20},
|
||||
// {'id': 'Data ID 3', 'number': 30},
|
||||
// // Add more data entries as needed
|
||||
// ];
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Directionality(
|
||||
textDirection: TextDirection.ltr,
|
||||
child: SafeArea(
|
||||
child: Scaffold(
|
||||
backgroundColor: const Color.fromARGB(255, 222, 237, 247),
|
||||
appBar: AppBar(
|
||||
title: const Text('Medical Insight'),
|
||||
actions: [
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
setState(() {
|
||||
calview = true;
|
||||
});
|
||||
},
|
||||
child: Icon(Icons.calendar_month))
|
||||
],
|
||||
),
|
||||
body: Consumer<MediacalInsightProvider>(
|
||||
builder: (context, value, child) {
|
||||
return Column(
|
||||
children: [
|
||||
// GestureDetector(
|
||||
// onTap: () => _selectDate(context),
|
||||
// child: AbsorbPointer(
|
||||
// child: TextField(
|
||||
// controller: textController,
|
||||
// decoration: InputDecoration(
|
||||
// focusedBorder: InputBorder.none,
|
||||
// enabledBorder: InputBorder.none,
|
||||
// contentPadding: EdgeInsets.all(10.0),
|
||||
// labelText: "date",
|
||||
// labelStyle:
|
||||
// TextStyle(color: Colors.black, fontSize: 16),
|
||||
// // pass the hint text parameter here
|
||||
// hintStyle: TextStyle(color: Colors.black, fontSize: 16),
|
||||
// suffixIcon: Icon(Icons.calendar_today),
|
||||
// ),
|
||||
// style: TextStyle(color: Colors.black, fontSize: 18),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
Visibility(
|
||||
visible: calview,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
OutlinedButton(
|
||||
onPressed: () {
|
||||
_selectDate(context);
|
||||
},
|
||||
child:
|
||||
start == null ? Text('Start Date') : Text(start!),
|
||||
),
|
||||
OutlinedButton(
|
||||
onPressed: () {
|
||||
_selectDate1(context);
|
||||
},
|
||||
child: end == null ? Text('Start Date') : Text(end!),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: TextField(
|
||||
//controller: _searchController,
|
||||
onChanged: (value) {
|
||||
setState(() {});
|
||||
},
|
||||
decoration: InputDecoration(
|
||||
fillColor: Constants.k2color,
|
||||
contentPadding: const EdgeInsets.symmetric(vertical: 9.0),
|
||||
border: const OutlineInputBorder(
|
||||
borderRadius: BorderRadius.only(
|
||||
bottomRight: Radius.circular(0))),
|
||||
labelText: ' Search',
|
||||
prefixIcon: const Icon(
|
||||
Icons.search,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.end,
|
||||
children: [
|
||||
OutlinedButton(
|
||||
style: OutlinedButton.styleFrom(
|
||||
backgroundColor: Constants.k2color,
|
||||
foregroundColor: Colors.white),
|
||||
onPressed: () {},
|
||||
child: Text("Create Medical Insight"))
|
||||
],
|
||||
),
|
||||
Expanded(
|
||||
child: ListView.builder(
|
||||
physics: const ScrollPhysics(),
|
||||
// scrollDirection: Axis.vertical,
|
||||
shrinkWrap: true,
|
||||
itemCount: value.med.length,
|
||||
itemBuilder: (context, index) {
|
||||
item = value.med[index];
|
||||
|
||||
print(
|
||||
"Item_Medical_insight ${item['Therapeutic Area']}");
|
||||
return GestureDetector(
|
||||
onTap: () {
|
||||
_showAlertDialog(context);
|
||||
},
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Card(
|
||||
surfaceTintColor: Colors.white,
|
||||
// shape: RoundedRectangleBorder(
|
||||
// side: BorderSide(color: Colors.black, width: 1),
|
||||
// borderRadius: BorderRadius.only(
|
||||
// bottomRight: Radius.circular(30)),
|
||||
// ),
|
||||
child: SizedBox(
|
||||
width: MediaQuery.sizeOf(context).width,
|
||||
child: ListTile(
|
||||
title: Column(
|
||||
// crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
// Text(
|
||||
// "Acute neurology is the <b> therapeutic </b> area of the medical insight for Product A. The age of treatment is the topic of interest for this source type publication."),
|
||||
|
||||
RichText(
|
||||
text: TextSpan(
|
||||
text: 'Acute neurology is the',
|
||||
style: DefaultTextStyle.of(context)
|
||||
.style,
|
||||
children: const <TextSpan>[
|
||||
TextSpan(
|
||||
text: ' therapeutic area ',
|
||||
style: TextStyle(
|
||||
fontWeight:
|
||||
FontWeight.bold)),
|
||||
TextSpan(
|
||||
text:
|
||||
'of the medical insight for Product A.'),
|
||||
TextSpan(
|
||||
text: 'The age of treatment',
|
||||
style: TextStyle(
|
||||
fontWeight:
|
||||
FontWeight.bold)),
|
||||
TextSpan(
|
||||
text:
|
||||
' is the topic of interest for this source type'),
|
||||
TextSpan(
|
||||
text: ' publication.',
|
||||
style: TextStyle(
|
||||
fontWeight:
|
||||
FontWeight.bold)),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Row(
|
||||
mainAxisAlignment:
|
||||
MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Icon(
|
||||
Icons.person,
|
||||
size: 20,
|
||||
),
|
||||
Text(
|
||||
"pooja",
|
||||
style:
|
||||
TextStyle(fontSize: 14.0),
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
children: [
|
||||
Icon(
|
||||
Icons.calendar_today,
|
||||
size: 20,
|
||||
),
|
||||
Text(
|
||||
"11/11/2022 ",
|
||||
style:
|
||||
TextStyle(fontSize: 14.0),
|
||||
)
|
||||
],
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Therapeutic Area",
|
||||
// style: TextStyle(
|
||||
// fontSize: 12,
|
||||
// fontWeight: FontWeight.normal),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Therapeutic Area'].toString(),
|
||||
// style: const TextStyle(fontSize: 14),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Product",
|
||||
// style: TextStyle(
|
||||
// fontSize: 12,
|
||||
// fontWeight: FontWeight.normal),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Product'].toString(),
|
||||
// style: const TextStyle(fontSize: 14),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Source Type",
|
||||
// style: TextStyle(
|
||||
// fontSize: 12,
|
||||
// fontWeight: FontWeight.normal),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Source Type'].toString(),
|
||||
// style: const TextStyle(fontSize: 14),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// "Topics",
|
||||
// style: TextStyle(
|
||||
// fontSize: 12,
|
||||
// fontWeight: FontWeight.normal),
|
||||
// ),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.centerLeft,
|
||||
// child: Text(
|
||||
// item['Topics'].toString(),
|
||||
// style: const TextStyle(fontSize: 14),
|
||||
// ),
|
||||
// ),
|
||||
// Row(
|
||||
// children: [
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Column(
|
||||
// children: [
|
||||
// Row(
|
||||
// children: [
|
||||
// Icon(
|
||||
// Icons.person,
|
||||
// size: 20,
|
||||
// ),
|
||||
// Text(
|
||||
// "pooja",
|
||||
// style: TextStyle(
|
||||
// fontSize: 14.0),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// children: [
|
||||
// Icon(
|
||||
// Icons.calendar_today,
|
||||
// size: 20,
|
||||
// ),
|
||||
// Text(
|
||||
// "11/11/2022 ",
|
||||
// style: TextStyle(
|
||||
// fontSize: 14.0),
|
||||
// )
|
||||
// ],
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// Expanded(
|
||||
// flex: 1,
|
||||
// child: Align(
|
||||
// alignment:
|
||||
// Alignment.centerRight,
|
||||
// child: OutlinedButton(
|
||||
// style:
|
||||
// OutlinedButton.styleFrom(
|
||||
// shape:
|
||||
// CircleBorder()),
|
||||
// onPressed: () {
|
||||
// // final RenderBox renderBox =
|
||||
// // actionKey.currentContext!
|
||||
// // .findRenderObject();
|
||||
// // final position = renderBox
|
||||
// // .localToGlobal(Offset.zero);
|
||||
// final RenderBox renderBox =
|
||||
// actionKey
|
||||
// .currentContext!
|
||||
// .findRenderObject()
|
||||
// as RenderBox;
|
||||
// final position =
|
||||
// renderBox.localToGlobal(
|
||||
// Offset.zero);
|
||||
|
||||
// showMenu(
|
||||
// context: context,
|
||||
// position:
|
||||
// RelativeRect.fromLTRB(
|
||||
// position.dx,
|
||||
// position.dy +
|
||||
// renderBox
|
||||
// .size.height,
|
||||
// position.dx +
|
||||
// renderBox
|
||||
// .size.width,
|
||||
// position.dy +
|
||||
// renderBox
|
||||
// .size.height +
|
||||
// 10,
|
||||
// ),
|
||||
// items: <PopupMenuEntry<
|
||||
// String>>[
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 1',
|
||||
// child:
|
||||
// Text('Option 1'),
|
||||
// ),
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 2',
|
||||
// child:
|
||||
// Text('Option 2'),
|
||||
// ),
|
||||
// PopupMenuItem<String>(
|
||||
// value: 'Option 3',
|
||||
// child:
|
||||
// Text('Option 3'),
|
||||
// ),
|
||||
// ],
|
||||
// ).then((value) {
|
||||
// if (value != null) {
|
||||
// setState(() {
|
||||
// selectedOption =
|
||||
// value;
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
// },
|
||||
// child: Icon(
|
||||
// Icons.more_horiz_rounded,
|
||||
// // color: Constants.k2color,
|
||||
// ),
|
||||
// )),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
// shape: BorderRadius.only(bottomRight: Radius.circular(50)),
|
||||
),
|
||||
),
|
||||
);
|
||||
}),
|
||||
)
|
||||
],
|
||||
);
|
||||
}),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
void _showAlertDialog(BuildContext context) {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
return AlertDialog(
|
||||
// title: Text('Alert'),
|
||||
content: const MyWidget22(),
|
||||
actions: <Widget>[
|
||||
TextButton(
|
||||
child: const Text('Close'),
|
||||
onPressed: () {
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
),
|
||||
],
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
Future<Null> _selectDate(BuildContext context) async {
|
||||
final DateTime? picked = await showDatePicker(
|
||||
context: context,
|
||||
initialDate: selectedDate,
|
||||
firstDate: DateTime(1901, 1),
|
||||
lastDate: DateTime(2100));
|
||||
if (picked != null && picked != selectedDate)
|
||||
setState(() {
|
||||
selectedDate = picked;
|
||||
String convertedDateTime =
|
||||
"${picked.year.toString()}-${picked.month.toString().padLeft(2, '0')}-${picked.day.toString().padLeft(2, '0')}";
|
||||
// widget.textController.value = TextEditingValue(text: picked.toString());
|
||||
textController.value = TextEditingValue(text: convertedDateTime);
|
||||
|
||||
start = convertedDateTime;
|
||||
;
|
||||
});
|
||||
}
|
||||
|
||||
Future<Null> _selectDate1(BuildContext context) async {
|
||||
final DateTime? picked = await showDatePicker(
|
||||
context: context,
|
||||
initialDate: selectedDate,
|
||||
firstDate: DateTime(1901, 1),
|
||||
lastDate: DateTime(2100));
|
||||
if (picked != null && picked != selectedDate)
|
||||
setState(() {
|
||||
selectedDate = picked;
|
||||
String convertedDateTime =
|
||||
"${picked.year.toString()}-${picked.month.toString().padLeft(2, '0')}-${picked.day.toString().padLeft(2, '0')}";
|
||||
// widget.textController.value = TextEditingValue(text: picked.toString());
|
||||
textController.value = TextEditingValue(text: convertedDateTime);
|
||||
|
||||
end = convertedDateTime;
|
||||
;
|
||||
});
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
|
@ -17,6 +17,7 @@ import 'package:discover_module/ui_screen/interactionform/model/save_interaction
|
|||
import 'package:discover_module/ui_screen/interactionform/view_forms_list.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/view_interaction_screen.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/viewinteractionprovider.dart';
|
||||
import 'package:discover_module/ui_screen/new_editinteraction.dart';
|
||||
import 'package:discover_module/ui_screen/newformlist.dart';
|
||||
import 'package:discover_module/ui_screen/publication_data.dart';
|
||||
import 'package:expandable/expandable.dart';
|
||||
|
@ -1607,7 +1608,7 @@ class _NewProfileState extends State<NewProfile> {
|
|||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (BuildContext context) => EditInteractionScreen(
|
||||
builder: (BuildContext context) => EditInteractionScreen1(
|
||||
saveInteraction: provider.savedList[index],
|
||||
)))
|
||||
});
|
||||
|
|
|
@ -5,6 +5,7 @@ import 'package:discover_module/ui_screen/interactionform/interactionprovider.da
|
|||
import 'package:discover_module/ui_screen/interactionform/model/save_interaction.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/new_dynamicform.dart';
|
||||
import 'package:discover_module/ui_screen/interactionform/view_forms_list.dart';
|
||||
import 'package:discover_module/ui_screen/medical_insight.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
|
@ -160,25 +161,7 @@ class _FormListState extends State<FormList> {
|
|||
},
|
||||
trailing: const Icon(Icons.arrow_forward_ios),
|
||||
),
|
||||
const Divider(),
|
||||
ListTile(
|
||||
title: const Text(
|
||||
"New Medical Insight",
|
||||
style: TextStyle(fontSize: 18.0),
|
||||
),
|
||||
onTap: () async {
|
||||
final ConfigDataProvider configDataProvider =
|
||||
ConfigDataProvider();
|
||||
|
||||
await configDataProvider.initConfigUIDataMedical();
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (context) =>
|
||||
const InteractionListScreen()));
|
||||
},
|
||||
trailing: Icon(Icons.arrow_forward_ios),
|
||||
),
|
||||
Divider(),
|
||||
ListTile(
|
||||
title: const Text(
|
||||
|
@ -199,6 +182,26 @@ class _FormListState extends State<FormList> {
|
|||
),
|
||||
|
||||
const Divider(),
|
||||
|
||||
ListTile(
|
||||
title: const Text(
|
||||
"Medical Insight",
|
||||
style: TextStyle(fontSize: 18.0),
|
||||
),
|
||||
onTap: () async {
|
||||
final ConfigDataProvider configDataProvider =
|
||||
ConfigDataProvider();
|
||||
|
||||
await configDataProvider.initConfigUIDataMedical();
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (context) =>
|
||||
const MedicalInsight()));
|
||||
},
|
||||
trailing: Icon(Icons.arrow_forward_ios),
|
||||
),
|
||||
const Divider(),
|
||||
],
|
||||
);
|
||||
})
|
||||
|
@ -283,6 +286,23 @@ class _FormListState extends State<FormList> {
|
|||
trailing: const Icon(Icons.arrow_forward_ios),
|
||||
),
|
||||
Divider(),
|
||||
ListTile(
|
||||
title: const Text(
|
||||
"Medical Insight",
|
||||
style: TextStyle(fontSize: 18.0),
|
||||
),
|
||||
onTap: () async {
|
||||
final ConfigDataProvider configDataProvider =
|
||||
ConfigDataProvider();
|
||||
await configDataProvider.initConfigUIDataEng();
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (context) => const MedicalInsight()));
|
||||
},
|
||||
trailing: const Icon(Icons.arrow_forward_ios),
|
||||
),
|
||||
Divider(),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
import 'package:discover_module/constants.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class MyWidget22 extends StatefulWidget {
|
||||
const MyWidget22({super.key});
|
||||
|
||||
@override
|
||||
State<MyWidget22> createState() => _MyWidget22State();
|
||||
}
|
||||
|
||||
class _MyWidget22State extends State<MyWidget22> {
|
||||
final List<Map<String, dynamic>> cardData = [
|
||||
{'id': 'ID ', 'number': 10, 'id1': "jjj", 'number1': '265'},
|
||||
{'id': 'ID ', 'number': 20},
|
||||
{'id': 'ID ', 'number': 30},
|
||||
// Add more data entries as needed
|
||||
];
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
ListTile(
|
||||
title: Column(
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.end,
|
||||
children: [
|
||||
Icon(
|
||||
Icons.edit,
|
||||
color: Constants.k2color,
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
cardData[0]['id'],
|
||||
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
||||
),
|
||||
Text(
|
||||
cardData[0]['number'].toString(),
|
||||
style: TextStyle(fontSize: 16),
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
"Interaction Id",
|
||||
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
||||
),
|
||||
Text(
|
||||
cardData[0]['number'].toString(),
|
||||
style: TextStyle(fontSize: 16),
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
"Therapeutic Area",
|
||||
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
||||
),
|
||||
Text(
|
||||
cardData[0]['number'].toString(),
|
||||
style: TextStyle(fontSize: 16),
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
"Product",
|
||||
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
||||
),
|
||||
Text(
|
||||
cardData[0]['number'].toString(),
|
||||
style: TextStyle(fontSize: 16),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
16
pubspec.lock
16
pubspec.lock
|
@ -9,6 +9,14 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "67.0.0"
|
||||
adoptive_calendar:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: adoptive_calendar
|
||||
sha256: "504abaacaba8f433a9d829d74153bf365fe330b7b40760e525a3445f593181c3"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.1.8"
|
||||
analyzer:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -816,6 +824,14 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.3.0+1"
|
||||
popup_menu:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: popup_menu
|
||||
sha256: a6d7f39669cd010818063233f287822d4fcfcdc1d872b4bae72d9f3caf848e3a
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.0"
|
||||
provider:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
|
@ -63,6 +63,8 @@ dependencies:
|
|||
expandable: ^5.0.1
|
||||
flutter_carousel_widget: ^2.2.0
|
||||
carousel_slider: ^4.2.1
|
||||
popup_menu: ^2.0.0
|
||||
adoptive_calendar: ^0.1.8
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue