添加拣货界面;修饰其他界面
This commit is contained in:
parent
72460817d3
commit
b927ef661b
|
|
@ -1,10 +1,11 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:wms_app/page/stockIn/StackInWheelEBS.dart';
|
import 'package:wms_app/page/stockIn/StackInWheelEBS.dart';
|
||||||
|
import '../stock/stockCheck.dart';
|
||||||
import '/common/colorCom.dart';
|
import '/common/colorCom.dart';
|
||||||
import 'package:bruno/bruno.dart';
|
import 'package:bruno/bruno.dart';
|
||||||
import 'package:wms_app/page/stockIn/StackInWheelMes.dart';
|
import 'package:wms_app/page/stockIn/StackInWheelMes.dart';
|
||||||
import 'package:wms_app/page/stockIn/StockInEmpty.dart';
|
import 'package:wms_app/page/stockIn/StockInEmpty.dart';
|
||||||
import 'package:wms_app/page/stock/stock.dart';
|
import 'package:wms_app/page/stock/stockSearch.dart';
|
||||||
import 'package:wms_app/page/pick/pick.dart';
|
import 'package:wms_app/page/pick/pick.dart';
|
||||||
|
|
||||||
class Home extends StatefulWidget {
|
class Home extends StatefulWidget {
|
||||||
|
|
@ -58,9 +59,10 @@ class _HomePageState extends State<Home> {
|
||||||
Navigator.push(context, MaterialPageRoute(builder: (context) => const Pick()));
|
Navigator.push(context, MaterialPageRoute(builder: (context) => const Pick()));
|
||||||
}),
|
}),
|
||||||
ListTile(title: const Text("库存盘点"), trailing: const Icon(Icons.checklist), onTap: () {
|
ListTile(title: const Text("库存盘点"), trailing: const Icon(Icons.checklist), onTap: () {
|
||||||
|
Navigator.push(context, MaterialPageRoute(builder: (context) => const StockCheck()));
|
||||||
}),
|
}),
|
||||||
ListTile(title: const Text("库存查询"), trailing: const Icon(Icons.list_alt), onTap: () {
|
ListTile(title: const Text("库存查询"), trailing: const Icon(Icons.list_alt), onTap: () {
|
||||||
Navigator.push(context, MaterialPageRoute(builder: (context) => const Stock()));
|
Navigator.push(context, MaterialPageRoute(builder: (context) => const StockSearch()));
|
||||||
})
|
})
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
|
import 'package:bruno/bruno.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:tdesign_flutter/tdesign_flutter.dart';
|
||||||
import '/common/colorCom.dart';
|
import '/common/colorCom.dart';
|
||||||
|
|
||||||
class Pick extends StatefulWidget {
|
class Pick extends StatefulWidget {
|
||||||
|
|
@ -11,6 +13,7 @@ class Pick extends StatefulWidget {
|
||||||
class _PickPageState extends State<Pick> {
|
class _PickPageState extends State<Pick> {
|
||||||
|
|
||||||
final _vehicleNoTextController = TextEditingController(); // 查询输入框
|
final _vehicleNoTextController = TextEditingController(); // 查询输入框
|
||||||
|
List<dynamic> tableData = [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
@ -32,19 +35,17 @@ class _PickPageState extends State<Pick> {
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: Padding(padding: const EdgeInsets.only(
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
left: 20,
|
left: 10,
|
||||||
right: 20,
|
right: 10,
|
||||||
top: 10
|
top: 5
|
||||||
), child: ListView(
|
), child: ListView(
|
||||||
children: [
|
children: [
|
||||||
TextField(
|
BrnTextInputFormItem(
|
||||||
decoration: const InputDecoration(
|
controller: _vehicleNoTextController,
|
||||||
labelText: "要拣货的载具号:",
|
title: "载具号:", hint: "请扫描或输入需要拣货的载具号"
|
||||||
),
|
|
||||||
controller: _vehicleNoTextController,
|
|
||||||
),
|
),
|
||||||
Padding(padding: const EdgeInsets.only(
|
Padding(padding: const EdgeInsets.only(
|
||||||
top: 10
|
top: 5
|
||||||
), child: ElevatedButton(
|
), child: ElevatedButton(
|
||||||
onPressed: search,
|
onPressed: search,
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
|
|
@ -55,15 +56,67 @@ class _PickPageState extends State<Pick> {
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Colors.white
|
color: Colors.white
|
||||||
))
|
))
|
||||||
))
|
)),
|
||||||
|
Padding(padding: const EdgeInsets.only(
|
||||||
|
), child: ElevatedButton(
|
||||||
|
onPressed: search,
|
||||||
|
style: ButtonStyle(
|
||||||
|
backgroundColor: WidgetStateProperty.all(ColorCommon.colorScheme),
|
||||||
|
),
|
||||||
|
child: const Text(
|
||||||
|
"拣货完成",
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white
|
||||||
|
))
|
||||||
|
)),
|
||||||
|
const Padding(padding: EdgeInsets.only(
|
||||||
|
top: 10,
|
||||||
|
bottom: 10
|
||||||
|
), child: Text("需要拣货的物料(点击数据行修改拣货数):"),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
border: Border.all(color: const Color(0x4D0C0C05), width: 0.3),// border
|
||||||
|
borderRadius: BorderRadius.circular((5)), // 圆角
|
||||||
|
),
|
||||||
|
child: TDTable(
|
||||||
|
bordered: true,
|
||||||
|
width: MediaQuery.of(context).size.width,
|
||||||
|
backgroundColor: Colors.transparent,
|
||||||
|
columns: [
|
||||||
|
TDTableCol(title: '序号', colKey: 'id', align: TDTableColAlign.center, width: 60),
|
||||||
|
TDTableCol(title: '载具号', colKey: 'vehicleNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '物料号', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '拣货数', colKey: 'goodsNum', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '实际拣货数', colKey: 'goodsId', align: TDTableColAlign.center, ellipsis: true, width: 100),
|
||||||
|
TDTableCol(title: '物料名称', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '物料描述', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '任务标识', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80)
|
||||||
|
],
|
||||||
|
data: tableData,
|
||||||
|
onCellTap: (index, dynamic, cell) {
|
||||||
|
}),
|
||||||
|
)
|
||||||
],
|
],
|
||||||
),),
|
)
|
||||||
),
|
)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// 查询拣货数
|
||||||
void search() {
|
void search() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// 展示拣货的弹窗
|
||||||
|
void showPickForm() {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 拣货完成
|
||||||
|
void pickComplete() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
122
lib/page/stock/stockCheck.dart
Normal file
122
lib/page/stock/stockCheck.dart
Normal file
|
|
@ -0,0 +1,122 @@
|
||||||
|
import 'package:bruno/bruno.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:tdesign_flutter/tdesign_flutter.dart';
|
||||||
|
import '/common/colorCom.dart';
|
||||||
|
|
||||||
|
class StockCheck extends StatefulWidget {
|
||||||
|
const StockCheck({super.key});
|
||||||
|
@override
|
||||||
|
State<StockCheck> createState() => _StockCheckPageState();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class _StockCheckPageState extends State<StockCheck> {
|
||||||
|
|
||||||
|
final _vehicleNoTextController = TextEditingController(); // 查询输入框
|
||||||
|
List<dynamic> tableData = [];
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Scaffold(
|
||||||
|
appBar: AppBar(
|
||||||
|
iconTheme: const IconThemeData(
|
||||||
|
color: Colors.white
|
||||||
|
),
|
||||||
|
leading: IconButton(onPressed: () {
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
}, icon: const Icon(Icons.arrow_back)),
|
||||||
|
centerTitle: true,
|
||||||
|
backgroundColor: ColorCommon.colorScheme,
|
||||||
|
title: const Text(
|
||||||
|
"库存盘点",
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white
|
||||||
|
)),
|
||||||
|
),
|
||||||
|
body: Center(
|
||||||
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
|
left: 10,
|
||||||
|
right: 10,
|
||||||
|
top: 5
|
||||||
|
), child: ListView(
|
||||||
|
children: [
|
||||||
|
BrnTextInputFormItem(
|
||||||
|
controller: _vehicleNoTextController,
|
||||||
|
title: "载具号:", hint: "请扫描或输入需要盘点的载具号"
|
||||||
|
),
|
||||||
|
Padding(padding: const EdgeInsets.only(
|
||||||
|
top: 5
|
||||||
|
), child: ElevatedButton(
|
||||||
|
onPressed: search,
|
||||||
|
style: ButtonStyle(
|
||||||
|
backgroundColor: WidgetStateProperty.all(ColorCommon.colorScheme),
|
||||||
|
),
|
||||||
|
child: const Text(
|
||||||
|
"查询盘点任务",
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white
|
||||||
|
))
|
||||||
|
)),
|
||||||
|
Padding(padding: const EdgeInsets.only(
|
||||||
|
), child: ElevatedButton(
|
||||||
|
onPressed: search,
|
||||||
|
style: ButtonStyle(
|
||||||
|
backgroundColor: WidgetStateProperty.all(ColorCommon.colorScheme),
|
||||||
|
),
|
||||||
|
child: const Text(
|
||||||
|
"盘点确认",
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white
|
||||||
|
))
|
||||||
|
)),
|
||||||
|
const Padding(padding: EdgeInsets.only(
|
||||||
|
top: 10,
|
||||||
|
bottom: 10
|
||||||
|
), child: Text("需要盘点的物料(点击数据行修改库存数):"),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
border: Border.all(color: const Color(0x4D0C0C05), width: 0.3),// border
|
||||||
|
borderRadius: BorderRadius.circular((5)), // 圆角
|
||||||
|
),
|
||||||
|
child: TDTable(
|
||||||
|
bordered: true,
|
||||||
|
width: MediaQuery.of(context).size.width,
|
||||||
|
backgroundColor: Colors.transparent,
|
||||||
|
columns: [
|
||||||
|
TDTableCol(title: '序号', colKey: 'id', align: TDTableColAlign.center, width: 60),
|
||||||
|
TDTableCol(title: '载具号', colKey: 'vehicleNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '物料号', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '库存数', colKey: 'goodsNum', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '实际库存数', colKey: 'goodsId', align: TDTableColAlign.center, ellipsis: true, width: 100),
|
||||||
|
TDTableCol(title: '物料名称', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '物料描述', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80),
|
||||||
|
TDTableCol(title: '任务标识', colKey: 'boxNo', align: TDTableColAlign.center, ellipsis: true, width: 80)
|
||||||
|
],
|
||||||
|
data: tableData,
|
||||||
|
onCellTap: (index, dynamic, cell) {
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
)
|
||||||
|
)),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 查询库存数
|
||||||
|
void search() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 展示盘点的弹窗
|
||||||
|
void showPickForm() {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 盘点确认
|
||||||
|
void pickComplete() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,16 +1,18 @@
|
||||||
|
import 'package:bruno/bruno.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import '/common/colorCom.dart';
|
import '/common/colorCom.dart';
|
||||||
|
|
||||||
class Stock extends StatefulWidget {
|
class StockSearch extends StatefulWidget {
|
||||||
const Stock({super.key});
|
const StockSearch({super.key});
|
||||||
@override
|
@override
|
||||||
State<Stock> createState() => _StockPageState();
|
State<StockSearch> createState() => _StockSearchPageState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class _StockPageState extends State<Stock> {
|
class _StockSearchPageState extends State<StockSearch> {
|
||||||
|
|
||||||
final _searchTextController = TextEditingController(); // 查询输入框
|
final _vehicleNoTextController = TextEditingController(); // 查询输入框
|
||||||
|
final _goodsIdTextController = TextEditingController(); // 查询输入框
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
@ -32,26 +34,28 @@ class _StockPageState extends State<Stock> {
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: Padding(padding: const EdgeInsets.only(
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
left: 20,
|
left: 10,
|
||||||
right: 20,
|
right: 10,
|
||||||
top: 10
|
top: 5
|
||||||
), child: ListView(
|
), child: ListView(
|
||||||
children: [
|
children: [
|
||||||
TextField(
|
BrnTextInputFormItem(
|
||||||
decoration: const InputDecoration(
|
controller: _vehicleNoTextController,
|
||||||
labelText: "查询参数:",
|
title: "载具号:", hint: "请输入载具号"
|
||||||
),
|
),
|
||||||
controller: _searchTextController,
|
BrnTextInputFormItem(
|
||||||
|
controller: _goodsIdTextController,
|
||||||
|
title: "物料号:", hint: "请输入物料号"
|
||||||
),
|
),
|
||||||
Padding(padding: const EdgeInsets.only(
|
Padding(padding: const EdgeInsets.only(
|
||||||
top: 10
|
top: 5
|
||||||
), child: ElevatedButton(
|
), child: ElevatedButton(
|
||||||
onPressed: search,
|
onPressed: search,
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
backgroundColor: WidgetStateProperty.all(ColorCommon.colorScheme),
|
backgroundColor: WidgetStateProperty.all(ColorCommon.colorScheme),
|
||||||
),
|
),
|
||||||
child: const Text(
|
child: const Text(
|
||||||
"查询",
|
"查询库存",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Colors.white
|
color: Colors.white
|
||||||
))
|
))
|
||||||
|
|
@ -62,7 +66,7 @@ class _StockPageState extends State<Stock> {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// 查询库存
|
||||||
void search() {
|
void search() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -53,7 +53,7 @@ class _StockInWheelEBSPageState extends State<StockInWheelEBS> {
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: Padding(padding: const EdgeInsets.only(
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
top: 10,
|
top: 5,
|
||||||
left: 10,
|
left: 10,
|
||||||
right: 10,
|
right: 10,
|
||||||
), child: ListView(
|
), child: ListView(
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,7 @@ class _StockInWheelMesPageState extends State<StockInWheelMes> {
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: Padding(padding: const EdgeInsets.only(
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
top: 10,
|
top: 5,
|
||||||
left: 10,
|
left: 10,
|
||||||
right: 10,
|
right: 10,
|
||||||
), child: ListView(
|
), child: ListView(
|
||||||
|
|
@ -67,7 +67,7 @@ class _StockInWheelMesPageState extends State<StockInWheelMes> {
|
||||||
title: "箱号:", hint: "请扫描或输入"
|
title: "箱号:", hint: "请扫描或输入"
|
||||||
),
|
),
|
||||||
Padding(padding: const EdgeInsets.only(
|
Padding(padding: const EdgeInsets.only(
|
||||||
top: 20
|
top: 5
|
||||||
), child: ElevatedButton(
|
), child: ElevatedButton(
|
||||||
onPressed: addGoods,
|
onPressed: addGoods,
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
|
|
@ -80,7 +80,6 @@ class _StockInWheelMesPageState extends State<StockInWheelMes> {
|
||||||
))
|
))
|
||||||
)),
|
)),
|
||||||
Padding(padding: const EdgeInsets.only(
|
Padding(padding: const EdgeInsets.only(
|
||||||
top: 5
|
|
||||||
), child: ElevatedButton(
|
), child: ElevatedButton(
|
||||||
onPressed: wheelComplete,
|
onPressed: wheelComplete,
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ class _StockInEmptyPageState extends State<StockInEmpty> {
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: Padding(padding: const EdgeInsets.only(
|
child: Padding(padding: const EdgeInsets.only(
|
||||||
top: 20,
|
top: 5,
|
||||||
left: 10,
|
left: 10,
|
||||||
right: 10,
|
right: 10,
|
||||||
), child: ListView(
|
), child: ListView(
|
||||||
|
|
@ -48,7 +48,7 @@ class _StockInEmptyPageState extends State<StockInEmpty> {
|
||||||
title: "载具号:", hint: "请扫描或输入"
|
title: "载具号:", hint: "请扫描或输入"
|
||||||
),
|
),
|
||||||
Padding(padding: const EdgeInsets.only(
|
Padding(padding: const EdgeInsets.only(
|
||||||
top: 10
|
top: 5
|
||||||
), child: ElevatedButton(
|
), child: ElevatedButton(
|
||||||
onPressed: emptyIn,
|
onPressed: emptyIn,
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user