Compare commits

..

3 commits

Author SHA1 Message Date
621d2f1614 Added dependencies 2026-01-27 17:53:06 +08:00
809cf7aa5f Updated pages 2026-01-27 17:52:51 +08:00
794edf902a Cleanup api 2026-01-27 17:52:39 +08:00
6 changed files with 28 additions and 14 deletions

View file

@ -1,5 +1,4 @@
import 'dart:convert';
import 'dart:developer';
import 'package:dio/dio.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:dio_smart_retry/dio_smart_retry.dart';

View file

@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:go_router/go_router.dart';
import 'package:ocbo_esign_mobile/blocs/qr/qr_bloc.dart';
import 'package:ocbo_esign_mobile/blocs/user/user_bloc.dart';
import 'package:ocbo_esign_mobile/pages/approval_page.dart';
import 'package:ocbo_esign_mobile/pages/index_page.dart';
@ -75,7 +76,10 @@ class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MultiBlocProvider(
providers: [BlocProvider(create: (context) => UserBloc())],
providers: [
BlocProvider(create: (context) => UserBloc()),
BlocProvider(create: (context) => QrBloc()),
],
child: MaterialApp.router(
debugShowCheckedModeBanner: false,
theme: ThemeData(useMaterial3: true),

View file

@ -7,6 +7,7 @@ import 'package:ocbo_esign_mobile/functions/get_api.dart';
import 'package:ocbo_esign_mobile/widgets/box_widget.dart';
import 'package:ocbo_esign_mobile/widgets/input_widget.dart';
import 'package:ocbo_esign_mobile/widgets/text_widget.dart';
import 'package:intl/intl.dart';
class ValidateDetailPage extends StatefulWidget {
const ValidateDetailPage({super.key});
@ -17,18 +18,21 @@ class ValidateDetailPage extends StatefulWidget {
class _ValidateDetailPageState extends State<ValidateDetailPage> {
final _searchController = TextEditingController();
late double _total = 0;
late int _total = 0;
final NumberFormat formatter = NumberFormat('#,###.##');
void _getTotalSigned() async {
final name = await blocGetQr(context);
final response = await getApi('get-transactions-count', name, null);
log(name.toString());
log(response.toString());
final total = response['result'];
final responseCount = await getApi('get-transactions-count', name, null);
final total = responseCount['result'];
setState(() {
_total = double.parse(total);
_total = double.parse(total).toInt();
});
final response = await getApi('get-transactions', name, null);
final applicationNoList = response['result'];
final dateList = response['result2'];
}
@override
@ -72,7 +76,7 @@ class _ValidateDetailPageState extends State<ValidateDetailPage> {
children: [
Column(
children: [
TextWidget(text: _total.toString(), size: 64, bold: true),
TextWidget(text: formatter.format(_total), size: 64, bold: true),
TextWidget(text: 'Total Signed Applications', size: 16),
],
),

View file

@ -69,7 +69,6 @@ class _BarcodeScannerScreenState extends State<BarcodeScannerScreen> {
final qr = value.substring(35);
final response = await getApi('check-qr', qr, null);
final result = response["result"]?.toString();
log('result: $result');
if (result != null) {
setState(() {
@ -103,8 +102,7 @@ class _BarcodeScannerScreenState extends State<BarcodeScannerScreen> {
await blocSetQr(context, qrResult);
}
void gotoDetails() async {
log('qr $qrResult');
void gotoDetails() {
updateBlockQr();
context.push('/details');
}

View file

@ -29,10 +29,10 @@ packages:
dependency: transitive
description:
name: bloc
sha256: a2cebb899f91d36eeeaa55c7b20b5915db5a9df1b8fd4a3c9c825e22e474537d
sha256: a48653a82055a900b88cd35f92429f068c5a8057ae9b136d197b3d56c57efb81
url: "https://pub.dev"
source: hosted
version: "9.1.0"
version: "9.2.0"
boolean_selector:
dependency: transitive
description:
@ -304,6 +304,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "3.0.1"
intl:
dependency: "direct main"
description:
name: intl
sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5"
url: "https://pub.dev"
source: hosted
version: "0.20.2"
json_annotation:
dependency: transitive
description:

View file

@ -22,6 +22,7 @@ dependencies:
hashlib: ^2.2.0
flutter_bloc: ^9.1.1
vibration: ^3.1.4
intl: ^0.20.2
dev_dependencies:
flutter_test: