import 'package:assetstock/util/dbHandler.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'util/prefsKey.dart'; import 'main.dart'; import 'util/Models.dart'; import 'package:matrix_gesture_detector/matrix_gesture_detector.dart'; class AssetLogs extends StatefulWidget { AssetLogs({Key key}) : super(key: key); @override _AssetLogsState createState() => _AssetLogsState(); } class _AssetLogsState extends State { List nonAuditedAsset = []; double widthtb = 900; double scale=1; final searchCon = TextEditingController(); final scaleCon = TextEditingController(); String search = ''; fetchData()async{ var dbName = await DBHelper.database.getDbName(); var bUnit = await DBHelper.database.getBUnit(); // result. var result = await util.JsonDataPostRaw({"bUnit":bUnit,"dbName" : dbName , "redirect" : "FALSE" , "auditedData" : "FALSE"}, "${prefs.getString(keyClass.hostAddress)??"http://172.16.4.144:3000"}/admin/data/dbDetail"); if(result['STATUS']!=0){ var arrayList = result['DATA']['nonAuditedData']; nonAuditedAsset.clear(); for(int i = 0 ; i =1.00&&scale<=3.00){ setState(() { widthtb = 900 *scale; }); } else{ util.showToast('ERROR', 'Scale must be between 1.00 - 3.00'); } } catch(e){ util.showToast('ERROR', 'Scale must be between 1.00 - 3.00'); } }, ))), ], ), ), ), Expanded( flex:18, child: Container( color: Colors.white, child: ListView( scrollDirection: Axis.horizontal, children: [ Container( child: Column( children: [ Container( decoration: BoxDecoration( border: Border.all(width: 1.0) ), width: widthtb, child: Row( children: [ Container(padding: EdgeInsets.only(left: 5.0),width: widthtb*0.035,child: Text('No',style: TextStyle(fontWeight: FontWeight.bold),)), Container(width: widthtb*0.09,child: Text('Tag Number',style: TextStyle(fontWeight: FontWeight.bold))), Container(width: widthtb*0.24,child: Text('Asset Desc',style: TextStyle(fontWeight: FontWeight.bold))), Container(width: widthtb*0.24,child: Text('PIC',style: TextStyle(fontWeight: FontWeight.bold))), Container(width: widthtb*0.13,child: Text('Gedung',style: TextStyle(fontWeight: FontWeight.bold))), Container(width: widthtb*0.125,child: Text('Lantai',style: TextStyle(fontWeight: FontWeight.bold))), Container(width: widthtb*0.13,child: Text('Ruang',style: TextStyle(fontWeight: FontWeight.bold))), ], ), ), Expanded( child: MatrixGestureDetector( onMatrixUpdate: (m,t,s,r){ scale = MatrixGestureDetector.decomposeToValues(m).scale+1; if(scale>3)scale=3; setState(() { scaleCon.text = scale.toStringAsFixed(2); widthtb = 900 *scale; // scaleheighttb = 0.04*scale; }); }, child: Container( decoration: BoxDecoration( border: Border.all(width: 1.0) ), width: widthtb, child: ListView.builder( padding: EdgeInsets.all(0.0), itemCount: nonAuditedAsset.length, itemBuilder: (context,index){ Asset idxAsset = nonAuditedAsset[index]; if(search!=''){ if(idxAsset.tag_number.toUpperCase().contains(search.toUpperCase())) return Container( decoration: BoxDecoration( border: Border(bottom: BorderSide(width: 0.8)) ), child: Row( children: [ Container(padding: EdgeInsets.only(left: 5.0),width: widthtb*0.035,child: Text('${index+1}')), Container(width: widthtb*0.09,child: Text(idxAsset.tag_number)), Container(width: widthtb*0.24,child: Text(idxAsset.asset_desc)), Container(width: widthtb*0.24,child: Text(idxAsset.pic)), Container(width: widthtb*0.13,child: Text(idxAsset.gedung)), Container(width: widthtb*0.125,child: Text(idxAsset.lantai)), Container(width: widthtb*0.13,child: Text(idxAsset.ruangan)), ], ), ); else return Container(); } else{ return Container( decoration: BoxDecoration( border: Border(bottom: BorderSide(width: 0.8)) ), child: Row( children: [ Container(padding: EdgeInsets.only(left: 5.0),width: widthtb*0.035,child: Text('${index+1}')), Container(width: widthtb*0.09,child: Text(idxAsset.tag_number)), Container(width: widthtb*0.24,child: Text(idxAsset.asset_desc)), Container(width: widthtb*0.24,child: Text(idxAsset.pic)), Container(width: widthtb*0.13,child: Text(idxAsset.gedung)), Container(width: widthtb*0.125,child: Text(idxAsset.lantai)), Container(width: widthtb*0.13,child: Text(idxAsset.ruangan)), ], ), ); } }), ), ), ), ], ), ), ], ), ) ), ], ), ), ); } }