import React, {Component} from 'react';
import {
View,
TouchableOpacity,
Text,
SafeAreaView,
FlatList,
ActivityIndicator,
Alert,
RefreshControl,
} from 'react-native';
import {
Drawer,
List,
Provider,
SwipeAction,
Picker,
} from '@ant-design/react-native';
import public_css from '../../source/css/public_css';
import {RetrieveData} from '../../data/storage';
import {RequestNetwork} from '../../data/encryption';
import {GetMonthDate} from '../../utils/date';
import {ToastShow} from '../../components/toast/toast';
import {InvoiceType, Distribute} from '../../utils/config';
import {CleanAll} from '../../components/abnormalMessage/abnormal_message';
import Spinner from 'react-native-loading-spinner-overlay';
import loading_css from '../../source/css/loading_css';
export default class application_info extends Component {
constructor(props) {
super(props);
this.props.navigation.dangerouslyGetParent().setOptions({
tabBarVisible: false,
});
this.state = {
isShowSearch: false,
beginDate: '',
endDate: '',
beginDateString: '',
endDateString: '',
invoiceList: [],
isRefreshing: false,
pageNum: 1, //当前页码
pageSize: 10, //每页数量
totalPage: 10, //总页数
showFoot: 0,
monthDate: {},
invoiceTypeList: InvoiceType(),
invoiceType: '1',
distributeStatusList: Distribute(),
distributeStatus: '0',
spinner: false,
isNextPage: false, // 是否有下一页
isPreviousPage: false, // 是否有上一页
};
}
render() {
let draw = (
,
nextState: Readonly,
nextContext: any,
): boolean {
if (nextProps.route.params != undefined) {
if (nextProps.route.params.isShow) {
this.setState({
isShowSearch: true,
});
this.drawer.openDrawer();
this.props.navigation.setParams({
isShow: false,
});
}
}
return true;
}
// 获取发票分发列表
getDistributeList = async () => {
const company = JSON.parse(await RetrieveData('company'));
const token = await RetrieveData('token');
const account = await RetrieveData('account');
if (token && account) {
const url = '/sys/invoicePurchase/distributeInfos';
let response = await RequestNetwork(
url,
token,
{
entTaxId: company.entTaxId,
deviceType: company.defaultDeviceInfo.deviceType,
taxDiscId: company.defaultDeviceInfo.taxDiscId,
invoiceCategory: this.state.invoiceType,
distributeStatus: this.state.distributeStatus,
pageNo: this.state.pageNum,
pageSize: this.state.pageSize,
mobile: account,
},
false,
2,
);
if (response) {
if (response.code === 0) {
this.setState({
isNextPage: response.data.hasNext,
isPreviousPage: response.data.hasPrv,
});
this.setLoadingStatus(false);
if (response.data.distributeVOs.length > 0) {
this.setState({
isRefreshing: false,
totalPage: response.data.distributeVOs.length,
});
this.setList(response.data.distributeVOs);
} else {
this.setState({
showFoot: 0,
isRefreshing: false,
});
}
} else {
this.setLoadingStatus(false);
await this.abnormalMessage(response);
}
}
}
};
//设置抬头列表
setList = (data) => {
let listData = [];
data.map((item, index) => {
let data = {
key: index,
invoiceCateCode: item.invoiceCateCode,
invoiceCateName: item.invoiceCateName,
invoiceCode: item.invoiceCode,
invoiceBeginNo: item.invoiceBeginNo,
invoiceEndNo: item.invoiceEndNo,
surplusNum: item.surplusNum,
invoicePurchaseDate: item.invoicePurchaseDate,
effectiveDate: item.effectiveDate,
administratorsCode: item.administratorsCode,
taxPanel: item.taxPanel,
};
listData = listData.concat(data);
});
let showFoot = 0;
if (this.state.isNextPage) {
showFoot = 2;
}
this.setState({
invoiceList: listData,
showFoot: showFoot,
});
};
//查询菜单开关状态
openStatus = (open) => {
if (open) {
} else {
// this.props.children.setClickNum();
}
};
//获取查询发票类型
invoiceTypeChange = (select) => {
let invoiceType = '';
if (select.length > 0) {
invoiceType = select[0];
}
this.setState({
invoiceType: invoiceType,
});
};
//获取查询发票分发状态
distributeStatusChange = (select) => {
let distributeStatus = '';
if (select.length > 0) {
distributeStatus = select[0];
}
this.setState({
distributeStatus: distributeStatus,
});
};
//查询
searchData = async () => {
this.setState({
isShowSearch: false,
invoiceList: [],
showFoot: 0,
isNextPage: false,
isPreviousPage: false,
});
this.setLoadingStatus(true);
await this.getDistributeList();
};
//清空查询数据
searchDataEmpty = async () => {
this.setState({
invoiceType: '1',
distributeStatus: '0',
invoiceList: [],
showFoot: 0,
isNextPage: false,
isPreviousPage: false,
pageNum: 1,
});
await this.getDistributeList();
};
// 加载list项
renderItem = (data) => (