Untitled
unknown
plain_text
3 years ago
18 kB
6
Indexable
import 'package:ceramic_quotation/app/common/tabel_screen.dart';
import 'package:ceramic_quotation/app/common/text_filed.dart';
import 'package:ceramic_quotation/app/constant/app_color.dart';
import 'package:ceramic_quotation/app/constant/app_string.dart';
import 'package:ceramic_quotation/app/model/account_model/account_model.dart';
import 'package:ceramic_quotation/app/model/account_model/account_request_update_model.dart';
import 'package:ceramic_quotation/app/modules/member_add/controller/member_add_controller.dart';
import 'package:ceramic_quotation/app/utils/app_prefrence.dart';
import 'package:data_table_2/data_table_2.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import '../../../common/custom_buttion.dart';
import '../../../routes/app_pages.dart';
import '../controller/account_controller.dart';
class AccountView extends GetView<AccountController> {
AccountView({super.key});
// AccountController abc = Get.put(AccountController());
@override
Widget build(BuildContext context) {
MemberController memberController = Get.put(MemberController());
return GetBuilder<AccountController>(
init: AccountController(),
builder: (accountController) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(
top: 20,
left: 20,
bottom: 20,
right: 10,
),
child: Row(
children: [
LoginTextField(
onChanged: (val) {
accountController.runFilter(val);
},
isdense: true,
height: 15,
prefixIcon: const Icon(
Icons.search_rounded,
color: Colors.grey,
size: 18,
),
hintText: AppString.findName,
hintStyle: Get.theme.primaryTextTheme.titleLarge,
fieldStyle: Get.theme.primaryTextTheme.headlineMedium,
),
Padding(
padding: const EdgeInsets.all(20),
child: CustomButton(
title: AppString.add,
onTap: () {
memberController.getUpdateMember();
Get.toNamed(Routes.member);
},
),
),
Padding(
padding: const EdgeInsets.all(20),
child: CustomButton(
title: AppString.upDate,
onTap: () {
AppPreference.clear();
AppPreference.remove("admin");
Get.toNamed(Routes.login);
print("String Is${AppPreference.getString('admin')}");
accountController.update();
},
),
),
],
),
),
accountController.accountModel == null
? Center(
child: CircularProgressIndicator(
color: AppColors.blue,
),
)
: Expanded(
child: Padding(
padding: const EdgeInsets.only(left: 20, right: 10),
child: TableScreen(
sortAscending: accountController.sortAscending,
sortColumnIndex: accountController.sortColumnIndex,
sortingName: (index, ascending) {
accountController.sorting(
(d) => d.name!,
index,
ascending,
);
},
dropDownValueAlias: true,
dropDownValueGroup: true,
dropDownValueParty: true,
dropDownValueAliasText: false,
dropDownValuePartyText: false,
dataColumnOne: AppString.no,
dataColumnTwo: AppString.name,
dataColumnThree: AppString.alias,
dataColumnFour: AppString.party,
dataColumnFive: AppString.address,
dataColumnSix: AppString.city,
dataColumnSeven: AppString.pinCode,
dataColumnEight: AppString.state,
dataColumnNine: AppString.mobileNo,
dataColumnTen: AppString.email,
dataColumnEleOne: AppString.active,
dataCondation: true,
dataColumnSizeTwo: ColumnSize.M,
dataColumnSizeSix: ColumnSize.S,
dataColumnSizeOne: ColumnSize.S,
dataColumnSizeSeven: ColumnSize.S,
dataColumnSizeEight: ColumnSize.S,
dataColumnSizeThree: ColumnSize.M,
dataColumnSizeFour: ColumnSize.M,
dataColumnSizeEleOne: ColumnSize.S,
rows: List.generate(
accountController.accountData!.length,
(index) {
accountController
.accountData![index].idController.text =
accountController.accountData![index].id!;
accountController
.accountData![index].nameController.text =
accountController.accountData![index].name!;
accountController
.accountData![index].aliasController.text =
accountController.accountData![index].alias!;
accountController.accountData![index]
.addressController.text =
accountController.accountData![index].address!;
accountController
.accountData![index].emailController.text =
accountController.accountData![index].email!;
accountController
.accountData![index].stateController.text =
accountController.accountData![index].state!;
accountController.accountData![index]
.pincodeController.text =
accountController.accountData![index].pin!;
accountController
.accountData![index].cityController.text =
accountController.accountData![index].city!;
accountController.accountData![index]
.districtController.text =
accountController.accountData![index].district!;
accountController.accountData![index]
.accountTypeController.text =
accountController
.accountData![index].accounttype!;
accountController
.accountData![index].numberController.text =
accountController.accountData![index].mobile!;
cursoPosition(
accountController.accountData![index],
);
return DataRow(
cells: [
DataCell(TextField(
readOnly: true,
focusNode:
accountController.accountData![index].f1,
controller: accountController
.accountData![index].idController,
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].nameController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].aliasController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].addressController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].cityController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].pincodeController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].stateController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].numberController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index].emailController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(TextField(
controller: accountController
.accountData![index]
.accountTypeController,
onTap: () {
FocusScope.of(context).requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
)),
DataCell(
TextField(
controller: accountController
.accountData![index].districtController,
onTap: () {
FocusScope.of(context)
.requestFocus(onclick(
context,
accountController.accountData![index],
));
},
style: Get.theme.textTheme.displayLarge,
),
),
],
);
},
),
),
),
),
],
);
},
);
}
onclick(context, AccountData accountData) {
AccountController accountController = Get.put(AccountController());
AccountUpdateRequestModel accountUpdateRequestModel =
AccountUpdateRequestModel(
id: accountData.idController.text,
name: accountData.nameController.text,
alias: accountData.aliasController.text,
accounttype: accountData.accountTypeController.text,
address: accountData.addressController.text,
city: accountData.cityController.text,
district: accountData.districtController.text,
mobile: accountData.numberController.text,
email: accountData.emailController.text,
pin: accountData.pincodeController.text,
state: accountData.stateController.text,
);
accountController.accountUpdate(
accountUpdateRequestModel,
context,
);
}
cursoPosition(AccountData accountData) {
accountData.nameController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.nameController.text.length),
);
accountData.aliasController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.aliasController.text.length),
);
accountData.accountTypeController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.accountTypeController.text.length),
);
accountData.addressController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.addressController.text.length),
);
accountData.cityController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.cityController.text.length),
);
accountData.stateController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.stateController.text.length),
);
accountData.numberController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.numberController.text.length),
);
accountData.pincodeController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.pincodeController.text.length),
);
accountData.districtController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.districtController.text.length),
);
accountData.emailController.selection = TextSelection.fromPosition(
TextPosition(offset: accountData.emailController.text.length),
);
}
}
Editor is loading...