chenhaozhe
2026-04-01 0c29db374e1e88d23159dcb689f7e5e5082bd115
生产入库单 选择源单类型 只有手工录入 问题修正
9个文件已修改
202 ■■■■ 已修改文件
locale/zh-Hans.json 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
manifest.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/ZLGL/AanDengHujiao/OA_ErrMsgBackCheckBill/OA_ErrMsgBackCheckBill.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/ZLGL/AanDengHujiao/OA_ErrMsgBackHandleBill/OA_ErrMsgBackHandleBill.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBillList.vue 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/index/login.vue 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/shengchanrukushengdan/Kf_ProductInBill.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/xiaoshoutuihuo/ICStockBillMain.vue 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
locale/zh-Hans.json
@@ -33,7 +33,6 @@
        "HSourceBillType0": "收料通知单@1103",
        "HSourceBillType1": "采购订单@1101",
        "HSourceBillType2": "手工录入@-1"
    },
    "Gy": {
        "HBarCode": "条码",
@@ -64,6 +63,8 @@
        "HSecManagerName_Placeholder": "请选择验收员",
        "HDeptName": "部门",
        "HDeptName_Placeholder": "请选择部门",
        "HCusName": "客户",
        "HCusName_Placeholder": "请选择客户",
        "HSupName": "供应商",
        "HSupName_Placeholder": "请选择供应商",
        "HStockOrgName": "组织",
@@ -87,6 +88,65 @@
        "EquipNumber_Search": "设备编码",
        "EquipName_Search": "设备名称",
        "HDept_Search": "部门"
    },
    "Kf_ProductInBill_PDA": {
        "BarCode": "条码",
        "Qty": "数量",
        "BillNo": "单据号",
        "BillID": "单据ID",
        "Keeper": "保管",
        "SecManager": "验收",
        "Dept": "部门",
        "StockOrg": "组织",
        "Material": "物料",
        "MaterModel": "规格",
        "BatchNo": "批次",
        "Unit": "单位",
        "Capacity": "容量",
        "btnSubmit": "提交",
        "btnAdd": "新增",
        "selectSource": "选择源单",
        "tableInfo": "表头信息",
        "materInfo": "物料信息",
        "barInfo": "条码信息",
        "removeShelvesInfo": "下架信息",
        "btnExit": "退出",
        "title": "生产入库单",
        "select option": [
            "3710@生产任务单",
            "3711@生产汇报单",
            "3714@工序汇报单"
        ],
        "placeholder_BarCode": "请扫描(或输入)条码",
        "placeholder_Qty": "请输入数量",
        "placeholder_Warehouse": "请输入(或扫描)仓库",
        "placeholder_StockPlace": "请输入(或扫描)仓位",
        "placeholder_SourceBillNo": "请输入源单单号",
        "table_SourceBillNo": "源单单号",
        "table_SourceBillQty": "源单数量",
        "table_BarQty": "数量",
        "table_BarNum": "条码个数",
        "table_MaterModel": "规格型号",
        "table_Aux": "辅助属性",
        "Warehouse": "仓库",
        "StockPlace": "仓位",
        "SourceBillType": "源单类型",
        "SourceBillNo": "源单单号",
        "Date": "日期",
        "Maker": "制单人",
        "bt_HMaterNumber": "物料代码",
        "bt_HMaterName": "物料名称",
        "bt_HModel": "规格型号",
        "bt_ForFilteringSchemes": "是否启用",
        "btnReSearch": "重置",
        "set_AddNew": "新增",
        "get_use": "启用",
        "get_createBarCode": "生成条码",
        "set_DeleteBill": "删除",
        "set_HideColumn": "列设置",
        "get_Refresh": "刷新",
        "btn_MaterPackQtyExcel": "Excel导入",
        "get_Exit": "退出"
    }
}
main.js
@@ -30,21 +30,12 @@
// uniapp 全局请求拦截器
uni.addInterceptor('request', {
    invoke(args) {
        // 获取到当前调用的页面
        const pages = getCurrentPages()
        const currentPage = pages[pages.length - 1]
        // 拿到页面定义的 modName
        const modName = currentPage?.$vm.HModName || ''
        // 请求头带上 token
        let token = uni.getStorageSync('Token')
        if (token) {
            // 先初始化,防止 undefined 报错
            args.header = args.header || {}
            args.header.Authorization = `Bearer ${token}`
            args.header["X-HModName"] = modName
        }
    },
    success(res) {
manifest.json
@@ -2,8 +2,8 @@
    "name" : "智云LMES",
    "appid" : "__UNI__B002F49",
    "description" : "",
    "versionName" : "3.011",
    "versionCode" : 311,
    "versionName" : "3.012",
    "versionCode" : 312,
    "transformPx" : false,
    /* 5+App特有相关 */
    "app-plus" : {
pages/ZLGL/AanDengHujiao/OA_ErrMsgBackCheckBill/OA_ErrMsgBackCheckBill.vue
@@ -277,7 +277,7 @@
                    HCheckEmpID: getUserInfo().HEmpID,
                    HCopyMan: '', //抄送人
                    HCheckResult: 'completed',
                    HCheckResult: '完成',
                    HLevel: 'normal',
                    HBillTypeName: '',
                    HPlanBillNo: '',
pages/ZLGL/AanDengHujiao/OA_ErrMsgBackHandleBill/OA_ErrMsgBackHandleBill.vue
@@ -287,7 +287,7 @@
                    HBadReasonID: '0',
                    HBadReasonName: '',
                    HHandleResult: 'completed',
                    HHandleResult: '处理完成',
                    HLevel: 'normal',
                    HBillTypeName: '',
                    HPlanBillNo: '',
pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBillList.vue
@@ -173,7 +173,7 @@
                    </view>
                    <view class="op" v-if="operations == index">
                        <button class="op3" size="mini" plain @tap.stop="Xt_FistCheck(item)">下推首件单</button>
                        <button class="op3" size="mini" plain @tap.stop="doAudit(item)">{{ item.单据状态 == '已审核'? "反审核": "审核" }}</button>
                        <button class="op4" size="mini" plain @tap.stop="del(item)">删除</button>
                        <button class="op5" size="mini" plain @tap.stop="operations = -1">取消操作</button>
                    </view>
@@ -267,6 +267,41 @@
        },
        methods: {
            async doAudit(item) {
                let type = 0
                if(item["单据状态"] == "已审核"){
                    type = 1
                }else {
                    type = 0
                }
                try{
                    let res = await CommonUtils.doRequest2Async({
                        url: "/QC_TakeSampleCheckBill/AuditQC_TakeSampleCheckBillMain",
                        data: {
                            "HInterID": item.hmainid,
                            "IsAudit": type,
                            "CurUserName": getUserInfo()["Czymc"]
                        }
                    })
                    console.log('res: ',res);
                    let {data, count , Message} = res.data
                    if(count == 1) {
                        this.onSearchClickHandler()
                    }
                    CommonUtils.showTips({
                        title: '温馨提示',
                        message: Message
                    })
                }catch(err) {
                    CommonUtils.showTips({
                        title: '温馨提示',
                        message: err
                    })
                }
            },
            // 新增取样单
            onAddClickHandler() {
                uni.navigateTo({
pages/index/login.vue
@@ -170,14 +170,14 @@
        },
        methods: {
            async ApplyLanguagePack(lang, forceUpdate = false) {
                // // 读取语言包并加载
                // let {
                //     data,
                //     getRemoteFile
                // } = await getLanguagePackJson(lang)
                // if (getRemoteFile) {
                //     this.$i18n.setLocaleMessage(lang, data)
                // }
                // 读取语言包并加载
                let {
                    data,
                    getRemoteFile
                } = await getLanguagePackJson(lang)
                if (getRemoteFile) {
                    this.$i18n.setLocaleMessage(lang, data)
                }
                this.$i18n.locale = lang
            },
            onLanguageChangeHandler(e) {
pages/shengchanrukushengdan/Kf_ProductInBill.vue
@@ -773,6 +773,10 @@
                    } = res.data
                    if (count == 1) {
                        console.log('data: ', data);
                        if(data.length == 0) {
                            // 当数据库里面没有存储自定义的源单类型时,使用页面内定义的
                            return;
                        }
                        this.arrayHMainSourceBillType = []
                        this.arrayHMainSourceBillValue = []
                        Array.from(data).forEach(e => {
@@ -801,6 +805,8 @@
                        this.HMainSourceBillType = this.arrayHMainSourceBillType[0]
                        this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[0]
                    } else {
                        // 保底方案,使用页面内定义的源单类型
                        CommonUtils.showTips({
                            title: "温馨提示",
                            message: Message
pages/xiaoshoutuihuo/ICStockBillMain.vue
@@ -2,9 +2,9 @@
    <view>
        <view class="form">
            <view class="form-item">
                <view class="title">条码:</view>
                <view class="title">{{$t("Gy.HBarCode")}}:</view>
                <view class="right" style="width: 380rpx;">
                    <input :focus="BarCodeFocus" v-model="hform.HBarCode" placeholder="请扫描(或输入)条码"
                    <input :focus="BarCodeFocus" v-model="hform.HBarCode" :placeholder="$t('Gy.HBarCode_Placeholder')"
                        @confirm="getCode(hform.HBarCode)" />
                </view>
                <uni-icons type="scan"
@@ -12,81 +12,81 @@
                    size="20" @click="toScanCode"></uni-icons>
            </view>
            <view class="form-item">
                <view class="title">数量:</view>
                <view class="title">{{$t("Gy.HQty")}}:</view>
                <view class="right">
                    <input v-model="hform.HQty" placeholder="请输入数量" />
                    <input v-model="hform.HQty" :placeholder="$t('Gy.HQty_Placeholder')" />
                </view>
            </view>
            <view class="form-item">
                <view class="title">仓库:</view>
                <view class="title">{{$t("Gy.HWHName")}}:</view>
                <view class="right">
                    <uni-combox :candidates="arrayHWHName" placeholder="请输入(或扫描)仓库" v-model="hform.HWHName"
                    <uni-combox :candidates="arrayHWHName" :placeholder="$t('Gy.HWHName_Placeholder')" v-model="hform.HWHName"
                        @input="HWHNameChange"></uni-combox>
                </view>
            </view>
            <view class="form-item">
                <view class="title">仓位:</view>
                <view class="title">{{$t("Gy.HStockPlaceName")}}:</view>
                <view class="right" v-show="showHStockPlaceName">
                    <uni-combox :candidates="HStockPlaceNameListComputed" placeholder="请输入(或扫描)仓位"
                    <uni-combox :candidates="HStockPlaceNameListComputed" :placeholder="$t('Gy.HStockPlaceName_Placeholder')"
                        v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange" @confirm="HStockPlaceNameScan"></uni-combox>
                </view>
                <view class="righton" v-show="!showHStockPlaceName"><input v-model="hform.HStockPlaceName"
                        placeholder="不可操作" /></view>
                        :placeholder="$t('Gy.OperationDisabled')" /></view>
            </view>
            <view class="tabs">
                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">选择源单</view>
                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">表头信息</view>
                <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">物料信息</view>
                <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">条码信息</view>
                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">{{$t("Gy.SourceBillSelect")}}</view>
                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">{{$t("Gy.TableHeaderInfo")}}</view>
                <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">{{$t("Gy.MaterInfo")}}</view>
                <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">{{$t("Gy.BarCodeInfo")}}</view>
            </view>
            <view v-if="tabs == 0">
                <view class="form-item">
                    <view class="title">源单类型:</view>
                    <view class="title">{{$t("Gy.HMainSourceBillType")}}:</view>
                    <view class="right" v-show="showHMainSourceBillType">
                        <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
                            @change="HMainSourceBillTypeChange">
                            <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType"
                                placeholder="请选择源单类型" />
                                :placeholder="$t('Gy.HMainSourceBillType_Placeholder')" />
                            <view class="picker-overlay"></view>
                        </picker>
                    </view>
                    <view class="righton" v-show="!showHMainSourceBillType">
                        <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType"
                            placeholder="请选择源单类型" />
                            :placeholder="$t('Gy.HMainSourceBillType_Placeholder')" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">源单单号:</view>
                    <view class="title">{{$t("Gy.HMainSourceBillNo")}}:</view>
                    <view class="right" style="width: 380rpx;" v-show="showHSourceBillNo">
                        <input v-model="hform.HSourceBillNo" :focus="HSourceBillNoFocus"
                            @confirm="onHSourceBillNoConfirmHandler" placeholder="请扫描(或输入)源单单号" />
                            @confirm="onHSourceBillNoConfirmHandler" :placeholder="$t('Gy.HMainSourceBillNo_Placeholder')" />
                    </view>
                    <uni-icons v-show="showHSourceBillNo" type="scan"
                        style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
                        size="20" @click="toScanCodeA()"></uni-icons>
                    <view class="righton" v-show="!showHSourceBillNo">
                        <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" placeholder="请输入源单单号" />
                        <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" :placeholder="$t('Gy.HMainSourceBillNo_Placeholder')" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">日期:</view>
                    <view class="title">{{$t("Gy.HDate")}}:</view>
                    <view class="right">
                        <picker mode="date" v-model="hform.HDate" @change="HDateChange">
                            <input disabled v-model="hform.HDate" placeholder="请选择日期" />
                            <input disabled v-model="hform.HDate" :placeholder="$t('Gy.HDate_Placeholder')" />
                            <view class="picker-overlay"></view>
                        </picker>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">制单人:</view>
                    <view class="title">{{$t("Gy.HMaker")}}:</view>
                    <view class="righton">
                        <input name="HMaker" disabled v-model="hform.HMaker" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">单据号:</view>
                    <view class="title">{{$t("Gy.HBillNo")}}:</view>
                    <view class="righton">
                        <input name="HBillNo" disabled v-model="hform.HBillNo" />
                    </view>
@@ -96,7 +96,7 @@
                </view>
                <view class="form-item">
                    <view class="title">单据ID:</view>
                    <view class="title">{{$t("Gy.HInterID")}}:</view>
                    <view class="righton">
                        <input name="HInterID" disabled v-model="hform.HInterID" />
                    </view>
@@ -105,28 +105,28 @@
            <view v-if="tabs == 1">
                <view class="form-item">
                    <view class="title">保管:</view>
                    <view class="title">{{$t("Gy.HKeeperName")}}:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHEmpName" placeholder="请选择保管员" v-model="hform.HKeeperName"
                        <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Gy.HKeeperName_Placeholder')" v-model="hform.HKeeperName"
                            @input="HKeeperNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">验收:</view>
                    <view class="title">{{$t("Gy.HSecManagerName")}}:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHEmpName" placeholder="请选择验收员" v-model="hform.HSecManagerName"
                        <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Gy.HSecManagerName_Placeholder')" v-model="hform.HSecManagerName"
                            @input="HSecManagerNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">部门:</view>
                    <view class="title">{{$t("Gy.HDeptName")}}:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHDeptName" placeholder="请选择部门" v-model="hform.HDeptName"
                        <uni-combox :candidates="arrayHDeptName" :placeholder="$t('Gy.HDeptName_Placeholder')" v-model="hform.HDeptName"
                            @input="HDeptNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">客户:</view>
                    <view class="title">{{$t("Gy.HCusName")}}:</view>
                    <!-- <view class="right" v-show="showHSupName">
                        <uni-combox :candidates="arrayHSupName" placeholder="请选择客户" v-model="hform.HSupName"
                            @input="HSupNameChange"></uni-combox>
@@ -136,7 +136,7 @@
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">组织:</view>
                    <view class="title">{{$t("Gy.HStockOrgName")}}:</view>
                    <view class="righton">
                        <input name="HStockOrgName" disabled v-model="hform.HStockOrgName" />
                    </view>