import 'dart:convert';
|
import 'package:crypto/crypto.dart';
|
import 'package:dio/dio.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
|
import 'dio_config.dart';
|
|
class opts {
|
static String token = '';
|
/// 登录地址
|
static String login = '/login.action';
|
/// 物料地址
|
static String matAuth = '/mat/auth';
|
/// 分类地址
|
static String tagList = '/tag/list/pda/auth';
|
/// 物料地址
|
static String matList = '/mat/list/pda/page/auth';
|
/// 组托地址
|
static String mobileComb = '/mobile/comb/auth';
|
/// 入库订单地址
|
static String orderDetlsPage = '/order/detls/pakin/page/auth';
|
}
|
|
class ApiService {
|
/// 登录接口
|
static login(value, pwd) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.get(opts.login, queryParameters: {
|
'username': value,
|
'password': md5.convert(utf8.encode(pwd)).toString()
|
});
|
var data = result.data;
|
print('p:' + data.toString());
|
if (data['code'] == 200) {
|
final prefs = await SharedPreferences.getInstance();
|
await prefs.setString('token', data['data']['token']);
|
opts.token = data['data']['token'];
|
}
|
return data;
|
}
|
|
/// 物料接口
|
static matAuth(matnr) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.get(opts.matAuth, queryParameters: {
|
'matnr': matnr,
|
}, options: Options(headers: {'token': '${opts.token}'}));
|
var data = result.data;
|
return data;
|
}
|
|
/// 分类列表
|
static tagList(parentId) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.get(opts.tagList, queryParameters: {
|
'limit': 100000,
|
'parentId': parentId
|
}, options: Options(headers: {'token': '${opts.token}'}));
|
var data = result.data;
|
return data;
|
}
|
|
/// 物料列表
|
static matList(tagId) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.get(opts.matList, queryParameters: {
|
'limit': 10,
|
'tagId': tagId
|
}, options: Options(headers: {'token': '${opts.token}'}));
|
var data = result.data;
|
return data;
|
}
|
|
/// 无订单组托
|
static mobileComb(barcode, combMats) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.post(opts.mobileComb, data: jsonEncode({
|
'barcode': barcode,
|
'combMats': combMats,
|
}), options: Options(
|
headers: {
|
'token': '${opts.token}',
|
'Content-Type': 'application/json' // json 提交
|
})
|
);
|
var data = result.data;
|
return data;
|
}
|
|
/// 入库订单列表
|
static orderDetlsPage(curr,{int limit = 500}) async {
|
var response = await DioRequest.getInstance();
|
var result = await response.dio.get(opts.orderDetlsPage, queryParameters: {
|
'curr': curr,
|
'limit': limit,
|
'three_code': '',
|
'matnr': '',
|
'maktx': '',
|
'order_no': '',
|
'brand': '',
|
}, options: Options(headers: {'token': '${opts.token}'}));
|
var data = result.data;
|
return data;
|
}
|
|
|
}
|