spring
4 天以前 7b634da281a7ae621605c273b199e4ff14820c45
核磅录入10%
已修改4个文件
已添加3个文件
1204 ■■■■ 文件已修改
pages.json 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/product/cancelReport/index.vue 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/sys/home/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/wareHouse/inventory/index.vue 660 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/wareHouse/nuclearScale/index.scss 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/wareHouse/nuclearScale/index.vue 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/wareHouse/nuclearScale/nuclearScaleList.vue 298 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages.json
@@ -565,6 +565,26 @@
        "enablePullDownRefresh": false
      }
    },
    // æ ¸ç£…录入
    {
      "path": "pages/wareHouse/nuclearScale/index",
      "style": {
        "navigationStyle": "custom",
        "navigationBarTitleText": "",
        // "navigationBarBackgroundColor": "#CEE3FE",
        "enablePullDownRefresh": false
      }
    },
    // æ ¸ç£…单号
    {
      "path": "pages/wareHouse/nuclearScale/nuclearScaleList",
      "style": {
        "navigationStyle": "custom",
        "navigationBarTitleText": "",
        // "navigationBarBackgroundColor": "#CEE3FE",
        "enablePullDownRefresh": false
      }
    },
    {
      "path": "pages/product/tailHandle/index",
      "style": {
@@ -714,11 +734,13 @@
    {
      "path": "pages/product/cancelReport/index",
      "style": {
        "navigationBarTitleText": "取消报工",
        "navigationBarBackgroundColor": "#0052d9"
        "navigationStyle": "custom",
        "navigationBarTitleText": "",
        // "navigationBarBackgroundColor": "#3281FF"
        "enablePullDownRefresh": false
      }
    },
        // ç›˜ç‚¹æŠ¥å‘Šå·
    // ç›˜ç‚¹æŠ¥å‘Šå·
    {
      "path": "pages/wareHouse/inventory/orderList",
      "style": {
pages/product/cancelReport/index.vue
@@ -1,7 +1,10 @@
<template>
  <!-- å–消报工 -->
  <view class="page">
    <u-form :model="form" ref="uForm" :label-width="280" :rules="rules" :error-type="['toast']">
    <view class="packing-registration-bg" />
    <u-navbar title="核磅录入" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
      back-icon-color="#000" />
    <u-form :model="form" ref="uForm" :label-width="280" :rules="rules" :error-type="['toast']" class="uForm">
      <u-form-item label="订单号" :border-bottom="false" prop="value3">
        <u-input v-model="form.value3" type="select" placeholder="点击选择" @click="openList" />
      </u-form-item>
@@ -11,9 +14,16 @@
</template>
<script>
import content_bg from '@/static/custom/packing/backBg.png'
export default {
  data() {
    return {
      background: {
        backgroundImage: `url(${content_bg})`,
        backgroundAttachment: 'fixed',
        backgroundSize: '100% auto',
        backgroundRepeat: 'no-repeat',
      },
      form: {
        value3: ''
      },
@@ -37,7 +47,27 @@
<style lang="scss" scoped>
.page {
  box-sizing: border-box;
  padding: 30rpx;
}
.packing-registration-bg {
  background-color: #f6f9ff;
  background-image: url("~@/static/custom/packing/backBg.png");
  padding: 0 20rpx;
  background-attachment: fixed;
  background-size: 100% auto;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
}
.uForm {
  background: #fff;
  margin: 40rpx 30rpx;
  padding: 20rpx 30rpx;
  border-radius: 16rpx;
}
::v-deep .u-input__input {
pages/sys/home/index.vue
@@ -69,7 +69,7 @@
                        },
                        {
                            name: '核磅录入',
                            url: '/pages/wareHouse/packing/registration',
                            url: '/pages/wareHouse/nuclearScale/index',
                            icon: 'eight'
                        },
                        {
pages/wareHouse/inventory/index.vue
@@ -10,10 +10,10 @@
                        <text class="item-one">盘点报告号</text>
                    </view>
                    <view class="packing-registration-param-item-right">
                        <text class="item-one item-two"
                            @click="seachPersonnelNo()">{{registerInfo.value1=='' ? "点击选择":registerInfo.value1}}</text>
                        <text class="item-one item-two" @click="seachPersonnelNo()">{{ registerInfo.value1 == '' ?
                            "点击选择" : registerInfo.value1}}</text>
                        <u-icon name="arrow-right" color="#687792" size="28" @click="seachPersonnelNo()"
                            v-show="registerInfo.value1 ==''"></u-icon>
                            v-show="registerInfo.value1 == ''"></u-icon>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -21,7 +21,7 @@
                        <text class="item-one">仓库</text>
                    </view>
                    <view class="packing-registration-param-item-right">
                        <text class="item-one item-two">{{registerInfo.value2}}</text>
                        <text class="item-one item-two">{{ registerInfo.value2 }}</text>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -30,9 +30,9 @@
                    </view>
                    <view class="packing-registration-param-item-right">
                        <view class="item-one item-two" @click="openPN()">
                            <text>{{registerInfo.value2=='' ? "点击输入":registerInfo.value2}}</text>
                            <text>{{ registerInfo.value2 == '' ? "点击输入" : registerInfo.value2 }}</text>
                        </view>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value2==''"></u-icon>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value2 == ''"></u-icon>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -40,8 +40,8 @@
                        <text class="item-one">批次号</text>
                    </view>
                    <view class="packing-registration-param-item-right" @click="openBatch()">
                        <text class="item-one item-two">{{registerInfo.value3=='' ? "点击输入":registerInfo.value3}}</text>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value3==''"></u-icon>
                        <text class="item-one item-two">{{ registerInfo.value3 == '' ? "点击输入" : registerInfo.value3 }}</text>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value3 == ''"></u-icon>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -50,9 +50,9 @@
                    </view>
                    <view class="packing-registration-param-item-right" @click="openLocation()">
                        <view class="item-one item-two">
                            <text>{{registerInfo.value4 == '' ? "点击输入":registerInfo.value4}}</text>
                            <text>{{ registerInfo.value4 == '' ? "点击输入" : registerInfo.value4 }}</text>
                        </view>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4==''"></u-icon>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4 == ''"></u-icon>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -61,9 +61,9 @@
                    </view>
                    <view class="packing-registration-param-item-right" @click="openPhysicalInventory()">
                        <view class="item-one item-two">
                            <text>{{registerInfo.value5 == '' ? "点击输入":registerInfo.value5}}</text>
                            <text>{{ registerInfo.value5 == '' ? "点击输入" : registerInfo.value5 }}</text>
                        </view>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4==''"></u-icon>
                        <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4 == ''"></u-icon>
                    </view>
                </view>
                <view class="packing-registration-param-item param-extra">
@@ -80,8 +80,8 @@
                    <view class="content" v-for="(x, index) in hasScanSnList" :key="index" :index="index">
                        <view class="row-list">
                            <view class="row-list-left">
                                <view class="num-icon" style="color: #fff;">{{index+1}}</view>
                                <view style="margin-left: 30rpx;">{{x}}</view>
                                <view class="num-icon" style="color: #fff;">{{ index + 1 }}</view>
                                <view style="margin-left: 30rpx;">{{ x }}</view>
                            </view>
                        </view>
                    </view>
@@ -115,357 +115,357 @@
    </view>
</template>
<script>
    import modalBg from '@/components/modal/modal-bg.vue'
    import scan from "@/components/scan/scan.vue";
    import content_bg from '@/static/custom/packing/backBg.png'
    export default {
        components: {
            scan,
            modalBg
import modalBg from '@/components/modal/modal-bg.vue'
import scan from "@/components/scan/scan.vue";
import content_bg from '@/static/custom/packing/backBg.png'
export default {
    components: {
        scan,
        modalBg
    },
    data() {
        return {
            background: {
                backgroundImage: `url(${content_bg})`,
                backgroundAttachment: 'fixed',
                backgroundSize: '100% auto',
                backgroundRepeat: 'no-repeat',
            },
            labelStyle: {
                fontSize: '32rpx',
                whiteSpace: 'nowrap'
            },
            registerInfo: {
                value1: '',
                value2: '',
                value3: '',
                value4: '',
                value5: ''
            },
            hasScanSnList: [],
            delContent: null,
            staffList: [],
        };
    },
    onLoad(option) { },
    onShow() {
        let that = this
        uni.$off('scan') // æ¯æ¬¡è¿›æ¥å…ˆ ç§»é™¤å…¨å±€è‡ªå®šä¹‰äº‹ä»¶ç›‘听器
        uni.$on('scan', function (data) {
            console.log('onscan');
            //扫码成功后的回调,你可以写自己的逻辑代码在这里
            console.log('扫码结果:', data.code);
            that.scanHandle(data.code)
            that.$forceUpdate();
        })
    },
    onNavigationBarButtonTap() {
        this.goScan()
    },
    onReady() { },
    methods: {
        //零件号
        openPN() {
            this.$refs.openPN.open();
        },
        data() {
            return {
                background: {
                    backgroundImage: `url(${content_bg})`,
                    backgroundAttachment: 'fixed',
                    backgroundSize: '100% auto',
                    backgroundRepeat: 'no-repeat',
                },
                labelStyle: {
                    fontSize: '32rpx',
                    whiteSpace: 'nowrap'
                },
                registerInfo: {
                    value1: '',
                    value2: '',
                    value3: '',
                    value4: '',
                    value5: ''
                },
                hasScanSnList: [],
                delContent: null,
                staffList: [],
            };
        // å¼¹æ¡†ä¿å­˜
        confirmPN() {
            console.log('保存', this.registerInfo.value2);
            // è¯·æ±‚接口,根据工单号查询其他信息并赋值
        },
        onLoad(option) {},
        onShow() {
        //批次号
        openBatch() {
            this.$refs.openBatch.openBatch();
        },
        // å¼¹æ¡†ä¿å­˜
        confirmBatch() {
            console.log('保存', this.registerInfo.value3);
            // è¯·æ±‚接口,根据工单号查询其他信息并赋值
        },
        //库位号
        openLocation() {
            this.$refs.openLocation.open();
        },
        // å¼¹æ¡†ä¿å­˜
        confirmLocation() {
            console.log('保存', this.registerInfo.value4);
            // è¯·æ±‚接口,根据工单号查询其他信息并赋值
        },
        //盘点数量
        openPhysicalInventory() {
            this.$refs.openPhysicalInventory.open();
        },
        // å¼¹æ¡†ä¿å­˜
        confirmPhysicalInventory() {
            console.log('保存', this.registerInfo.value5);
            // è¯·æ±‚接口,根据工单号查询其他信息并赋值
        },
            let that = this
            uni.$off('scan') // æ¯æ¬¡è¿›æ¥å…ˆ ç§»é™¤å…¨å±€è‡ªå®šä¹‰äº‹ä»¶ç›‘听器
            uni.$on('scan', function(data) {
                console.log('onscan');
                //扫码成功后的回调,你可以写自己的逻辑代码在这里
                console.log('扫码结果:', data.code);
                that.scanHandle(data.code)
                that.$forceUpdate();
        setNo(val) {
            console.log('11111', val)
            this.registerInfo = val
        },
        //盘点报告号
        seachPersonnelNo() {
            console.log('11111')
            uni.navigateTo({
                url: '/pages/wareHouse/inventory/orderList'
            })
        },
        onNavigationBarButtonTap() {
            this.goScan()
        goScan() {
            uni.scanCode({
                scanType: ['qrCode'],
                success: res => {
                    try {
                        console.log('扫码结果:', res);
                        this.scanHandle(res.result)
                    } catch (e) { }
                }
            });
        },
        onReady() {},
        methods: {
            //零件号
            openPN() {
                this.$refs.openPN.open();
            },
            // å¼¹æ¡†ä¿å­˜
            confirmPN() {
                console.log('保存', this.registerInfo.value2);
                // è¯·æ±‚接口,根据工单号查询其他信息并赋值
            },
            //批次号
            openBatch() {
                this.$refs.openBatch.openBatch();
            },
            // å¼¹æ¡†ä¿å­˜
            confirmBatch() {
                console.log('保存', this.registerInfo.value3);
                // è¯·æ±‚接口,根据工单号查询其他信息并赋值
            },
            //库位号
            openLocation() {
                this.$refs.openLocation.open();
            },
            // å¼¹æ¡†ä¿å­˜
            confirmLocation() {
                console.log('保存', this.registerInfo.value4);
                // è¯·æ±‚接口,根据工单号查询其他信息并赋值
            },
            //盘点数量
            openPhysicalInventory() {
                this.$refs.openPhysicalInventory.open();
            },
            // å¼¹æ¡†ä¿å­˜
            confirmPhysicalInventory() {
                console.log('保存', this.registerInfo.value5);
                // è¯·æ±‚接口,根据工单号查询其他信息并赋值
            },
            setNo(val) {
                console.log('11111', val)
                this.registerInfo = val
            },
            //盘点报告号
            seachPersonnelNo() {
                console.log('11111')
                uni.navigateTo({
                    url: '/pages/wareHouse/inventory/orderList'
                })
            },
            goScan() {
                uni.scanCode({
                    scanType: ['qrCode'],
                    success: res => {
                        try {
                            console.log('扫码结果:', res);
                            this.scanHandle(res.result)
                        } catch (e) {}
                    }
                });
            },
            scanHandle(scanresult) {
                scanresult = scanresult.replace(/[\r\n]/g, "")
                if (scanresult.indexOf('{') > -1) {
                    //二维码
                    const result = JSON.parse(scanresult)
                    //增加SN校验
                    if (result.sn_no && result.sn_no != null && result.sn_no != '') {
                        if (this.hasScanSnList.length > 0) {
                            let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no)
                            if (hasScanSnIndex < 0) {
                                this.hasScanSnList.push(result.sn_no)
                            } else {
                                this.$u.toast('请勿重复扫描')
                            }
                        } else {
                            this.hasScanSnList.push(result.sn_no)
                        }
                    }
                } else {
                    //增加SN校验
        scanHandle(scanresult) {
            scanresult = scanresult.replace(/[\r\n]/g, "")
            if (scanresult.indexOf('{') > -1) {
                //二维码
                const result = JSON.parse(scanresult)
                //增加SN校验
                if (result.sn_no && result.sn_no != null && result.sn_no != '') {
                    if (this.hasScanSnList.length > 0) {
                        let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult)
                        let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no)
                        if (hasScanSnIndex < 0) {
                            this.hasScanSnList.push(scanresult)
                            this.hasScanSnList.push(result.sn_no)
                        } else {
                            this.$u.toast('请勿重复扫描')
                        }
                    } else {
                        this.hasScanSnList.push(scanresult)
                        this.hasScanSnList.push(result.sn_no)
                    }
                }
            },
            goSubmit() {
                // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') {
                //     this.$u.toast('请选择班次')
                //     return
                // }
                // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') {
                //     this.$u.toast('请选择日期')
                //     return
                // }
                // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') {
                //     this.$u.toast('请选择包装库位')
                //     return
                // }
                // if (this.hasScanSnList.length == 0) {
                //     this.$u.toast('无待提交的SN号明细')
                //     return
                // }
                // let registrList = []
                // this.staffList = []
                // this.staffNameList.forEach((item) => {
                //     this.staffList.push({
                //         staffId: item.id
                //     })
                // })
                // this.hasScanSnList.forEach((item) => {
                //     registrList.push({
                //         shiftId: this.registerInfo.shiftId,
                //         value3: this.registerInfo.value3,
                //         locNo: this.registerInfo.locNo,
                //         partBatchNo: item,
                //         staffList: this.staffList
                //     })
                // })
                // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => {
                //     let resData = res.data
                //     this.hasScanSnList = []
                //     this.$u.toast('提交成功')
                // }).catch((e) => {
                // })
            },
        }
    };
            } else {
                //增加SN校验
                if (this.hasScanSnList.length > 0) {
                    let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult)
                    if (hasScanSnIndex < 0) {
                        this.hasScanSnList.push(scanresult)
                    } else {
                        this.$u.toast('请勿重复扫描')
                    }
                } else {
                    this.hasScanSnList.push(scanresult)
                }
            }
        },
        goSubmit() {
            // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') {
            //     this.$u.toast('请选择班次')
            //     return
            // }
            // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') {
            //     this.$u.toast('请选择日期')
            //     return
            // }
            // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') {
            //     this.$u.toast('请选择包装库位')
            //     return
            // }
            // if (this.hasScanSnList.length == 0) {
            //     this.$u.toast('无待提交的SN号明细')
            //     return
            // }
            // let registrList = []
            // this.staffList = []
            // this.staffNameList.forEach((item) => {
            //     this.staffList.push({
            //         staffId: item.id
            //     })
            // })
            // this.hasScanSnList.forEach((item) => {
            //     registrList.push({
            //         shiftId: this.registerInfo.shiftId,
            //         value3: this.registerInfo.value3,
            //         locNo: this.registerInfo.locNo,
            //         partBatchNo: item,
            //         staffList: this.staffList
            //     })
            // })
            // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => {
            //     let resData = res.data
            //     this.hasScanSnList = []
            //     this.$u.toast('提交成功')
            // }).catch((e) => {
            // })
        },
    }
};
</script>
<style lang="scss" scoped>
    .packing-registration-bg {
        background-color: #F6F9FF;
        background-image: url('~@/static/custom/packing/backBg.png');
        padding: 0 20rpx;
        background-attachment: fixed;
.packing-registration-bg {
    background-color: #F6F9FF;
    background-image: url('~@/static/custom/packing/backBg.png');
    padding: 0 20rpx;
    background-attachment: fixed;
    background-size: 100% auto;
    background-repeat: no-repeat;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    z-index: -1;
}
.packing-registration-param {
    padding: 40rpx 30rpx 10rpx 30rpx;
    .packing-registration-param-title {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-bottom: 30rpx;
        .title-label {
            margin-left: 14rpx;
            font-size: 34rpx;
            font-weight: bold;
            color: #283E65;
        }
    }
    .packing-registration-param-view {
        height: 615rpx;
        background-color: #fff;
        border-radius: 10rpx;
        padding: 0rpx 23rpx;
        margin-bottom: 30rpx;
        .packing-registration-param-item {
            height: 90rpx;
            border: 1px solid #ADC8E4;
            line-height: 90rpx;
            display: flex;
            justify-content: space-between;
            border: none;
            .packing-registration-param-item-left {
                .item-one {
                    font-size: 30rpx;
                    color: #666666;
                }
            }
            .packing-registration-param-item-right {
                display: flex;
                justify-content: space-between;
                .item-one {
                    font-size: 30rpx;
                    color: #333333;
                    margin-right: 6rpx;
                }
                .item-two {
                    font-size: 30rpx;
                    color: #A6B4CC;
                    margin-right: 6rpx;
                }
                .item-three {
                    font-size: 30rpx;
                    color: #214DED;
                    margin-right: 6rpx;
                }
            }
        }
        .param-extra {
            border-bottom: 1px solid #EDEDED;
        }
    }
}
.wrap .packing-registration-scroll-list {
    height: calc(100vh - var(--window-top) - var(--window-bottom) - 930rpx);
    width: 100%;
}
.packing-registration-scroll-list-group {
    ::v-deep .u-cell-item-box {
        background-color: rgba(250, 252, 255, 0.36) !important;
        padding: 0rpx 30rpx;
    }
    .content {
        background-image: url('~@/static/custom/packing/row_bg.png');
        background-size: 100% auto;
        background-repeat: no-repeat;
        position: fixed;
        top: 0;
        bottom: 0;
        width: 100%;
        z-index: -1;
    }
        height: 89rpx;
        width: 691rpx;
        font-size: 12px;
        background-color: #FFFFFF;
        box-sizing: border-box;
        border-radius: 10rpx;
        margin: 0rpx 0rpx 20rpx;
        padding: 0rpx 50rpx 0rpx 32rpx;
        box-shadow: none;
    .packing-registration-param {
        padding: 40rpx 30rpx 10rpx 30rpx;
        .packing-registration-param-title {
        .row-list {
            height: 100%;
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30rpx;
            padding-top: 0rpx !important;
            .title-label {
                margin-left: 14rpx;
                font-size: 34rpx;
                font-weight: bold;
                color: #283E65;
            }
        }
        .packing-registration-param-view {
            height: 615rpx;
            background-color: #fff;
            border-radius: 10rpx;
            padding: 0rpx 23rpx;
            margin-bottom: 30rpx;
            .packing-registration-param-item {
                height: 90rpx;
                border: 1px solid #ADC8E4;
                line-height: 90rpx;
            .row-list-left {
                display: flex;
                justify-content: space-between;
                border: none;
                color: #333333;
                .packing-registration-param-item-left {
                    .item-one {
                        font-size: 30rpx;
                        color: #666666;
                    }
                }
                .packing-registration-param-item-right {
                    display: flex;
                    justify-content: space-between;
                    .item-one {
                        font-size: 30rpx;
                        color: #333333;
                        margin-right: 6rpx;
                    }
                    .item-two {
                        font-size: 30rpx;
                        color: #A6B4CC;
                        margin-right: 6rpx;
                    }
                    .item-three {
                        font-size: 30rpx;
                        color: #214DED;
                        margin-right: 6rpx;
                    }
                .num-icon {
                    background-image: url('~@/static/custom/packing/num-bg.png');
                    background-size: 100% auto;
                    background-repeat: no-repeat;
                    height: 38rpx;
                    width: 38rpx;
                    text-align: center;
                    line-height: 38rpx;
                }
            }
            .param-extra {
                border-bottom: 1px solid #EDEDED;
            }
        }
    }
    .wrap .packing-registration-scroll-list {
        height: calc(100vh - var(--window-top) - var(--window-bottom) - 930rpx);
        width: 100%;
    }
    .packing-registration-scroll-list-group {
        ::v-deep .u-cell-item-box {
            background-color: rgba(250, 252, 255, 0.36) !important;
            padding: 0rpx 30rpx;
        }
        .content {
            background-image: url('~@/static/custom/packing/row_bg.png');
            background-size: 100% auto;
            background-repeat: no-repeat;
            height: 89rpx;
            width: 691rpx;
            font-size: 12px;
            background-color: #FFFFFF;
            box-sizing: border-box;
            border-radius: 10rpx;
            margin: 0rpx 0rpx 20rpx;
            padding: 0rpx 50rpx 0rpx 32rpx;
            box-shadow: none;
            .row-list {
                height: 100%;
            .row-list-right {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding-top: 0rpx !important;
                color: #428BF7;
                .row-list-left {
                    display: flex;
                    color: #333333;
                    .num-icon {
                        background-image: url('~@/static/custom/packing/num-bg.png');
                        background-size: 100% auto;
                        background-repeat: no-repeat;
                        height: 38rpx;
                        width: 38rpx;
                        text-align: center;
                        line-height: 38rpx;
                    }
                }
                .row-list-right {
                    display: flex;
                    color: #428BF7;
                    .del-icon {
                        background-image: url('~@/static/custom/packing/icon_dele.png');
                        background-size: 100% auto;
                        background-repeat: no-repeat;
                        height: 30rpx;
                        width: 28rpx;
                    }
                .del-icon {
                    background-image: url('~@/static/custom/packing/icon_dele.png');
                    background-size: 100% auto;
                    background-repeat: no-repeat;
                    height: 30rpx;
                    width: 28rpx;
                }
            }
        }
    }
}
    .registration-form-footer {
        display: flex;
        margin-top: 10rpx;
        margin-bottom: 10rpx;
        margin-left: 20rpx;
        margin-right: 20rpx;
        padding-bottom: 14rpx;
.registration-form-footer {
    display: flex;
    margin-top: 10rpx;
    margin-bottom: 10rpx;
    margin-left: 20rpx;
    margin-right: 20rpx;
    padding-bottom: 14rpx;
        .btn {
            flex: 1;
            margin: 10rpx;
            background: #214DED;
            box-shadow: 0rpx 6rpx 8rpx 0rpx rgba(4, 49, 212, 0.3);
            font-weight: bold;
            color: #FEFEFE;
            font-family: PingFang SC;
        }
    .btn {
        flex: 1;
        margin: 10rpx;
        background: #214DED;
        box-shadow: 0rpx 6rpx 8rpx 0rpx rgba(4, 49, 212, 0.3);
        font-weight: bold;
        color: #FEFEFE;
        font-family: PingFang SC;
    }
}
</style>
pages/wareHouse/nuclearScale/index.scss
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
.page {
  box-sizing: border-box;
}
.packing-registration-bg {
  background-color: #f6f9ff;
  background-image: url("~@/static/custom/packing/backBg.png");
  padding: 0 20rpx;
  background-attachment: fixed;
  background-size: 100% auto;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
}
.uForm {
  background: #fff;
  margin: 40rpx 30rpx;
  padding: 20rpx 30rpx;
  border-radius: 16rpx;
}
.u-checkbox-group {
  display: flex;
  flex-direction: column;
}
.u-form-item {
  padding: 0;
}
.packer-popup {
  ::v-deep .u-mode-center-box {
    border-radius: 30rpx;
  }
  .popup-row {
    background-image: url("~@/static/custom/packing/row_bg.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    height: 89rpx;
    width: 520rpx;
    display: flex;
    justify-content: space-between;
    padding-top: 12rpx;
    padding-left: 14rpx;
    padding-right: 20rpx;
  }
}
::v-deep .u-input__input {
  text-align: right !important;
}
.bottom-button {
  position: fixed;
  bottom: 40rpx;
  left: 50%;
  width: calc(100% - 80rpx);
  transform: translateX(-50%);
}
pages/wareHouse/nuclearScale/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,124 @@
<template>
  <!-- æ ¸ç£…录入 -->
  <div class="page">
    <view class="packing-registration-bg" />
    <u-navbar title="核磅录入" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
      back-icon-color="#000" />
    <u-form :model="form" ref="uForm" :label-width="200" :rules="rules" :error-type="['toast']" class="uForm">
      <u-form-item label="核磅单号" :border-bottom="false" prop="value1">
        <u-input v-model="form.value1" type="select" placeholder="请选择核磅单号" @click="openList" />
      </u-form-item>
      <u-form-item label="产品类型" :border-bottom="false" prop="value2">
        <u-input v-model="form.value2" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="车牌号" :border-bottom="false" prop="value3">
        <u-input v-model="form.value3" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="发货通知单" :border-bottom="false" prop="value4">
        <u-input v-model="form.value4" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="客户名称" :border-bottom="false" prop="value5">
        <u-input v-model="form.value5" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="司磅员" :border-bottom="false" prop="value6">
        <u-input v-model="form.value6" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="叉车司机" :border-bottom="false" prop="value7">
        <u-input v-model="form.value7" placeholder="" disabled />
      </u-form-item>
      <u-form-item label="核磅记录" :border-bottom="false" prop="value8">
        <u-input v-model="form.value8" type="select" placeholder="" @click="open" />
      </u-form-item>
      <u-form-item label="扫码记录(0条):" :border-bottom="false" prop="value4" :label-width="260">
        <!-- <u-input v-model="form.value4" placeholder="" disabled /> -->
      </u-form-item>
    </u-form>
    <u-button type="primary" class="bottom-button">提交</u-button>
    <scan></scan>
  </div>
</template>
<script>
import scan from "@/components/scan/scan.vue";
import content_bg from '@/static/custom/packing/backBg.png'
export default {
  components: { scan },
  data() {
    return {
      background: {
        backgroundImage: `url(${content_bg})`,
        backgroundAttachment: 'fixed',
        backgroundSize: '100% auto',
        backgroundRepeat: 'no-repeat',
      },
      form: {
        value0: '',
        value1: '',
        value2: '',
        value3: '',
        value4: '',
        value5: '',
        value6: '',
        value7: '',
        value8: ''
      },
      rules: {
        value1: [
          {
            required: true,
            message: '请选择核磅单号',
            trigger: ['change', 'blur'],
          },
        ],
      },
    }
  },
  onReady() {
    this.$refs.uForm.setRules(this.rules);
  },
  onShow() {
    let that = this
    uni.$off('scan') // æ¯æ¬¡è¿›æ¥å…ˆ ç§»é™¤å…¨å±€è‡ªå®šä¹‰äº‹ä»¶ç›‘听器
    uni.$on('scan', function (data) {
      console.log('onscan');
      //扫码成功后的回调,你可以写自己的逻辑代码在这里
      console.log('页面扫码结果:', data.code);
      if (data.code) {
        let codeInfo = JSON.parse(data.code)
        if (codeInfo.WorkNo) {
          // æ‰«ææŠ¥å·¥å•二维码
          that.saveForm(codeInfo);
        }
      }
    })
  },
  methods: {
    // å¼¹æ¡†ä¿å­˜
    confirm() {
      console.log('保存', this.form.value1);
      // è¯·æ±‚接口,根据工单号查询其他信息并赋值
    },
    // é€‰æ‹©è®¢å•号
    openList() {
      uni.navigateTo({
        url: '/pages/wareHouse/nuclearScale/nuclearScaleList'
      })
    },
    // å­˜è®¢å•号
    setNo(val) {
      this.form.value3 = val
    },
    // å›žæ˜¾æ‰«ç çš„信息-报工单
    saveForm(val) {
      let { WorkNo, ProcessName, ORDER_NO } = val
      this.form.value1 = WorkNo
      this.form.value2 = ProcessName
      this.form.value3 = ORDER_NO
    }
  }
}
</script>
<style lang="scss">
@import 'index.scss';
</style>
pages/wareHouse/nuclearScale/nuclearScaleList.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,298 @@
<template>
  <view class="page">
    <view class="finishProductIn-locno-bg" />
    <u-navbar title="核磅单号" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
      back-icon-color="#000" />
    <view class="finishProductIn-locno-search">
      <u-search v-model="keywords" shape="square" bg-color="rgba(250,252,255,0.36)" :show-action="false"
        placeholder="请输入核磅单号" @clear="search" @custom="search" @search="search">
      </u-search>
    </view>
    <view class="wrap">
      <scroll-view class="finishProductIn-locno-scroll-list" scroll-y="true" @scrolltolower="loadMore">
        <u-cell-group class="finishProductIn-locno-scroll-list-group" :border="false">
          <view class="content" v-for="(item, index) in list" :key="item.locNo" :index="index"
            @click="selectNo(item.index)">
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-1">
                </view>
                <view class="_label-name">订单号:</view>
              </view>
              <view class="_content">
                {{ item.value0 }}
              </view>
            </view>
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-2">
                </view>
                <view class="_label-name">零件号:</view>
              </view>
              <view class="_content">
                {{ item.value1 }}
              </view>
            </view>
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-3">
                </view>
                <view class="_label-name">零件描述:</view>
              </view>
              <view class="_content">
                {{ item.value2 }}
              </view>
            </view>
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-1">
                </view>
                <view class="_label-name">批量大小:</view>
              </view>
              <view class="_content">
                {{ item.value3 }}
              </view>
            </view>
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-2">
                </view>
                <view class="_label-name">开始日期:</view>
              </view>
              <view class="_content">
                {{ item.value4 }}
              </view>
            </view>
            <view class="row-list">
              <view class="_label">
                <view class="_label-icon-3">
                </view>
                <view class="_label-name">结束日期:</view>
              </view>
              <view class="_content">
                {{ item.value5 }}
              </view>
            </view>
          </view>
        </u-cell-group>
        <view class="loadmore" @click="loadMore">
          <u-loadmore :status="loadStatus"></u-loadmore>
        </view>
      </scroll-view>
    </view>
  </view>
</template>
<script>
import content_bg from '@/static/custom/finishProductIn/locNoBg.png'
export default {
  data() {
    return {
      background: {
        backgroundImage: `url(${content_bg})`,
        backgroundAttachment: 'fixed',
        backgroundSize: '100% auto',
        backgroundRepeat: 'no-repeat',
      },
      keywords: '',
      alllist: [],
      originList: [],
      query: {
        current: 1,
        size: 10
      },
      list: [
        {
          index: 1,
          value0: '123456789',
          value1: '123456789',
          value2: '123456789',
          value3: '123456789',
          value4: '123456789',
          value5: '123456789'
        }
      ],
      count: 0,
      loadStatus: 'loading'
    };
  },
  onLoad() {
    this.$u.api.finishProductIn.fetchList().then(res => {
      this.alllist = res.data
      this.originList = res.data
      this.loadList()
    })
  },
  methods: {
    loadMore() {
      if (this.loadStatus == "nomore" || this.loadStatus == "loading") {
        return
      }
      this.loadStatus = "loading";
      setTimeout(() => {
        this.query.current += 1;
        this.loadList();
      }, 100);
    },
    loadList() {
      const data = this.originList.slice((this.query.current - 1) * this.query.size, this.query.current * this.query.size)
      this.list = this.list.concat(data);
      this.loadStatus = "loadmore";
      if (!data || data.length < this.query.size) {
        this.loadStatus = "nomore";
      }
    },
    search(value) {
      this.list = [];
      this.query.current = 1;
      if (value) {
        this.originList = this.alllist.filter(item => item.locNo.includes(value))
      } else {
        this.originList = this.alllist
      }
      this.loadList()
    },
    selectNo(no) {
      this.refreshLastPage(no)
    },
    //刷新上一个页面
    refreshLastPage(no) {
      // å‘ŠçŸ¥ A.vue æ›´æ–°æ•°æ®
      // èŽ·å–é¡µé¢æ ˆ
      let pages = getCurrentPages()
      // èŽ·å–ä¸Šä¸€é¡µæ ˆ
      let prevPage = pages[pages.length - 2]
      // è§¦å‘上一页 upData å‡½æ•°(并携带参数)
      prevPage.$vm.setNo(no)
      // è¿”回上一页
      uni.navigateBack({
        delta: 1
      })
    },
  }
};
</script>
<style lang="scss">
.finishProductIn-locno-bg {
  background-color: #F6F9FF;
  background-image: url('~@/static/custom/finishProductIn/locNoBg.png');
  // background: linear-gradient(180deg,rgba(206,227,254,1),rgba(206,227,254,1) 20%,rgba(206,227,254,0.5) 40%,rgba(206,227,254,0.25) 60%,rgba(206,227,254,0.08) 80%,rgba(206,227,254,0));
  padding: 0 20rpx;
  background-attachment: fixed;
  background-size: 100% auto;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
}
.finishProductIn-locno-search {
  padding: 40rpx 30rpx 20rpx 30rpx;
}
.wrap .finishProductIn-locno-scroll-list {
  height: calc(100vh - var(--window-top) - var(--window-bottom) - 242rpx);
  width: 100%;
}
.finishProductIn-locno-scroll-list-group {
  ::v-deep .u-cell-item-box {
    background-color: rgba(250, 252, 255, 0.36) !important;
    padding: 0rpx 30rpx;
  }
  .content {
    font-size: 12px;
    background-color: #FFFFFF;
    box-sizing: border-box;
    border-radius: 10rpx;
    margin: 0rpx 0rpx 16rpx;
    padding: 20rpx;
    box-shadow: none;
    .content-header {
      width: 40rpx;
      height: 90rpx;
      display: flex;
      align-items: center;
      .content-header-icon {
        background-image: url('~@/static/custom/moveWareHouse/header_icon.png');
        background-size: 100% auto;
        background-repeat: no-repeat;
        height: 28rpx;
        width: 28rpx;
      }
      .content-header-title {
        margin-left: 11rpx;
        font-size: 26rpx;
        font-weight: bold;
        color: #333333;
      }
    }
    .row-list {
      height: 60rpx;
      display: flex;
      flex-direction: row;
      padding: 0px;
      align-items: center;
    }
    .row-list ._label {
      display: flex;
      flex: 0.8;
      color: #909399;
      align-items: center;
      ._label-icon-1 {
        background-image: url('~@/static/custom/moveWareHouse/label-icon-1.png');
        background-size: 100% auto;
        background-repeat: no-repeat;
        height: 26rpx;
        width: 26rpx;
      }
      ._label-icon-2 {
        background-image: url('~@/static/custom/moveWareHouse/label-icon-2.png');
        background-size: 100% auto;
        background-repeat: no-repeat;
        height: 26rpx;
        width: 26rpx;
      }
      ._label-icon-3 {
        background-image: url('~@/static/custom/moveWareHouse/label-icon-3.png');
        background-size: 100% auto;
        background-repeat: no-repeat;
        height: 26rpx;
        width: 26rpx;
      }
      ._label-name {
        margin-left: 11rpx;
        font-size: 26rpx;
        font-weight: 500;
        color: #666666;
      }
    }
    .row-list ._content {
      flex: 1.5;
      text-align: right;
      color: #909399;
      font-size: 24rpx;
    }
    .row-list .s1 {
      color: #D35651;
    }
  }
}
</style>