Advertisement
Guest User

Untitled

a guest
Aug 21st, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.73 KB | None | 0 0
  1. class DatabaseHelperForMeasurements{
  2. static Database db_instance;
  3. final String TABLE_NAME = "Measurements";
  4.  
  5. Future<Database> get db async{
  6. if(db_instance == null)
  7. db_instance = await initDB();
  8. return db_instance;
  9. }
  10. initDB() async {
  11. io.Directory documentsDirectory = await getApplicationDocumentsDirectory();
  12. String path = join(documentsDirectory.path,"Measurements_db.db");
  13. var db = await openDatabase(path,version: 1, onCreate: onCreateFunc);
  14. return db;
  15. }
  16.  
  17. void onCreateFunc(Database db, int version) async{
  18.  
  19. await db.execute('CREATE TABLE $TABLE_NAME(id INTEGER PRIMARY KEY AUTOINCREMENT, typeOfMuscle TEXT, numberOfMuscle TEXT);');
  20.  
  21. }
  22.  
  23. Future<List<MeasurementsDatabaseModel>> getMeasurementsDatabaseModel() async{
  24. var db_connection = await db;
  25. List<Map> list = await db_connection.rawQuery('SELECT * FROM $TABLE_NAME');
  26. List<MeasurementsDatabaseModel> modelList = new List();
  27. for(int i = 0; i < list.length; i++){
  28. MeasurementsDatabaseModel measurementsDatabaseModel = new MeasurementsDatabaseModel();
  29. measurementsDatabaseModel.id = list[i]['id'];
  30. measurementsDatabaseModel.typeOfMuscle = list[i]['typeOfMuscle'];
  31. measurementsDatabaseModel.numberOfMuscle = list[i]['numberOfMuscle'];
  32.  
  33. modelList.add(measurementsDatabaseModel);
  34. }
  35. return modelList;
  36. }
  37. void getMeasurementsData (String typeOfMuscle, String numberOfMuscle, int id) async{
  38. var db_connection = await db;
  39. String query =
  40. 'GET $TABLE_NAME SET typeOfMuscle ='$typeOfMuscle', numberOfMuscle ='$numberOfMuscle' WHERE id =$id';
  41. await db_connection.transaction((transition) async{
  42. return await transition.rawQuery(query);
  43. });
  44. }
  45.  
  46. void addNewMeasurementsDatabaseModel(MeasurementsDatabaseModel measurementsDatabaseModel) async {
  47. var db_connection = await db;
  48. String query =
  49. 'INSERT INTO $TABLE_NAME(typeOfMuscle, numberOfMuscle) VALUES( '${measurementsDatabaseModel.typeOfMuscle}','${measurementsDatabaseModel.numberOfMuscle}')';
  50. await db_connection.transaction((transition) async{
  51. return await transition.rawInsert(query);
  52. });
  53. }
  54. void updateMeasurementsDatabaseModel(MeasurementsDatabaseModel measurementsDatabaseModel) async {
  55. var db_connection = await db;
  56. String query =
  57. 'UPDATE $TABLE_NAME SET typeOfMuscle ='${measurementsDatabaseModel.typeOfMuscle}', numberOfMuscle ='${measurementsDatabaseModel.typeOfMuscle}' WHERE id =${measurementsDatabaseModel.id}';
  58. await db_connection.transaction((transition) async{
  59. return await transition.rawQuery(query);
  60. });
  61. }
  62. void deleteMeasurementsDatabaseModel(MeasurementsDatabaseModel measurementsDatabaseModel) async {
  63. var db_connection = await db;
  64. String query = 'DELETE FROM $TABLE_NAME WHERE id = ${measurementsDatabaseModel.id}';
  65. await db_connection.transaction((transition) async{
  66. return await transition.rawQuery(query);
  67. });
  68. }
  69. }
  70.  
  71. class MeasurementsDatabaseModel{
  72. int id;
  73. String typeOfMuscle;
  74. String numberOfMuscle;
  75. MeasurementsDatabaseModel();
  76. }
  77.  
  78. class ListItem extends StatefulWidget {
  79. String detail;
  80. int index;
  81. String data;
  82.  
  83. ListItem({Key key, this.detail, this.index, this.data}) : super(key: key);
  84.  
  85. @override
  86. _ListItem createState() => _ListItem(); // здесь что-то подсвечивает, сам не смог разобраться
  87. }
  88. class _ListItem extends State<ListItem> {
  89. bool isAppear = false;
  90.  
  91. DatabaseHelperForMeasurements databaseHelperForMeasurements = new DatabaseHelperForMeasurements();
  92.  
  93. databaseHelperForMeasurements.getMeasurementsData(typeOfMuscle, numberOfMuscle, id); // здесь возникает ошибка
  94.  
  95. String typeOfMuscle;
  96. String numberOfMuscle;
  97.  
  98.  
  99. // какой-то код
  100.  
  101. }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement