<template>
    <view class="barCode">
        <view class="fix">
            <view class="search-box">
                <view class="search-input row bothSide verCenter">
                    <text class="iconfont icon-a-riqi11"></text>
                    <input type="text" @input="inputChange()" placeholder="请手动输入入仓号或扫描" class="uni-input" v-model="erp_order_sn" placeholder-style="color:#6e767a" />
                    <text class="scan iconfont icon-juxing6" @click="scanChange()"></text>
                </view>
            </view>
        </view>
        <view class="list" v-if="total > 0">
            <view class="box row  verCenter bothSide" hover-class="none" v-for="(item, index) in erpOrderSnCodeManage" :key="index">
                <view class="row verCenter">
                    <view class="title column rowCenter verCenter">
                        <text>{{ item.sum }}</text>
                        <text>张</text>
                    </view>
                    <view class="text column">
                        <view class="row verCenter">
                            <text class="p1">{{ item.erp_order_sn }}</text>
                            <text class="p2">{{ item.print_type_cn }}:</text>
                            <text class="p3">{{ item.start_box_code }}~{{ item.end_box_code }}</text>
                        </view>
                        <view class="lh row verCenter">
                            <text class="p2">打印:</text>
                            <text class="p3 mr64">{{ item.create_time_cn }}</text>
                        </view>
                    </view>
                </view>
                <view class="btn  row rowCenter verCenter" @click="delErpOrderSnCodeManage(item.erp_order_sn)">作废</view>
            </view>
        </view>
        <template v-else>
            <view class="no-data column verCenter rowCenter">
                <text class="iconfont icon-jinggao2"></text>
                <text class="text">查找不到相关信息</text>
                <text class="p">1、请输入正确的入仓号</text>
            </view>
        </template>
    </view>
</template>

<script>
import { API } from '@/util/api.js';

export default {
    data() {
        return {
            erpOrderSnCodeManage: [],
            erp_order_sn: '',
            total: 1,
            page: 1,
            limit: 10,
            is_loading: false,
            loading: false
        };
    },
    onReachBottom() {
        if (this.is_loading) return;
        this.page++;
        this.loading = true;
        this.getData();
    },
    onShow() {
        this.total = 0;
        this.page = 1;
        this.erpOrderSnCodeManage = [];
        this.getData();
    },
    methods: {
        inputChange() {
            this.total = 0;
            this.page = 1;
            this.erpOrderSnCodeManage = [];
            this.getData();
        },
        scanChange() {
            uni.scanCode({
                success: res => {
                    if (res.errMsg == 'scanCode:ok') {
                        this.erp_order_sn = res.result;
                    }
                },
                fail: function(res) {
                    uni.showToast({
                        title: '扫码失败',
                        icon: 'error'
                    });
                }
            });
        },
        delErpOrderSnCodeManage(erp_order_sn) {
            uni.showModal({
                title: '提示',
                content: '您确定作废嘛?',
                success: res => {
                    if (res.confirm) {
                        this.request(API.delErpOrderSnCodeManage, 'POST', { erp_order_sn: erp_order_sn }, true).then(res => {
                            if (res.err_code === 0) {
                                uni.showModal({
                                    title: '提示',
                                    content: '作废操作成功',
                                    cancelText: '重新打印',
                                    confirmText: '关闭',
                                    showCancel: true,
                                    success: res => {
                                        if (res.confirm) {
                                            this.total = 0;
                                            this.page = 1;
                                            this.erpOrderSnCodeManage = [];
                                            this.getData();
                                        } else if (res.cancel) {
                                            console.log('用户点击取消');
                                            uni.navigateTo({
                                                url: '/pages/tag/print?number=' + erp_order_sn
                                            });
                                        }
                                    }
                                });
                            } else {
                                uni.showModal({
                                    title: '提示',
                                    content: res.err_msg,
                                    showCancel: false
                                });
                            }
                        });
                    } else if (res.cancel) {
                        console.log('用户点击取消');
                    }
                }
            });
        },
        getData() {
            this.request(API.erpOrderSnCodeManage, 'POST', { page: this.page, limit: this.limit, erp_order_sn: this.erp_order_sn }, this.loading).then(res => {
                if (res.err_code === 0) {
                    if (res.data.data.length > 0) {
                        this.is_loading = false;
                        this.erpOrderSnCodeManage = this.erpOrderSnCodeManage.concat(res.data.data);
                        this.total = res.data.total;
                    } else {
                        this.is_loading = true;
                    }
                } else {
                    uni.showToast({
                        title: res.err_msg,
                        icon: 'error'
                    });
                }
            });
        }
    }
};
</script>

<style scoped lang="scss">
@import '../../assets/css/goods/barCode.scss';
</style>