update flow after print back to home
This commit is contained in:
@@ -15,14 +15,16 @@ import '../../Provider/profile_provider.dart';
|
||||
import '../../service/check_actions_when_no_branch.dart';
|
||||
|
||||
class Home extends StatefulWidget {
|
||||
const Home({super.key});
|
||||
const Home({super.key, this.initialIndex = 0});
|
||||
|
||||
final int initialIndex;
|
||||
|
||||
@override
|
||||
_HomeState createState() => _HomeState();
|
||||
}
|
||||
|
||||
class _HomeState extends State<Home> {
|
||||
int _tabIndex = 0;
|
||||
late int _tabIndex = widget.initialIndex;
|
||||
late final PageController pageController = PageController(initialPage: _tabIndex);
|
||||
|
||||
@override
|
||||
|
||||
@@ -26,6 +26,7 @@ import '../../widgets/universal_image.dart';
|
||||
import '../Products/add product/modle/create_product_model.dart';
|
||||
import '../language/language_provider.dart';
|
||||
import '../../Provider/product_provider.dart';
|
||||
import '../Home/home.dart';
|
||||
|
||||
class SalesInvoiceDetails extends StatefulWidget {
|
||||
const SalesInvoiceDetails({
|
||||
@@ -165,7 +166,7 @@ class _SalesInvoiceDetailsState extends State<SalesInvoiceDetails> {
|
||||
businessSettingData.when(
|
||||
data: (business) {
|
||||
final isSvg = business.data?.thermalInvoiceLogo?.endsWith('.svg');
|
||||
final imageUrl = '${APIConfig.domain}${business.data?.thermalInvoiceLogo}';
|
||||
final imageUrl = '${APIConfig.domain}${business.data?.thermalInvoiceLogo ?? ""}';
|
||||
const placeholder = AssetImage(mainConstant.logo);
|
||||
return (business.data?.thermalInvoiceLogo?.isEmptyOrNull ?? true)
|
||||
? buildInvoiceLogo(image: placeholder)
|
||||
@@ -1217,7 +1218,7 @@ class _SalesInvoiceDetailsState extends State<SalesInvoiceDetails> {
|
||||
color: const Color(0xffF5F3F3),
|
||||
image: DecorationImage(
|
||||
image: NetworkImage(
|
||||
'${APIConfig.domain}${widget.saleTransaction.image}',
|
||||
'${APIConfig.domain}${widget.saleTransaction.image ?? ""}',
|
||||
),
|
||||
fit: BoxFit.contain),
|
||||
),
|
||||
@@ -1247,12 +1248,14 @@ class _SalesInvoiceDetailsState extends State<SalesInvoiceDetails> {
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
if (widget.businessInfo.data?.showInvoiceScannerLogo == 1)
|
||||
if (widget.businessInfo.data?.showInvoiceScannerLogo == 1 &&
|
||||
widget.businessInfo.data?.invoiceScannerLogo != null)
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 10),
|
||||
child: Center(
|
||||
child: UniversalImage(
|
||||
imagePath: '${APIConfig.domain}${widget.businessInfo.data?.invoiceScannerLogo}',
|
||||
imagePath:
|
||||
'${APIConfig.domain}${widget.businessInfo.data?.invoiceScannerLogo ?? ""}',
|
||||
height: 120,
|
||||
width: 120,
|
||||
),
|
||||
@@ -1314,12 +1317,21 @@ class _SalesInvoiceDetailsState extends State<SalesInvoiceDetails> {
|
||||
PrintSalesTransactionModel model = PrintSalesTransactionModel(
|
||||
transitionModel: widget.saleTransaction,
|
||||
personalInformationModel: widget.businessInfo);
|
||||
await printerData.printSalesThermalInvoiceNow(
|
||||
bool printed = await printerData.printSalesThermalInvoiceNow(
|
||||
transaction: model,
|
||||
productList: model.transitionModel!.salesDetails,
|
||||
context: context,
|
||||
products: products.value,
|
||||
);
|
||||
if (printed && context.mounted) {
|
||||
Navigator.pushAndRemoveUntil(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (context) => const Home(initialIndex: 1),
|
||||
),
|
||||
(route) => false,
|
||||
);
|
||||
}
|
||||
// final defould = true;
|
||||
|
||||
// if (defould) {
|
||||
|
||||
@@ -42,14 +42,14 @@ String noProductImageUrl = 'images/no_product_image.png';
|
||||
|
||||
///---------update information---------------
|
||||
|
||||
const String splashLogo = 'images/splashLogo.png';
|
||||
const String splashLogo = 'images/splashkulakpos.png';
|
||||
const String onboard1 = 'images/onbord1.png';
|
||||
const String onboard2 = 'images/onbord2.png';
|
||||
const String onboard3 = 'images/onbord3.png';
|
||||
const String logo = 'images/logo.png';
|
||||
const String appsName = 'POSpro';
|
||||
const String companyWebsite = 'https://acnoo.com';
|
||||
const String companyName = 'Acnoo';
|
||||
const String logo = 'images/logokulakpos.png';
|
||||
const String appsName = 'KULAKPOS';
|
||||
const String companyWebsite = 'https://kulakpos.id';
|
||||
const String companyName = 'KULAKPOS';
|
||||
|
||||
bool connected = false;
|
||||
|
||||
|
||||
@@ -129,16 +129,27 @@ class ThermalPrinter extends ChangeNotifier {
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> printSalesThermalInvoiceNow(
|
||||
Future<bool> printSalesThermalInvoiceNow(
|
||||
{required PrintSalesTransactionModel transaction,
|
||||
required List<SalesDetails>? productList,
|
||||
required BuildContext context,
|
||||
List<Product>? products}) async {
|
||||
await getBluetooth();
|
||||
isBluetoothConnected
|
||||
? SalesThermalPrinterInvoice().printSalesTicket(
|
||||
printTransactionModel: transaction, productList: productList, context: context, products: products)
|
||||
: listOfBluDialog(context: context);
|
||||
if (isBluetoothConnected) {
|
||||
await SalesThermalPrinterInvoice().printSalesTicket(
|
||||
printTransactionModel: transaction, productList: productList, context: context, products: products);
|
||||
return true;
|
||||
} else {
|
||||
if (context.mounted) {
|
||||
await listOfBluDialog(context: context);
|
||||
}
|
||||
if (isBluetoothConnected) {
|
||||
await SalesThermalPrinterInvoice().printSalesTicket(
|
||||
printTransactionModel: transaction, productList: productList, context: context, products: products);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> printPurchaseThermalInvoiceNow(
|
||||
|
||||
Reference in New Issue
Block a user