#
zhou zhou
2026-02-04 ceb57b4c12eb18b32b849edb37f2d63ca2a5d0c5
#
2个文件已删除
2个文件已添加
1 文件已重命名
2个文件已修改
1954 ■■■■■ 已修改文件
pages.json 805 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/inspect/check.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/other/workInfo/locInfo.vue 336 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/other/workInfo/stationInfo.vue 334 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/other/workInfo/taskInfo.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/workInfo/locInfo.vue 239 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/workInfo/stationInfo.vue 234 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages.json
@@ -1,405 +1,404 @@
{
    "pages": [
        {
            "path": "pages/login/index",
            "style": {
                "navigationBarTitleText": "%page.login%",
                "navigationStyle": "custom"
            }
        },
        {
            "path": "pages/home/index",
            "style": {
                "navigationBarTitleText": "%page.index%"
            }
{
    "pages": [{
            "path": "pages/login/index",
            "style": {
                "navigationBarTitleText": "%page.login%",
                "navigationStyle": "custom"
            }
        },
                {
                    "path": "pages/icon",
                    "style": {
                        "navigationBarTitleText": "单据列表"
                    }
                },
        {
            "path": "pages/other/transferView/orderList",
            "style": {
                "navigationBarTitleText": "单据列表"
            }
        },
        {
            "path": "pages/other/transferView/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOut/order_out_type",
            "style": {
                "navigationBarTitleText": "单据类型"
            }
        },
        {
            "path": "pages/outbound/orderOut/orderList",
            "style": {
                "navigationBarTitleText": "单据列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOut/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表"
            }
        },
        {
            "path": "pages/outbound/orderOutView/order_out_type",
            "style": {
                "navigationBarTitleText": "单据类型"
            }
        },
        {
            "path": "pages/outbound/orderOutView/orderList",
            "style": {
                "navigationBarTitleText": "单据列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOutView/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表"
            }
        },
        {
            "path": "pages/outbound/orderOut/outLocView",
            "style": {
                "navigationBarTitleText": "出库库位视图"
            }
        },
        {
            "path": "pages/emptyTray/outBound",
            "style": {
                "navigationBarTitleText": "空托出库"
            }
        },
        {
            "path": "pages/emptyTray/inBound",
            "style": {
                "navigationBarTitleText": "空托入库"
            }
        },
        {
            "path": "pages/outbound/orderPick",
            "style": {
                "navigationBarTitleText": "订单出库"
            }
        },
        {
            "path": "pages/outbound/orderOut",
            "style": {
                "navigationBarTitleText": "出库订单"
            }
        },
        {
            "path": "pages/outbound/orderOutItem",
            "style": {
                "navigationBarTitleText": "订单出库详情"
            }
        },
        {
            "path": "pages/outbound/matPreparation",
            "style": {
                "navigationBarTitleText": "生产备料"
            }
        },
        {
            "path": "pages/outbound/matPreparationItem",
            "style": {
                "navigationBarTitleText": "生产备料详情"
            }
        },
        {
            "path": "pages/inbound/orderIn",
            "style": {
                "navigationBarTitleText": "入库订单"
            }
        },
        {
            "path": "pages/inbound/orderInExecute",
            "style": {
                "navigationBarTitleText": "入库订单列表"
            }
        },
        {
            "path": "pages/inbound/orderInItem",
            "style": {
                "navigationBarTitleText": "入库订单详情"
            }
        },
        {
            "path": "pages/transfer/transferType",
            "style": {
                "navigationBarTitleText": "调拨类型"
            }
        },
        {
            "path": "pages/transfer/orderTransfer",
            "style": {
                "navigationBarTitleText": "调拨订单"
            }
        },
        {
            "path": "pages/transfer/orderTransferItem",
            "style": {
                "navigationBarTitleText": "调拨订单详情"
            }
        },
        {
            "path": "pages/transfer/matTransfer",
            "style": {
                "navigationBarTitleText": "移库"
            }
        },
        {
            "path": "pages/workInfo/taskInfo",
            "style": {
                "navigationBarTitleText": "工作任务"
            }
        },
        {
            "path": "pages/workInfo/stationInfo",
            "style": {
                "navigationBarTitleText": "站点信息"
            }
        },
        {
            "path": "pages/workInfo/locInfo",
            "style": {
                "navigationBarTitleText": "库位信息"
            }
        },
        {
            "path": "pages/inbound/buffStore",
            "style": {
                "navigationBarTitleText": "灌桶入库"
            }
        },
        {
            "path": "pages/outbound/matDirectDelivery",
            "style": {
                "navigationBarTitleText": "生产直送"
            }
        },
        {
            "path": "pages/outbound/productDirectDelivery",
            "style": {
                "navigationBarTitleText": "成品直出"
            }
        },
        {
            "path": "pages/outbound/productionMatCall",
            "style": {
                "navigationBarTitleText": "生产叫料"
            }
        },
        {
            "path": "pages/outbound/wavePick",
            "style": {
                "navigationBarTitleText": "波次拣货"
            }
        },
        {
            "path": "pages/check/checkOrder",
            "style": {
                "navigationBarTitleText": "盘点单"
            }
        },
        {
            "path": "pages/check/checkOrderItem",
            "style": {
                "navigationBarTitleText": "初盘"
            }
        },
        {
            "path": "pages/check/firstCheck",
            "style": {
                "navigationBarTitleText": "初盘"
            }
        },
        {
            "path": "pages/outbound/wavePickItem",
            "style": {
                "navigationBarTitleText": "波次拣货"
            }
        },
        {
            "path": "pages/rece/standard",
            "style": {
                "navigationBarTitleText": "标准收货"
            }
        },
        {
            "path": "pages/rece/other",
            "style": {
                "navigationBarTitleText": "单据收货"
            }
        },
        {
            "path": "pages/listing/disc",
            "style": {
                "navigationBarTitleText": "组盘"
            }
        },
        {
            "path": "pages/AGV/AGVStaBind",
            "style": {
                "navigationBarTitleText": "AGV站点绑定"
            }
        },
        {
            "path": "pages/AGV/StaUnBind",
            "style": {
                "navigationBarTitleText": "AGV站点解绑"
            }
        },
        {
            "path": "pages/AGV/StartInTask",
            "style": {
                "navigationBarTitleText": "AGV入库"
            }
        },
        {
            "path": "pages/AGV/BindAndInTask",
            "style": {
                "navigationBarTitleText": "AGV绑定&入库"
            }
        },
        {
            "path": "pages/listing/matnrPalletising",
            "style": {
                "navigationBarTitleText": "单据组托"
            }
        },
        {
            "path": "pages/listing/itemSelect",
            "style": {
                "navigationBarTitleText": "选择物料",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/listing/untie",
            "style": {
                "navigationBarTitleText": "解绑"
            }
        },
        {
            "path": "pages/inspect/report",
            "style": {
                "navigationBarTitleText": "报检"
            }
        },
        {
            "path": "pages/inspect/check",
            "style": {
                "navigationBarTitleText": "质检解锁"
            }
        },
        {
            "path": "pages/inspect/bad",
            "style": {
                "navigationBarTitleText": "质检上锁"
            }
        },
        {
            "path": "pages/listing/labour",
            "style": {
                "navigationBarTitleText": "人工上架"
            }
        },
        {
            "path": "pages/listing/upper",
            "style": {
                "navigationBarTitleText": "上架"
            }
        },
        {
            "path": "pages/outbound/fastPicking",
            "style": {
                "navigationBarTitleText": "快速拣货"
            }
        },
        {
            "path": "pages/mat/matSelected",
            "style": {
                "navigationBarTitleText": "物料"
            }
        },
        {
            "path": "pages/mat/matQuery",
            "style": {
                "navigationBarTitleText": "物料"
            }
        },
        {
            "path": "pages/mat/matList",
            "style": {
                "navigationBarTitleText": "商品列表"
            }
        },
        {
            "path": "pages/login/logOut",
            "style": {
                "navigationBarTitleText": "退出登录"
            }
        },
        {
            "path": "pages/home/menuHome",
            "style": {
                "navigationBarTitleText": "主页",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/inOutManage",
            "style": {
                "navigationBarTitleText": "入出库管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/orderManage",
            "style": {
                "navigationBarTitleText": "单据管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/wrkMastManage",
            "style": {
                "navigationBarTitleText": "任务管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/locMastManage",
            "style": {
                "navigationBarTitleText": "库位管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/listing/unPakin",
            "style": {
                "navigationBarTitleText": "组托解绑"
            }
        }
    ],
    "globalStyle": {
        "navigationBarTextStyle": "black",
        "navigationBarTitleText": "uni-app",
        "navigationBarBackgroundColor": "#F8F8F8",
        "backgroundColor": "#F8F8F8"
    },
    "uniIdRouter": {}
        {
            "path": "pages/home/index",
            "style": {
                "navigationBarTitleText": "%page.index%"
            }
        },
        {
            "path": "pages/icon",
            "style": {
                "navigationBarTitleText": "单据列表"
            }
        },
        {
            "path": "pages/other/transferView/orderList",
            "style": {
                "navigationBarTitleText": "单据列表"
            }
        },
        {
            "path": "pages/other/transferView/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOut/order_out_type",
            "style": {
                "navigationBarTitleText": "单据类型"
            }
        },
        {
            "path": "pages/outbound/orderOut/orderList",
            "style": {
                "navigationBarTitleText": "单据列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOut/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表"
            }
        },
        {
            "path": "pages/outbound/orderOutView/order_out_type",
            "style": {
                "navigationBarTitleText": "单据类型"
            }
        },
        {
            "path": "pages/outbound/orderOutView/orderList",
            "style": {
                "navigationBarTitleText": "单据列表",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/outbound/orderOutView/orderDetlList",
            "style": {
                "navigationBarTitleText": "单据明细列表"
            }
        },
        {
            "path": "pages/outbound/orderOut/outLocView",
            "style": {
                "navigationBarTitleText": "出库库位视图"
            }
        },
        {
            "path": "pages/emptyTray/outBound",
            "style": {
                "navigationBarTitleText": "空托出库"
            }
        },
        {
            "path": "pages/emptyTray/inBound",
            "style": {
                "navigationBarTitleText": "空托入库"
            }
        },
        {
            "path": "pages/outbound/orderPick",
            "style": {
                "navigationBarTitleText": "订单出库"
            }
        },
        {
            "path": "pages/outbound/orderOut",
            "style": {
                "navigationBarTitleText": "出库订单"
            }
        },
        {
            "path": "pages/outbound/orderOutItem",
            "style": {
                "navigationBarTitleText": "订单出库详情"
            }
        },
        {
            "path": "pages/outbound/matPreparation",
            "style": {
                "navigationBarTitleText": "生产备料"
            }
        },
        {
            "path": "pages/outbound/matPreparationItem",
            "style": {
                "navigationBarTitleText": "生产备料详情"
            }
        },
        {
            "path": "pages/inbound/orderIn",
            "style": {
                "navigationBarTitleText": "入库订单"
            }
        },
        {
            "path": "pages/inbound/orderInExecute",
            "style": {
                "navigationBarTitleText": "入库订单列表"
            }
        },
        {
            "path": "pages/inbound/orderInItem",
            "style": {
                "navigationBarTitleText": "入库订单详情"
            }
        },
        {
            "path": "pages/transfer/transferType",
            "style": {
                "navigationBarTitleText": "调拨类型"
            }
        },
        {
            "path": "pages/transfer/orderTransfer",
            "style": {
                "navigationBarTitleText": "调拨订单"
            }
        },
        {
            "path": "pages/transfer/orderTransferItem",
            "style": {
                "navigationBarTitleText": "调拨订单详情"
            }
        },
        {
            "path": "pages/transfer/matTransfer",
            "style": {
                "navigationBarTitleText": "移库"
            }
        },
        {
            "path": "pages/other/workInfo/taskInfo",
            "style": {
                "navigationBarTitleText": "工作任务"
            }
        },
        {
            "path": "pages/other/workInfo/stationInfo",
            "style": {
                "navigationBarTitleText": "站点信息"
            }
        },
        {
            "path": "pages/other/workInfo/locInfo",
            "style": {
                "navigationBarTitleText": "库位信息"
            }
        },
        {
            "path": "pages/inbound/buffStore",
            "style": {
                "navigationBarTitleText": "灌桶入库"
            }
        },
        {
            "path": "pages/outbound/matDirectDelivery",
            "style": {
                "navigationBarTitleText": "生产直送"
            }
        },
        {
            "path": "pages/outbound/productDirectDelivery",
            "style": {
                "navigationBarTitleText": "成品直出"
            }
        },
        {
            "path": "pages/outbound/productionMatCall",
            "style": {
                "navigationBarTitleText": "生产叫料"
            }
        },
        {
            "path": "pages/outbound/wavePick",
            "style": {
                "navigationBarTitleText": "波次拣货"
            }
        },
        {
            "path": "pages/check/checkOrder",
            "style": {
                "navigationBarTitleText": "盘点单"
            }
        },
        {
            "path": "pages/check/checkOrderItem",
            "style": {
                "navigationBarTitleText": "初盘"
            }
        },
        {
            "path": "pages/check/firstCheck",
            "style": {
                "navigationBarTitleText": "初盘"
            }
        },
        {
            "path": "pages/outbound/wavePickItem",
            "style": {
                "navigationBarTitleText": "波次拣货"
            }
        },
        {
            "path": "pages/rece/standard",
            "style": {
                "navigationBarTitleText": "标准收货"
            }
        },
        {
            "path": "pages/rece/other",
            "style": {
                "navigationBarTitleText": "单据收货"
            }
        },
        {
            "path": "pages/listing/disc",
            "style": {
                "navigationBarTitleText": "组盘"
            }
        },
        {
            "path": "pages/AGV/AGVStaBind",
            "style": {
                "navigationBarTitleText": "AGV站点绑定"
            }
        },
        {
            "path": "pages/AGV/StaUnBind",
            "style": {
                "navigationBarTitleText": "AGV站点解绑"
            }
        },
        {
            "path": "pages/AGV/StartInTask",
            "style": {
                "navigationBarTitleText": "AGV入库"
            }
        },
        {
            "path": "pages/AGV/BindAndInTask",
            "style": {
                "navigationBarTitleText": "AGV绑定&入库"
            }
        },
        {
            "path": "pages/listing/matnrPalletising",
            "style": {
                "navigationBarTitleText": "单据组托"
            }
        },
        {
            "path": "pages/listing/itemSelect",
            "style": {
                "navigationBarTitleText": "选择物料",
                "enablePullDownRefresh": true
            }
        },
        {
            "path": "pages/listing/untie",
            "style": {
                "navigationBarTitleText": "解绑"
            }
        },
        {
            "path": "pages/inspect/report",
            "style": {
                "navigationBarTitleText": "报检"
            }
        },
        {
            "path": "pages/inspect/check",
            "style": {
                "navigationBarTitleText": "质检解锁"
            }
        },
        {
            "path": "pages/inspect/bad",
            "style": {
                "navigationBarTitleText": "质检上锁"
            }
        },
        {
            "path": "pages/listing/labour",
            "style": {
                "navigationBarTitleText": "人工上架"
            }
        },
        {
            "path": "pages/listing/upper",
            "style": {
                "navigationBarTitleText": "上架"
            }
        },
        {
            "path": "pages/outbound/fastPicking",
            "style": {
                "navigationBarTitleText": "快速拣货"
            }
        },
        {
            "path": "pages/mat/matSelected",
            "style": {
                "navigationBarTitleText": "物料"
            }
        },
        {
            "path": "pages/mat/matQuery",
            "style": {
                "navigationBarTitleText": "物料"
            }
        },
        {
            "path": "pages/mat/matList",
            "style": {
                "navigationBarTitleText": "商品列表"
            }
        },
        {
            "path": "pages/login/logOut",
            "style": {
                "navigationBarTitleText": "退出登录"
            }
        },
        {
            "path": "pages/home/menuHome",
            "style": {
                "navigationBarTitleText": "主页",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/inOutManage",
            "style": {
                "navigationBarTitleText": "入出库管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/orderManage",
            "style": {
                "navigationBarTitleText": "单据管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/wrkMastManage",
            "style": {
                "navigationBarTitleText": "任务管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/home/locMastManage",
            "style": {
                "navigationBarTitleText": "库位管理",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/listing/unPakin",
            "style": {
                "navigationBarTitleText": "组托解绑"
            }
        }
    ],
    "globalStyle": {
        "navigationBarTextStyle": "black",
        "navigationBarTitleText": "uni-app",
        "navigationBarBackgroundColor": "#F8F8F8",
        "backgroundColor": "#F8F8F8"
    },
    "uniIdRouter": {}
}
pages/inspect/check.vue
@@ -162,8 +162,8 @@
</template>
<script>
import { request } from '../../common/request.js'
import ConfirmModal from '../../components/confirm-modal/confirm-modal.vue'
import { request } from '@/common/request.js'
import ConfirmModal from '@/components/confirm-modal/confirm-modal.vue'
export default {
    components: {
pages/other/workInfo/locInfo.vue
New file
@@ -0,0 +1,336 @@
<template>
    <view class="has-foot">
        <form>
            <view class="cu-form-group margin-top">
                <view class="title">库位码</view>
                <input
                    placeholder="请扫描库位条码"
                    v-model="barcode"
                />
                <text
                    class="cuIcon-search text-blue"
                    @click="search"
                ></text>
            </view>
        </form>
        <view class="cu-list det menu sm-border padding">
            <block
                v-for="(item, index) in list"
                :key="index"
                @click="clickTaskItem(index)"
            >
                <view
                    class="cu-list det menu"
                    @click="clickTaskItem(index)"
                >
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">库位编码:</text>
                            <text class="text-black">{{ item.code }}</text>
                        </view>
                    </view>
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">库位类型:</text>
                            <text class="text-black">{{ item.typeIds$ }}</text>
                        </view>
                    </view>
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">库区:</text>
                            <text class="text-black">{{ item.areaId$ }}</text>
                        </view>
                    </view>
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">站点状态:</text>
                            <text class="text-black">
                                {{ item.useStatus$ }}
                            </text>
                        </view>
                    </view>
                    <view
                        class="cu-item"
                        style="justify-content: center"
                    >
                        <button
                            class="cu-btn bg-blue"
                            style="width: 80%"
                            @click.stop="openAction(item)"
                        >
                            操作
                        </button>
                    </view>
                </view>
            </block>
        </view>
        <uni-load-more :status="loadingType"></uni-load-more>
        <uni-popup
            ref="popup"
            class="cu-popup"
            type="bottom"
        >
            <view class="bg-white">
                <view class="cu-bar bg-white justify-end">
                    <view class="content">操作</view>
                    <view
                        class="action"
                        @click="close"
                    >
                        <text class="cuIcon-close text-red"></text>
                    </view>
                </view>
                <view class="padding-xl">
                    <button
                        class="cu-btn block bg-red margin-tb-sm lg"
                        @click="handleOperate(1)"
                    >
                        禁用
                    </button>
                    <button
                        class="cu-btn block bg-green margin-tb-sm lg"
                        @click="handleOperate(2)"
                    >
                        解禁
                    </button>
                    <button
                        class="cu-btn block bg-yellow margin-tb-sm lg"
                        @click="handleOperate(3)"
                    >
                        释放
                    </button>
                </view>
            </view>
        </uni-popup>
    </view>
</template>
<script>
import { request } from '@/common/request.js'
import { mapState, mapMutations, mapActions, mapGetters } from 'vuex'
export default {
    data() {
        return {
            container: '',
            list: [],
            range: [],
            curCode: '',
            barcode: '',
            curr: 1,
            limit: 10,
            loadingType: 'more',
            curItem: null // 当前操作的项
        }
    },
    computed: {
        ...mapState('user', ['dynamicFields'])
    },
    mounted() {
        this.search()
    },
    onReachBottom() {
        if (this.loadingType === 'more') {
            this.curr++
            this.getData()
        }
    },
    methods: {
        openAction(item) {
            this.curItem = item
            this.$refs.popup.open()
        },
        async handleOperate(type) {
            if (!this.curItem) return
            uni.showLoading({
                title: '处理中...'
            })
            try {
                const { code, data, msg } = await request('/other/locOperate', {
                    locNo: this.curItem.code,
                    staOperateType: type
                })
                uni.hideLoading()
                if (code === 200) {
                    uni.showToast({
                        title: '操作成功',
                        icon: 'success'
                    })
                    this.$refs.popup.close()
                    // 刷新列表
                    this.search()
                } else {
                    uni.showToast({
                        title: msg,
                        icon: 'none'
                    })
                }
            } catch (e) {
                uni.hideLoading()
                uni.showToast({
                    title: '操作失败',
                    icon: 'none'
                })
            }
        },
        search() {
            this.getData(true)
        },
        async getData(isReset = false) {
            if (isReset) {
                this.curr = 1
                this.loadingType = 'more'
            }
            if (this.loadingType === 'noMore') return
            this.loadingType = 'loading'
            const { code, data, msg } = await request(
                '/other/loc/page',
                {
                    curr: this.curr,
                    limit: this.limit,
                    locNo: this.barcode
                },
                'GET'
            )
            if (code === 200) {
                if (isReset) {
                    this.list = data.records
                } else {
                    this.list = this.list.concat(data.records)
                }
                const total = data.total
                if (this.list.length >= total) {
                    this.loadingType = 'noMore'
                } else {
                    this.loadingType = 'more'
                }
            } else {
                uni.showToast({
                    title: msg,
                    icon: 'none'
                })
                this.loadingType = 'more'
            }
        },
        clickTaskItem(index) {
            let that = this
            uni.navigateTo({
                url: './orderInItem',
                // 通过eventChannel向被打开页面传送数据
                success: function (res) {
                    res.eventChannel.emit('checkItem', {
                        data: that.list[index]
                    })
                }
            })
        },
        remove(index) {
            this.list.splice(index, 1)
        },
        clear() {
            this.list = []
            this.container = ''
            this.barcode = ''
        },
        open() {
            this.$refs.popup.open()
        },
        close() {
            this.$refs.popup.close()
        },
        popupSubmit() {
            this.$refs.popup.close()
        },
        itemChange(el) {
            this.curCode = el
        },
        async confirm() {
            if (this.barcode === '' || this.barcode === null) {
                uni.showToast({
                    title: '接驳站码不能为空',
                    icon: 'none'
                })
                return
            }
            const { code, data, msg } = await request('/AGV/staBind', {
                barcode: this.container,
                sta: this.barcode
            })
            if (code === 200) {
                uni.showToast({
                    title: '绑定成功'
                })
                this.clear()
            } else {
                uni.showToast({
                    title: msg,
                    icon: 'none'
                })
            }
        }
    }
}
</script>
<style>
.index {
    border: 1px solid #e54d42;
    color: #e54d42;
    border-radius: 50%;
    display: block;
    width: 50rpx;
    height: 50rpx;
    line-height: 48rpx;
    text-align: center;
    margin-right: 20rpx;
    font-size: 30rpx;
}
.text-blue {
    color: #0081ff !important;
}
.item {
    position: relative;
    display: flex;
    min-height: 80upx;
    align-items: center;
}
.uni-file-picker {
    width: 100%;
    margin-bottom: 10px;
}
.uni-select__selector {
    z-index: 999;
}
.tj {
    height: auto;
    padding: 6px 8px;
    display: inline-block;
    border-radius: 6px;
}
.item {
    display: flex;
    justify-content: center;
}
.item .cu-btn {
    font-size: 26upx;
}
</style>
pages/other/workInfo/stationInfo.vue
New file
@@ -0,0 +1,334 @@
<template>
    <view class="has-foot">
        <form>
            <view class="cu-form-group margin-top">
                <view class="title">接驳站点</view>
                <input
                    placeholder="请扫描接驳站点条码"
                    v-model="barcode"
                />
                <text
                    class="cuIcon-search text-blue"
                    @click="search"
                ></text>
            </view>
        </form>
        <view class="cu-list det menu sm-border padding">
            <block
                v-for="(item, index) in list"
                :key="index"
                @click="clickTaskItem(index)"
            >
                <view
                    class="cu-list det menu"
                    @click="clickTaskItem(index)"
                >
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">站点编码:</text>
                            <text class="text-black">
                                {{ item.stationName }}
                            </text>
                        </view>
                    </view>
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">站点类型:</text>
                            <text class="text-black">
                                {{ item.type === 1 ? '光电站点' : '普通站点' }}
                            </text>
                        </view>
                    </view>
                    <view class="cu-item">
                        <view class="content">
                            <text class="text-grey">站点状态:</text>
                            <text class="text-black">
                                {{ item.useStatus$ }}
                            </text>
                        </view>
                    </view>
                    <view
                        class="cu-item"
                        style="justify-content: center"
                    >
                        <button
                            class="cu-btn bg-blue"
                            style="width: 80%"
                            @click.stop="openAction(item)"
                        >
                            操作
                        </button>
                    </view>
                </view>
            </block>
        </view>
        <uni-load-more :status="loadingType"></uni-load-more>
        <uni-popup
            ref="popup"
            class="cu-popup"
            type="bottom"
        >
            <view class="bg-white">
                <view class="cu-bar bg-white justify-end">
                    <view class="content">操作</view>
                    <view
                        class="action"
                        @click="close"
                    >
                        <text class="cuIcon-close text-red"></text>
                    </view>
                </view>
                <view class="padding-xl">
                    <button
                        class="cu-btn block bg-red margin-tb-sm lg"
                        @click="handleOperate(1)"
                    >
                        禁用
                    </button>
                    <button
                        class="cu-btn block bg-green margin-tb-sm lg"
                        @click="handleOperate(2)"
                    >
                        解禁
                    </button>
                    <button
                        class="cu-btn block bg-yellow margin-tb-sm lg"
                        @click="handleOperate(3)"
                    >
                        释放
                    </button>
                </view>
            </view>
        </uni-popup>
    </view>
</template>
<script>
import { request } from '@/common/request.js'
import { mapState, mapMutations, mapActions, mapGetters } from 'vuex'
export default {
    data() {
        return {
            container: '',
            list: [],
            range: [],
            curCode: '',
            barcode: '',
            curr: 1,
            limit: 10,
            loadingType: 'more',
            curItem: null // 当前操作的项
        }
    },
    computed: {
        ...mapState('user', ['dynamicFields'])
    },
    mounted() {
        this.search()
    },
    onReachBottom() {
        if (this.loadingType === 'more') {
            this.curr++
            this.getData()
        }
    },
    methods: {
        openAction(item) {
            this.curItem = item
            this.$refs.popup.open()
        },
        async handleOperate(type) {
            if (!this.curItem) return
            uni.showLoading({
                title: '处理中...'
            })
            try {
                const { code, data, msg } = await request('/other/staOperate', {
                    transferStationNo: this.curItem.stationName,
                    staOperateType: type
                })
                uni.hideLoading()
                if (code === 200) {
                    uni.showToast({
                        title: '操作成功',
                        icon: 'success'
                    })
                    this.$refs.popup.close()
                    // 刷新列表
                    this.search()
                } else {
                    uni.showToast({
                        title: msg,
                        icon: 'none'
                    })
                }
            } catch (e) {
                uni.hideLoading()
                uni.showToast({
                    title: '操作失败',
                    icon: 'none'
                })
            }
        },
        search() {
            this.getData(true)
        },
        async getData(isReset = false) {
            if (isReset) {
                this.curr = 1
                this.loadingType = 'more'
            }
            if (this.loadingType === 'noMore') return
            this.loadingType = 'loading'
            const { code, data, msg } = await request(
                '/other/station/page',
                {
                    curr: this.curr,
                    limit: this.limit,
                    staNo: this.barcode
                },
                'GET'
            )
            if (code === 200) {
                if (isReset) {
                    this.list = data.records
                } else {
                    this.list = this.list.concat(data.records)
                }
                const total = data.total
                if (this.list.length >= total) {
                    this.loadingType = 'noMore'
                } else {
                    this.loadingType = 'more'
                }
            } else {
                uni.showToast({
                    title: msg,
                    icon: 'none'
                })
                this.loadingType = 'more'
            }
        },
        clickTaskItem(index) {
            let that = this
            uni.navigateTo({
                url: './orderInItem',
                // 通过eventChannel向被打开页面传送数据
                success: function (res) {
                    res.eventChannel.emit('checkItem', {
                        data: that.list[index]
                    })
                }
            })
        },
        remove(index) {
            this.list.splice(index, 1)
        },
        clear() {
            this.list = []
            this.container = ''
            this.barcode = ''
        },
        open() {
            this.$refs.popup.open()
        },
        close() {
            this.$refs.popup.close()
        },
        popupSubmit() {
            this.$refs.popup.close()
        },
        itemChange(el) {
            this.curCode = el
        },
        async confirm() {
            if (this.barcode === '' || this.barcode === null) {
                uni.showToast({
                    title: '接驳站码不能为空',
                    icon: 'none'
                })
                return
            }
            const { code, data, msg } = await request('/AGV/staBind', {
                barcode: this.container,
                sta: this.barcode
            })
            if (code === 200) {
                uni.showToast({
                    title: '绑定成功'
                })
                this.clear()
            } else {
                uni.showToast({
                    title: msg,
                    icon: 'none'
                })
            }
        }
    }
}
</script>
<style>
.index {
    border: 1px solid #e54d42;
    color: #e54d42;
    border-radius: 50%;
    display: block;
    width: 50rpx;
    height: 50rpx;
    line-height: 48rpx;
    text-align: center;
    margin-right: 20rpx;
    font-size: 30rpx;
}
.text-blue {
    color: #0081ff !important;
}
.item {
    position: relative;
    display: flex;
    min-height: 80upx;
    align-items: center;
}
.uni-file-picker {
    width: 100%;
    margin-bottom: 10px;
}
.uni-select__selector {
    z-index: 999;
}
.tj {
    height: auto;
    padding: 6px 8px;
    display: inline-block;
    border-radius: 6px;
}
.item {
    display: flex;
    justify-content: center;
}
.item .cu-btn {
    font-size: 26upx;
}
</style>
pages/other/workInfo/taskInfo.vue
File was renamed from pages/workInfo/taskInfo.vue
@@ -94,7 +94,7 @@
<script>
    import {
        request
    } from '../../common/request.js'
    } from '@/common/request.js'
    import {
        mapState,
        mapMutations,
pages/workInfo/locInfo.vue
File was deleted
pages/workInfo/stationInfo.vue
File was deleted