This commit is contained in:
dzc committed 2025-03-09 18:53:36 +08:00
commit 295b4058be
243 files changed
+19832

No files matched your search

@@ -0,0 +1,102 @@
import 'package:pj_supermarket_cloud/common/index.dart';
/// 设备类型
enum SysType implements BaseEnum {
supermarket("1", "超市", "智慧超市", "supermarket"),
canteen("2", "食堂", "智慧食堂", "canteen"),
;
@override
final String code;
@override
final String title;
final String cnStr;
final String usStr;
const SysType(this.code, this.title, this.cnStr, this.usStr);
}
/// 订单类型
enum OrderType implements BaseEnum {
below("1", "线下购买"),
reserve("2", "线上订餐"),
foreignTicket("3", "外来人员"),
strideDept("4", "跨单位"),
;
@override
final String code;
@override
final String title;
const OrderType(this.code, this.title);
}
/// 付款方式
enum OrderPayType implements BaseEnum {
walletDefault("1", "普通钱包支付"),
walletQrCode("2", "钱包二维码支付"),
walletCard("3", "钱包饭卡支付"),
face("4", "人脸识别支付"),
strideDeptQrCode("5", "跨单位二维码支付"),
foreignTicketQrCode("6", "外来人员二维码支付"),
reserveQrCode("7", "线上订餐二维码支付"),
;
@override
final String code;
@override
final String title;
const OrderPayType(this.code, this.title);
}
/// 订单状态
enum OrderStatus implements BaseEnum {
// 查询使用
all("-1", "未付款"),
nonePay("1", "未付款"),
pay("5", "已付款"),
offlinePay("6", "本地支付"),
refund("10", "已退订"),
;
@override
final String code;
@override
final String title;
const OrderStatus(this.code, this.title);
}
// 打印状态
enum PrintStatus implements BaseEnum {
none("10", "未打印"),
success("20", "打印成功"),
sync("30", "同步成功"),
error("40", "打印失败"),
;
@override
final String code;
@override
final String title;
const PrintStatus(this.code, this.title);
}
enum ProductHourType implements BaseEnum {
all("-1", "查询全部"),
morning("1", "早餐"),
noon("2", "中餐"),
night("3", "晚餐"),
;
@override
final String code;
@override
final String title;
const ProductHourType(this.code, this.title);
}
@@ -0,0 +1,221 @@
import 'package:equatable/equatable.dart';
import 'package:json_annotation/json_annotation.dart';
import 'package:pj_supermarket_cloud/common/index.dart';
part 'database_models.g.dart';
@JsonSerializable()
class SysSetting extends Equatable {
/// 设备类型
SysType sysType;
/// mac地址
String? androidId;
/// 服务端ID
String? serviceId;
/// 服务单设备名
String? serviceName;
/// 商户id
String? serviceMerchantId;
/// 商户部门id
String? merchantDeptId;
/// 硬件分组id
String? hardGroupId;
/// mq地址
String? mqSocketAddress;
/// mq端口
String? mqSocketPort;
/// mq用户名
String? mqUsername;
/// mq密码
String? mqPassword;
/// 当前设备的topic
String? mainTopic;
/// mq连接id
String? mqClientId;
/// mq状态
String? mqStatus;
/// 外部存储地址
String? externalPath;
/// 数据库地址
String? sqlAddress;
/// 日志地址
String? logAddress;
/// 人脸 appId
String? faceAppId;
/// 人脸 sdkKey
String? faceSdkKey;
/// 人脸 activeKey
String? faceActiveKey;
/// 同步时间
DateTime? syncTime;
/// 菜谱分类同步时间
DateTime? canteenClassifySyncTime;
/// 菜谱商品同步时间
DateTime? canteenProductSyncTime;
/// 超市分类同步时间
DateTime? supermarketClassifySyncTime;
/// 超市商品同步时间
DateTime? supermarketProductSyncTime;
/// 离线订单同步时间
DateTime? offlineOrderSyncTime;
/// 长链接重连
DateTime? mqSyncTime;
SysSetting({
required this.sysType,
this.androidId,
this.serviceId,
this.mqSocketAddress,
this.mqStatus,
this.sqlAddress,
this.logAddress,
this.hardGroupId,
});
factory SysSetting.fromJson(Map<String, dynamic> json) =>
_$SysSettingFromJson(json);
Map<String, dynamic> toJson() => _$SysSettingToJson(this);
@override
List<Object?> get props => [
sysType,
androidId,
serviceId,
serviceName,
serviceMerchantId,
merchantDeptId,
hardGroupId,
mqSocketAddress,
mqSocketPort,
mqUsername,
mqPassword,
mainTopic,
mqClientId,
mqStatus,
externalPath,
sqlAddress,
logAddress,
faceAppId,
faceSdkKey,
faceActiveKey,
syncTime?.millisecondsSinceEpoch,
canteenClassifySyncTime?.millisecondsSinceEpoch,
canteenProductSyncTime?.millisecondsSinceEpoch,
supermarketClassifySyncTime?.millisecondsSinceEpoch,
supermarketProductSyncTime?.millisecondsSinceEpoch,
offlineOrderSyncTime?.millisecondsSinceEpoch,
mqSyncTime?.millisecondsSinceEpoch,
];
}
/// 用户信息
@JsonSerializable()
class UserSetting extends Equatable {
/// 账号
String? username;
/// 密码
String? password;
/// start 服务端信息 start
/// 设备类型
SysType? sysType;
/// 用户编号
int? userId;
/// 访问令牌
String? accessToken;
/// 刷新令牌
String? refreshToken;
/// 过期时间
int? expiresTime;
/// end 服务端信息 end
/// 商品时间段类型
ProductHourType? hourType;
UserSetting({
this.username,
this.password,
});
factory UserSetting.fromJson(Map<String, dynamic> json) =>
_$UserSettingFromJson(json);
Map<String, dynamic> toJson() => _$UserSettingToJson(this);
@override
List<Object?> get props => [
username,
password,
sysType,
userId,
accessToken,
refreshToken,
expiresTime,
hourType,
];
}
@JsonSerializable()
class CanteenExtraPriceSetting extends Equatable {
/// 是否开启额外金额
bool payAmountEnable;
/// 每一次上限
int payAmountMealLimit;
/// 超过的倍数
double payAmountMealTimes;
CanteenExtraPriceSetting({
required this.payAmountEnable,
required this.payAmountMealLimit,
required this.payAmountMealTimes,
});
@override
List<Object> get props => [
payAmountEnable,
payAmountMealLimit,
payAmountMealTimes,
];
factory CanteenExtraPriceSetting.fromJson(Map<String, dynamic> json) =>
_$CanteenExtraPriceSettingFromJson(json);
Map<String, dynamic> toJson() => _$CanteenExtraPriceSettingToJson(this);
}
@@ -0,0 +1,139 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'database_models.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
SysSetting _$SysSettingFromJson(Map<String, dynamic> json) => SysSetting(
sysType: $enumDecode(_$SysTypeEnumMap, json['sysType']),
androidId: json['androidId'] as String?,
serviceId: json['serviceId'] as String?,
mqSocketAddress: json['mqSocketAddress'] as String?,
mqStatus: json['mqStatus'] as String?,
sqlAddress: json['sqlAddress'] as String?,
logAddress: json['logAddress'] as String?,
hardGroupId: json['hardGroupId'] as String?,
)
..serviceName = json['serviceName'] as String?
..serviceMerchantId = json['serviceMerchantId'] as String?
..merchantDeptId = json['merchantDeptId'] as String?
..mqSocketPort = json['mqSocketPort'] as String?
..mqUsername = json['mqUsername'] as String?
..mqPassword = json['mqPassword'] as String?
..mainTopic = json['mainTopic'] as String?
..mqClientId = json['mqClientId'] as String?
..externalPath = json['externalPath'] as String?
..faceAppId = json['faceAppId'] as String?
..faceSdkKey = json['faceSdkKey'] as String?
..faceActiveKey = json['faceActiveKey'] as String?
..syncTime = json['syncTime'] == null
? null
: DateTime.parse(json['syncTime'] as String)
..canteenClassifySyncTime = json['canteenClassifySyncTime'] == null
? null
: DateTime.parse(json['canteenClassifySyncTime'] as String)
..canteenProductSyncTime = json['canteenProductSyncTime'] == null
? null
: DateTime.parse(json['canteenProductSyncTime'] as String)
..supermarketClassifySyncTime =
json['supermarketClassifySyncTime'] == null
? null
: DateTime.parse(json['supermarketClassifySyncTime'] as String)
..supermarketProductSyncTime = json['supermarketProductSyncTime'] == null
? null
: DateTime.parse(json['supermarketProductSyncTime'] as String)
..offlineOrderSyncTime = json['offlineOrderSyncTime'] == null
? null
: DateTime.parse(json['offlineOrderSyncTime'] as String)
..mqSyncTime = json['mqSyncTime'] == null
? null
: DateTime.parse(json['mqSyncTime'] as String);
Map<String, dynamic> _$SysSettingToJson(SysSetting instance) =>
<String, dynamic>{
'sysType': _$SysTypeEnumMap[instance.sysType]!,
'androidId': instance.androidId,
'serviceId': instance.serviceId,
'serviceName': instance.serviceName,
'serviceMerchantId': instance.serviceMerchantId,
'merchantDeptId': instance.merchantDeptId,
'hardGroupId': instance.hardGroupId,
'mqSocketAddress': instance.mqSocketAddress,
'mqSocketPort': instance.mqSocketPort,
'mqUsername': instance.mqUsername,
'mqPassword': instance.mqPassword,
'mainTopic': instance.mainTopic,
'mqClientId': instance.mqClientId,
'mqStatus': instance.mqStatus,
'externalPath': instance.externalPath,
'sqlAddress': instance.sqlAddress,
'logAddress': instance.logAddress,
'faceAppId': instance.faceAppId,
'faceSdkKey': instance.faceSdkKey,
'faceActiveKey': instance.faceActiveKey,
'syncTime': instance.syncTime?.toIso8601String(),
'canteenClassifySyncTime':
instance.canteenClassifySyncTime?.toIso8601String(),
'canteenProductSyncTime':
instance.canteenProductSyncTime?.toIso8601String(),
'supermarketClassifySyncTime':
instance.supermarketClassifySyncTime?.toIso8601String(),
'supermarketProductSyncTime':
instance.supermarketProductSyncTime?.toIso8601String(),
'offlineOrderSyncTime': instance.offlineOrderSyncTime?.toIso8601String(),
'mqSyncTime': instance.mqSyncTime?.toIso8601String(),
};
const _$SysTypeEnumMap = {
SysType.supermarket: 'supermarket',
SysType.canteen: 'canteen',
};
UserSetting _$UserSettingFromJson(Map<String, dynamic> json) => UserSetting(
username: json['username'] as String?,
password: json['password'] as String?,
)
..sysType = $enumDecodeNullable(_$SysTypeEnumMap, json['sysType'])
..userId = (json['userId'] as num?)?.toInt()
..accessToken = json['accessToken'] as String?
..refreshToken = json['refreshToken'] as String?
..expiresTime = (json['expiresTime'] as num?)?.toInt()
..hourType =
$enumDecodeNullable(_$ProductHourTypeEnumMap, json['hourType']);
Map<String, dynamic> _$UserSettingToJson(UserSetting instance) =>
<String, dynamic>{
'username': instance.username,
'password': instance.password,
'sysType': _$SysTypeEnumMap[instance.sysType],
'userId': instance.userId,
'accessToken': instance.accessToken,
'refreshToken': instance.refreshToken,
'expiresTime': instance.expiresTime,
'hourType': _$ProductHourTypeEnumMap[instance.hourType],
};
const _$ProductHourTypeEnumMap = {
ProductHourType.all: 'all',
ProductHourType.morning: 'morning',
ProductHourType.noon: 'noon',
ProductHourType.night: 'night',
};
CanteenExtraPriceSetting _$CanteenExtraPriceSettingFromJson(
Map<String, dynamic> json) =>
CanteenExtraPriceSetting(
payAmountEnable: json['payAmountEnable'] as bool,
payAmountMealLimit: (json['payAmountMealLimit'] as num).toInt(),
payAmountMealTimes: (json['payAmountMealTimes'] as num).toDouble(),
);
Map<String, dynamic> _$CanteenExtraPriceSettingToJson(
CanteenExtraPriceSetting instance) =>
<String, dynamic>{
'payAmountEnable': instance.payAmountEnable,
'payAmountMealLimit': instance.payAmountMealLimit,
'payAmountMealTimes': instance.payAmountMealTimes,
};