1,屏蔽所有标记房态的入口
2,屏蔽项目运行开始调用设备Id的入口
This commit is contained in:
parent
77c7168dfa
commit
a980f5f250
@ -20,22 +20,22 @@ FutureOr<void> main() async {
|
|||||||
|
|
||||||
if (AppPlatform.isAndroid) {
|
if (AppPlatform.isAndroid) {
|
||||||
SystemUiOverlayStyle systemUiOverlayStyle =
|
SystemUiOverlayStyle systemUiOverlayStyle =
|
||||||
const SystemUiOverlayStyle(statusBarColor: Colors.transparent);
|
const SystemUiOverlayStyle(statusBarColor: Colors.transparent);
|
||||||
SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
|
SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 设置国际化信息
|
// 设置国际化信息
|
||||||
Future _initTranslation() async => TranslationLoader.loadTranslation(
|
Future _initTranslation() async => TranslationLoader.loadTranslation(
|
||||||
zhSource: "images/lan/lan_zh.json",
|
zhSource: "images/lan/lan_zh.json",
|
||||||
enSource: "images/lan/lan_en.json",
|
enSource: "images/lan/lan_en.json",
|
||||||
keySource: "images/lan/lan_keys.json",
|
keySource: "images/lan/lan_keys.json",
|
||||||
);
|
);
|
||||||
|
|
||||||
// 设置包名服务设备信息
|
// 设置包名服务设备信息
|
||||||
Future _setCommonServices() async {
|
Future _setCommonServices() async {
|
||||||
await Get.putAsync(() => StoreService().init());
|
await Get.putAsync(() => StoreService().init());
|
||||||
await Get.putAsync(() => PlatformInfoService().init());
|
await Get.putAsync(() => PlatformInfoService().init());
|
||||||
await Get.putAsync(() => DeviceInfoService().init());
|
// await Get.putAsync(() => DeviceInfoService().init());
|
||||||
// Get.log(PlatformInfoService.to.info.version);
|
// Get.log(PlatformInfoService.to.info.version);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -397,12 +397,13 @@ class _SendElectronicKeyPageState extends State<SendElectronicKeyPage> {
|
|||||||
// SizedBox(
|
// SizedBox(
|
||||||
// height: 10.h,
|
// height: 10.h,
|
||||||
// ),
|
// ),
|
||||||
OutLineBtn(
|
//田总说不要标记为已入住
|
||||||
btnName: '标记为已入住',
|
// OutLineBtn(
|
||||||
onClick: () {
|
// btnName: '标记为已入住',
|
||||||
updateRoomCheckIn();
|
// onClick: () {
|
||||||
},
|
// updateRoomCheckIn();
|
||||||
),
|
// },
|
||||||
|
// ),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -74,7 +74,8 @@ class _LockSetPageState extends State<LockSetPage> with RouteAware {
|
|||||||
// 根据权限显示不同的列表
|
// 根据权限显示不同的列表
|
||||||
List<Widget> getListWidget() {
|
List<Widget> getListWidget() {
|
||||||
// print("state.lockBasicInfo.value.isLockOwner:${state.lockBasicInfo.value.isLockOwner} state.lockBasicInfo.value.keyRight:${state.lockBasicInfo.value.keyRight}");
|
// print("state.lockBasicInfo.value.isLockOwner:${state.lockBasicInfo.value.isLockOwner} state.lockBasicInfo.value.keyRight:${state.lockBasicInfo.value.keyRight}");
|
||||||
if (state.lockBasicInfo.value.isLockOwner == 1 || state.lockBasicInfo.value.keyRight == 1) {
|
if (state.lockBasicInfo.value.isLockOwner == 1 ||
|
||||||
|
state.lockBasicInfo.value.keyRight == 1) {
|
||||||
// 超级管理员、授权管理员
|
// 超级管理员、授权管理员
|
||||||
return getAllWidget();
|
return getAllWidget();
|
||||||
} else {
|
} else {
|
||||||
@ -449,26 +450,26 @@ class _LockSetPageState extends State<LockSetPage> with RouteAware {
|
|||||||
//-----新增至此
|
//-----新增至此
|
||||||
SizedBox(height: 10.h),
|
SizedBox(height: 10.h),
|
||||||
// 标记房态
|
// 标记房态
|
||||||
Obx(() {
|
// Obx(() {
|
||||||
var title = "";
|
// var title = "";
|
||||||
if (state.lockStatus.value.roomStatus == 1) {
|
// if (state.lockStatus.value.roomStatus == 1) {
|
||||||
title = TranslationLoader.lanKeys!.checkedIn!.tr;
|
// title = TranslationLoader.lanKeys!.checkedIn!.tr;
|
||||||
} else if (state.lockStatus.value.roomStatus == 0) {
|
// } else if (state.lockStatus.value.roomStatus == 0) {
|
||||||
title = TranslationLoader.lanKeys!.leisure!.tr;
|
// title = TranslationLoader.lanKeys!.leisure!.tr;
|
||||||
}
|
// }
|
||||||
return Visibility(
|
// return Visibility(
|
||||||
visible: state.lockStatus.value.roomStatus == 1 ? true : false,
|
// visible: state.lockStatus.value.roomStatus == 1 ? true : false,
|
||||||
child: CommonItem(
|
// child: CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.markedHouseState!.tr,
|
// leftTitel: TranslationLoader.lanKeys!.markedHouseState!.tr,
|
||||||
rightTitle: title,
|
// rightTitle: title,
|
||||||
isHaveLine: true,
|
// isHaveLine: true,
|
||||||
isHaveDirection: true,
|
// isHaveDirection: true,
|
||||||
action: () {
|
// action: () {
|
||||||
Get.toNamed(Routers.markedHouseStatePage, arguments: {
|
// Get.toNamed(Routers.markedHouseStatePage, arguments: {
|
||||||
'lockSetInfoData': state.lockSetInfoData.value
|
// 'lockSetInfoData': state.lockSetInfoData.value
|
||||||
});
|
// });
|
||||||
}));
|
// }));
|
||||||
}),
|
// }),
|
||||||
// 考勤
|
// 考勤
|
||||||
Obx(
|
Obx(
|
||||||
() => Visibility(
|
() => Visibility(
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_easyloading/flutter_easyloading.dart';
|
import 'package:flutter_easyloading/flutter_easyloading.dart';
|
||||||
@ -19,12 +18,10 @@ class DemoModeLockSetPage extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
// TODO: implement initState
|
// TODO: implement initState
|
||||||
super.initState();
|
super.initState();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@ -43,7 +40,7 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
// 基本信息
|
// 基本信息
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel:
|
leftTitel:
|
||||||
TranslationLoader.lanKeys!.basicInformation!.tr,
|
TranslationLoader.lanKeys!.basicInformation!.tr,
|
||||||
rightTitle: "",
|
rightTitle: "",
|
||||||
isHaveLine: false,
|
isHaveLine: false,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
@ -53,7 +50,9 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
// 'keyInfo': state.getKeyInfosData.value
|
// 'keyInfo': state.getKeyInfosData.value
|
||||||
// });
|
// });
|
||||||
}),
|
}),
|
||||||
SizedBox(height: 10.h,),
|
SizedBox(
|
||||||
|
height: 10.h,
|
||||||
|
),
|
||||||
// 门磁
|
// 门磁
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.doorMagnetic!.tr,
|
leftTitel: TranslationLoader.lanKeys!.doorMagnetic!.tr,
|
||||||
@ -68,7 +67,7 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
// 无线键盘
|
// 无线键盘
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel:
|
leftTitel:
|
||||||
TranslationLoader.lanKeys!.wirelessKeyboard!.tr,
|
TranslationLoader.lanKeys!.wirelessKeyboard!.tr,
|
||||||
rightTitle: "",
|
rightTitle: "",
|
||||||
isHaveLine: false,
|
isHaveLine: false,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
@ -99,7 +98,7 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
// 自动闭锁
|
// 自动闭锁
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel:
|
leftTitel:
|
||||||
TranslationLoader.lanKeys!.automaticBlocking!.tr,
|
TranslationLoader.lanKeys!.automaticBlocking!.tr,
|
||||||
rightTitle: TranslationLoader.lanKeys!.closed!.tr,
|
rightTitle: TranslationLoader.lanKeys!.closed!.tr,
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
@ -133,7 +132,7 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
// 常开模式
|
// 常开模式
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel:
|
leftTitel:
|
||||||
TranslationLoader.lanKeys!.normallyOpenMode!.tr,
|
TranslationLoader.lanKeys!.normallyOpenMode!.tr,
|
||||||
rightTitle: TranslationLoader.lanKeys!.closed!.tr,
|
rightTitle: TranslationLoader.lanKeys!.closed!.tr,
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
@ -216,23 +215,22 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
SizedBox(height: 10.h),
|
SizedBox(height: 10.h),
|
||||||
//-----新增至此
|
//-----新增至此
|
||||||
// 标记房态
|
// 标记房态
|
||||||
CommonItem(
|
// CommonItem(
|
||||||
leftTitel:
|
// leftTitel:
|
||||||
TranslationLoader.lanKeys!.markedHouseState!.tr,
|
// TranslationLoader.lanKeys!.markedHouseState!.tr,
|
||||||
rightTitle: "",
|
// rightTitle: "",
|
||||||
isHaveLine: true,
|
// isHaveLine: true,
|
||||||
isHaveDirection: true,
|
// isHaveDirection: true,
|
||||||
action: () {
|
// action: () {
|
||||||
gotoAddLock();
|
// gotoAddLock();
|
||||||
}),
|
// }),
|
||||||
// 考勤
|
// 考勤
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.checkingIn!.tr,
|
leftTitel: TranslationLoader.lanKeys!.checkingIn!.tr,
|
||||||
rightTitle: "",
|
rightTitle: "",
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
isHaveRightWidget: true,
|
isHaveRightWidget: true,
|
||||||
rightWidget: _openCheckInSwitch()
|
rightWidget: _openCheckInSwitch()),
|
||||||
),
|
|
||||||
// 开锁提醒
|
// 开锁提醒
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.unlockReminder!.tr,
|
leftTitel: TranslationLoader.lanKeys!.unlockReminder!.tr,
|
||||||
@ -304,7 +302,8 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
}),
|
}),
|
||||||
SizedBox(height: 30.h),
|
SizedBox(height: 30.h),
|
||||||
Container(
|
Container(
|
||||||
padding: EdgeInsets.only(left: 20.w, right: 20.w, bottom: 30.h),
|
padding:
|
||||||
|
EdgeInsets.only(left: 20.w, right: 20.w, bottom: 30.h),
|
||||||
child: SubmitBtn(
|
child: SubmitBtn(
|
||||||
btnName: "退出演示模式",
|
btnName: "退出演示模式",
|
||||||
isDelete: true,
|
isDelete: true,
|
||||||
@ -343,9 +342,8 @@ class _DemoModeLockSetPageState extends State<DemoModeLockSetPage> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gotoAddLock(){
|
void gotoAddLock() {
|
||||||
// Get.toNamed(Routers.selectLockTypePage);
|
// Get.toNamed(Routers.selectLockTypePage);
|
||||||
EasyLoading.showToast("演示模式",duration: 2000.milliseconds);
|
EasyLoading.showToast("演示模式", duration: 2000.milliseconds);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,12 +13,12 @@ class StarLockMinePage extends StatefulWidget {
|
|||||||
const StarLockMinePage({Key? key}) : super(key: key);
|
const StarLockMinePage({Key? key}) : super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<StarLockMinePage> createState() => _StarLockMinePageState();
|
State<StarLockMinePage> createState() => StarLockMinePageState();
|
||||||
}
|
}
|
||||||
|
|
||||||
GlobalKey<_StarLockMinePageState> starLockMineKey = GlobalKey();
|
GlobalKey<StarLockMinePageState> starLockMineKey = GlobalKey();
|
||||||
|
|
||||||
class _StarLockMinePageState extends State<StarLockMinePage> with BaseWidget {
|
class StarLockMinePageState extends State<StarLockMinePage> with BaseWidget {
|
||||||
final logic = Get.put(StarLockMineLogic());
|
final logic = Get.put(StarLockMineLogic());
|
||||||
final state = Get.find<StarLockMineLogic>().state;
|
final state = Get.find<StarLockMineLogic>().state;
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,24 @@
|
|||||||
|
import 'package:star_lock/mine/valueAddedServices/valueAddedServicesBuy/valueAddedServicesBuy_state.dart';
|
||||||
|
import 'package:star_lock/tools/baseGetXController.dart';
|
||||||
|
|
||||||
|
class ValueAddedServicesBuyLogic extends BaseGetXController {
|
||||||
|
final ValueAddedServicesBuyState state = ValueAddedServicesBuyState();
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<void> onReady() async {
|
||||||
|
print("ready home");
|
||||||
|
super.onReady();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void onInit() {
|
||||||
|
print("init home");
|
||||||
|
super.onInit();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void onClose() {
|
||||||
|
print("close home");
|
||||||
|
super.onClose();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
import 'package:star_lock/mine/valueAddedServices/valueAddedServicesBuy/valueAddedServicesBuy_logic.dart';
|
||||||
|
|
||||||
import '../../../appRouters.dart';
|
|
||||||
import '../../../app_settings/app_colors.dart';
|
import '../../../app_settings/app_colors.dart';
|
||||||
import '../../../tools/titleAppBar.dart';
|
import '../../../tools/titleAppBar.dart';
|
||||||
import '../../../translations/trans_lib.dart';
|
import '../../../translations/trans_lib.dart';
|
||||||
@ -16,17 +16,13 @@ class ValueAddedServicesBuyPage extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _ValueAddedServicesBuyPageState extends State<ValueAddedServicesBuyPage> {
|
class _ValueAddedServicesBuyPageState extends State<ValueAddedServicesBuyPage> {
|
||||||
final data = [
|
|
||||||
"1",
|
|
||||||
"2",
|
|
||||||
"3",
|
|
||||||
"4",
|
|
||||||
];
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
var type = ModalRoute.of(context)?.settings.arguments as int;
|
var type = ModalRoute.of(context)?.settings.arguments as int;
|
||||||
|
|
||||||
|
final logic = Get.put(ValueAddedServicesBuyLogic());
|
||||||
|
final state = Get.find<ValueAddedServicesBuyLogic>().state;
|
||||||
|
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
backgroundColor: AppColors.greyBackgroundColor,
|
backgroundColor: AppColors.greyBackgroundColor,
|
||||||
appBar: TitleAppBar(
|
appBar: TitleAppBar(
|
||||||
@ -59,7 +55,9 @@ class _ValueAddedServicesBuyPageState extends State<ValueAddedServicesBuyPage> {
|
|||||||
mainAxisSpacing: 10.h,
|
mainAxisSpacing: 10.h,
|
||||||
crossAxisSpacing: 10.w,
|
crossAxisSpacing: 10.w,
|
||||||
childAspectRatio: 1 / 0.5,
|
childAspectRatio: 1 / 0.5,
|
||||||
children: data.map((title) => _buildItem(title)).toList(),
|
children: state.topData.value
|
||||||
|
.map((title) => _buildItem(title))
|
||||||
|
.toList(),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -123,16 +121,21 @@ class _ValueAddedServicesBuyPageState extends State<ValueAddedServicesBuyPage> {
|
|||||||
color: AppColors.mainColor,
|
color: AppColors.mainColor,
|
||||||
fontWeight: FontWeight.w500))),
|
fontWeight: FontWeight.w500))),
|
||||||
SizedBox(width: 5.w),
|
SizedBox(width: 5.w),
|
||||||
Container(
|
GestureDetector(
|
||||||
width: 180.w,
|
onTap: () {
|
||||||
height: 100.h,
|
logic.showToast("支付成功");
|
||||||
color: AppColors.mainColor,
|
},
|
||||||
child: Center(
|
child: Container(
|
||||||
child: Text(TranslationLoader.lanKeys!.goToPay!.tr,
|
width: 180.w,
|
||||||
style: TextStyle(
|
height: 100.h,
|
||||||
fontSize: 24.sp,
|
color: AppColors.mainColor,
|
||||||
color: Colors.white,
|
child: Center(
|
||||||
fontWeight: FontWeight.w500))))
|
child: Text(TranslationLoader.lanKeys!.goToPay!.tr,
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 24.sp,
|
||||||
|
color: Colors.white,
|
||||||
|
fontWeight: FontWeight.w500)))),
|
||||||
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@ -0,0 +1,12 @@
|
|||||||
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
|
class ValueAddedServicesBuyState {
|
||||||
|
final topData = [
|
||||||
|
"1",
|
||||||
|
"2",
|
||||||
|
"3",
|
||||||
|
"4",
|
||||||
|
].obs;
|
||||||
|
|
||||||
|
void onClose() {}
|
||||||
|
}
|
||||||
@ -152,8 +152,8 @@ class _ValueAddedServicesHighFunctionPageState
|
|||||||
TranslationLoader.lanKeys!.lockGroup!.tr),
|
TranslationLoader.lanKeys!.lockGroup!.tr),
|
||||||
_buildItem("images/mine/icon_mine_highFunctionContent_bjft.png",
|
_buildItem("images/mine/icon_mine_highFunctionContent_bjft.png",
|
||||||
TranslationLoader.lanKeys!.sendGroupKey!.tr),
|
TranslationLoader.lanKeys!.sendGroupKey!.tr),
|
||||||
_buildItem("images/mine/icon_mine_highFunctionContent_bjft.png",
|
// _buildItem("images/mine/icon_mine_highFunctionContent_bjft.png",
|
||||||
TranslationLoader.lanKeys!.markedHouseState!.tr),
|
// TranslationLoader.lanKeys!.markedHouseState!.tr),
|
||||||
_buildItem("images/mine/icon_mine_highFunctionContent_fkgj.png",
|
_buildItem("images/mine/icon_mine_highFunctionContent_fkgj.png",
|
||||||
TranslationLoader.lanKeys!.cardIssuingtool!.tr),
|
TranslationLoader.lanKeys!.cardIssuingtool!.tr),
|
||||||
_buildItem(
|
_buildItem(
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
import '../../../appRouters.dart';
|
|
||||||
import '../../../app_settings/app_colors.dart';
|
import '../../../app_settings/app_colors.dart';
|
||||||
import '../../../tools/commonItem.dart';
|
import '../../../tools/commonItem.dart';
|
||||||
import '../../../tools/titleAppBar.dart';
|
import '../../../tools/titleAppBar.dart';
|
||||||
@ -92,9 +90,9 @@ class _ValueAddedServicesRealNamePageState
|
|||||||
),
|
),
|
||||||
GestureDetector(
|
GestureDetector(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
Navigator.pushNamed(
|
// Navigator.pushNamed(
|
||||||
context, Routers.valueAddedServicesBuyPage,
|
// context, Routers.valueAddedServicesBuyPage,
|
||||||
arguments: 3);
|
// arguments: 3);
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 200.w,
|
width: 200.w,
|
||||||
@ -103,7 +101,8 @@ class _ValueAddedServicesRealNamePageState
|
|||||||
child: Center(
|
child: Center(
|
||||||
child: Text(TranslationLoader.lanKeys!.buy!.tr,
|
child: Text(TranslationLoader.lanKeys!.buy!.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: AppColors.mainColor,
|
// color: AppColors.mainColor,
|
||||||
|
color: AppColors.blackColor,
|
||||||
fontSize: 24.sp)))),
|
fontSize: 24.sp)))),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user