import 'dart:convert'; import 'package:intl/intl.dart'; import 'package:logger/logger.dart'; import 'package:meta/meta.dart'; import 'package:redux/redux.dart'; import 'package:redux_thunk/redux_thunk.dart'; import 'package:satu/core/entity/category_entity.dart'; import 'package:satu/core/entity/goods_entity.dart'; import 'package:satu/core/entity/transaction_entity.dart'; import 'package:satu/core/entity/transaction_rec_entity.dart'; import 'package:satu/core/models/entity_data/transaction_data.dart'; import 'package:satu/core/models/flow/dao/product_dao.dart'; import 'package:satu/core/models/flow/dao/transaction_dao.dart'; import 'package:satu/core/models/flow/transaction_state.dart'; import 'package:satu/core/models/settings/printer_setting.dart'; import 'package:satu/core/redux/state/journal_state.dart'; import 'package:satu/core/redux/state/sell_state.dart'; import 'package:satu/core/redux/state/setting_state.dart'; import 'package:satu/core/services/db_service.dart'; import 'package:satu/core/utils/locator.dart'; import 'package:satu/core/utils/logger.dart'; import 'package:uuid/uuid.dart'; import '../store.dart'; @immutable class SetSettingStateAction { const SetSettingStateAction(this.settingState); final SettingState settingState; } final Logger log = getLogger('SetSettingStateAction'); ThunkAction selectBluetoothDevice(PrinterDevice device) { return (Store store) async { final PrinterSetting? setting = store.state.settingState?.printer; if(setting != null) { setting.device = device; store.dispatch(SetSettingStateAction(SettingState(printer: setting))); log.i('device with name ${device.name} added'); } }; } ThunkAction setPaperSize(String size) { return (Store store) async { final PrinterSetting? setting = store.state.settingState?.printer; if(setting != null) { setting.paperSize = size; store.dispatch(SetSettingStateAction(SettingState(printer: setting))); } }; } ThunkAction setEncodingPrint(String encoding) { return (Store store) async { final PrinterSetting? setting = store.state.settingState?.printer; if(setting != null) { setting.encoding = encoding; store.dispatch(SetSettingStateAction(SettingState(printer: setting))); } }; }