#
whycq
2023-09-15 2b94c7e54b5ce6f094b58aa3dc7142fb037f64f7
#
3个文件已修改
1个文件已添加
268 ■■■■■ 已修改文件
pages.json 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/mat/matList_noTag.vue 237 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/mat/matSelected.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/pakin/pakin.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages.json
@@ -177,6 +177,12 @@
            }
        },
        {
            "path": "pages/mat/matList_noTag",
            "style": {
                "navigationBarTitleText": "物料"
            }
        },
        {
            "path": "pages/login/logOut",
            "style": {
                "navigationBarTitleText": "退出登录"
pages/mat/matList_noTag.vue
New file
@@ -0,0 +1,237 @@
<template>
    <view>
        <!-- 搜索框 -->
        <view class="search-bar">
            <uni-search-bar v-model="condition" placeholder=" 扫码 / 输入" bgColor="#EEEEEE" @confirm="search" />
        </view>
        <scroll-view>
            <view class="tag-list" v-for="(item,i) in tagList" :key="i" @click="showTag(item.id)">
                <view class="tag">
                    <view style="display: flex;">
                        <view class="wms-tag" :style="baColor" >分类</view>
                    </view>
                </view>
                <view class="tag-item">{{item.name}}</view>
            </view>
        </scroll-view>
        <view>
            <view class="tag-list" v-for="(item,i) in matList" :key="i" @click="findBySelect(item.matnr)">
                <view class="tag">
                    <view style="display: flex;">
                        <view class="wms-tag" :style="baColor" >商品</view>
                    </view>
                </view>
                <view class="tag-item">商品编号: {{item.matnr}}</view>
                <view class="tag-item">商品名称: {{item.maktx  ? item.maktx : '--'}}</view>
                <view class="tag-item">商品规格: {{item.specs  ? item.specs : '--'}}</view>
            </view>
        </view>
        <uni-load-more v-show="matList.length != 0" :status="status" :icon-size="16" :content-text="contentText" />
    </view>
</template>
<script>
    export default {
        data() {
            return {
                tagList: [],
                matList: [],
                condition: '',
                reload: false,
                curr:1,
                tag: '分类',
                baColor: "background-color: #0081ff;",
                desc: '商品编号:',
                baseUrl: '',
                token: '',
                status: 'more',
                contentText: {
                    contentdown: '上拉加载更多',
                    contentrefresh: '加载中',
                    contentnomore: '没有更多'
                },
                // 当前tagId
                tagIdNow: 1
            }
        },
        onReachBottom() {
            this.status = 'more';
            if (this.tagList == null) {
                this.showMat(this.tagIdNow);
            }
        },
        onLoad() {
            // 没啥用了
            let that = this
            // const eventChannel = this.$scope.eventChannel; // 兼容APP-NVUE
            const eventChannel = this.getOpenerEventChannel();
            // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
            eventChannel.on('commonUrl', function(data) {
                that.commonUrl = data.commonUrl
            })
        },
        onShow() {
            this.baseUrl = uni.getStorageSync('baseUrl');
            this.token = uni.getStorageSync('token');
            this.showTag(1)
        },
        methods: {
            search() {
                let that = this
                that.tagList = []
                that.matList = []
                uni.request({
                    url: that.baseUrl + '/mat/search/pda/auth',
                    data: {
                        condition: that.condition
                    },
                    method:"GET",
                    header: {
                        'token':uni.getStorageSync('token'),
                    },
                    success(result) {
                        console.log(result);
                        var res = result.data
                        if (res.code === 200 ) {
                            that.matList = res.data
                            // that.save()
                        } else if (res.code == 403) {
                            uni.showToast({title: res.msg, icon: "none", position: 'top'})
                            setTimeout(() => {
                                uni.reLaunch({
                                    url: '../login/login'
                                });
                            }, 1000);
                        } else {
                            uni.showToast({title: res.msg, icon: "none",position: 'top'})
                        }
                    }
                });
            },
            showTag(parentId) {
                let that = this
                uni.request({
                    url: that.baseUrl + '/tag/list/pda/auth',
                    header: {
                        'token':uni.getStorageSync('token'),
                    },
                    data: {
                        limit: 100000,
                        parentId: parentId
                    },
                    header: {
                        'token':uni.getStorageSync('token'),
                    },
                    success(result) {
                        that.tagList = null
                        that.matList = []
                        var res = result.data
                        if (res.code === 200) {
                            if (res.data != null && res.data.length > 0) {
                                that.tagList = res.data
                            } else {
                                that.tagList = []
                                that.showMat(parentId)
                            }
                        } else if (res.code === 403 ) {
                            uni.showToast({title: res.msg, icon: "none", position: 'top'})
                            setTimeout(() => {
                                uni.reLaunch({
                                    url: '../login/login'
                                });
                            }, 1000);
                        } else {
                            uni.showToast({title: res.msg, icon: "none",position: 'top'})
                        }
                    }
                });
            },
            showMat(tagId) {
                let that = this
                that.tagIdNow = tagId
                if (tagId == null || tagId == '' || tagId == undefined) {
                    return;
                }
                uni.request({
                    url: that.baseUrl + '/mat/list/pda/page/auth',
                    data: {
                        curr:that.curr,
                        limit: 20,
                        tagId: tagId
                    },
                    method:"GET",
                    header: {
                        'token':uni.getStorageSync('token'),
                    },
                    success(result) {
                        that.tagList = null
                        var res = result.data
                        if (res.code === 200) {
                            if (res.data.records != null && res.data.records.length > 0) {
                                let list = res.data.records
                                that.matList = that.reload ? list : that.matList.concat(list);
                                that.curr = that.curr + 1
                            }
                            if (res.data.records.length == 0) {
                                that.status = 'noMore'
                            }
                            that.baColor = "background-color: #1cbbb4;"
                        } else if (res.code === 403 ) {
                            uni.showToast({title: res.msg, icon: "none", position: 'top'})
                            setTimeout(() => {
                                uni.reLaunch({
                                    url: '../login/login'
                                });
                            }, 1000);
                        } else {
                            uni.showToast({title: res.msg, icon: "none",position: 'top'})
                        }
                    }
                });
            },
            findBySelect(matnr) {
                this.getOpenerEventChannel().emit('acceptDataFromOpenedPage', {data: matnr});
                uni.navigateBack({
                })
            }
        }
    }
</script>
<style>
    @import url('../../static/css/wms.css/wms.css');
    .tag-list {
        width: 94%;
        min-height: 160rpx;
        margin: 10px auto;
        background-color: #FFF;
        border-radius: 5px;
        box-shadow: 0 5upx 20upx rgba(0, 0, 0, 0.2);
    }
    .tag {
        display: flex;
        flex-direction: column;
        min-height: 80rpx;
        border-bottom: 1px solid #e2e2e2;
    }
    .wms-tag {
        min-width: 60rpx;
        margin-left: 50rpx;
        margin-top: 30rpx;
        color: #FFF;
        font-size: 14px;
        padding: 4rpx 12rpx;
    }
    .tag-item {
        width: 100%;
        min-height: 60rpx;
        line-height: 2;
        padding-left: 50rpx;
        color: #606266;
        font-size: 14px;
    }
</style>
pages/mat/matSelected.vue
@@ -3,15 +3,15 @@
        <view class="form">
            <view class="form-item">
                <view class="form-item-desc"><text>商品编码</text></view>
                <view class="form-item-content"><text>{{mat.matnr}}</text></view>
                <view class="form-item-content"><text>{{mat.matNo}}</text></view>
            </view>
            <view class="form-item">
                <view class="form-item-desc"><text>商品名称</text></view>
                <view class="form-item-content"><text>{{mat.maktx}}</text></view>
                <view class="form-item-content"><text>{{mat.matName}}</text></view>
            </view>
            <view class="form-item">
                <view class="form-item-desc"><text>规格</text></view>
                <view class="form-item-content"><text>{{mat.specs}}</text></view>
                <view class="form-item-content"><text>{{mat.str2}}</text></view>
            </view>
            <view class="form-item">
                <view class="form-item-desc"><text>批号</text></view>
@@ -40,9 +40,9 @@
        data() {
            return {
                mat: {
                    matnr: null,
                    maktx: null,
                    specs: null,
                    matNo: null,
                    matName: null,
                    str2: null,
                    batch: null,
                    anfme: 0,
                },
@@ -61,6 +61,7 @@
            
            // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
            eventChannel.on('mat', function(data) {
                console.log(data.data);
                that.mat = data.data
                that.mat.anfme = 0
            })
pages/pakin/pakin.vue
@@ -29,16 +29,16 @@
                    <view class="list-left-item">
                        <view class="desc">编码:</view>
                        <view class="left-item">
                            <uni-tag :text="item.matnr" type="primary"></uni-tag>
                            <uni-tag :text="item.matNo" type="primary"></uni-tag>
                        </view>
                    </view>
                    <view class="list-left-item">
                        <view class="desc">品名:</view>
                        <view class="left-item">{{item.maktx}}</view>
                        <view class="left-item">{{item.matName}}</view>
                    </view>
                    <view class="list-left-item">
                        <view class="desc">规格:</view>
                        <view class="left-item">{{item.specs}}</view>
                        <view class="left-item">{{item.str2}}</view>
                    </view>
                    <view class="list-left-item">
                        <view class="desc">批号:</view>
@@ -208,9 +208,9 @@
            findMat() {
                let that = this
                uni.request({
                    url: that.baseUrl + '/mat/auth',
                    url: that.baseUrl + '/matCode/list/auth',
                    data: {
                        matnr: that.matnr
                        mat_no: that.matnr
                    },
                    header: {
                        'token': uni.getStorageSync('token')
@@ -226,7 +226,7 @@
                                // 通过eventChannel向被打开页面传送数据
                                success: function(res) {
                                    res.eventChannel.emit('mat', {
                                        data: result.data
                                        data: result.data.records[0]
                                    })
                                },
                                // 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据