zrg
2026-01-21 e8d4cc42b3ce74a818705aab13c2131d81a5ed6b
pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue
@@ -2,9 +2,7 @@
    <view>
        <view class="tabs" id="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>
        <!-- 基本信息 -->
        <template v-if="tabs == 0">
@@ -48,22 +46,31 @@
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">源单类型:</view>
                    <zxz-uni-data-select class="right" :localdata="[
                        {key: '手工录入', value: '-1'},
                        {key: '模具故障登记单', value: '3815'}
                        ]" dataKey="key" dataValue="value" v-model="hform.HMainSourceBillType">
               <view class="title">源单类型</view>
               <view class="right" v-show="showHMainSourceBillType">
                  <picker :range="arrayHMainSourceBillType" @change="HMainSourceBillTypeChange">
                    </zxz-uni-data-select>
                    <!-- <input disabled v-model="hform.HDeptName" placeholder="请选择部门" /> -->
                     <input disabled name="HMainSourceBillType" v-model="HMainSourceBillType"
                        placeholder="请选择源单类型" />
                     <view class="picker-overlay"></view>
                  </picker>
               </view>
               <view class="righton" v-show="!showHMainSourceBillType">
                  <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType"
                     placeholder="请选择源单类型" />
               </view>
                </view>
                <view class="form-item">
                    <view class="title">源单号:</view>
                    <view class="right">
                        <input v-model="hform.HMainSourceBillNo" />
               <view class="title required">故障登记单</view>
               <view class="right" v-show="hform.HMainSourceBillType != 1">
                  <input type="text" name="HBarCode" v-model="hform.HMainSourceBillNo" />
                    </view>
                    <view class="icon-wrapper">
                        <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
               <view class="icon-wrapper" v-show="hform.HMainSourceBillType != 1"
                  :disabled="hform.HMainSourceBillType == -1">
                  <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
               </view>
               <view class="righton" v-show="hform.HMainSourceBillType == 1">
                  <input type="text" disabled name="HBarCode" v-model="hform.HMainSourceBillNo" />
                    </view>
                </view>
                <view class="form-item">
@@ -84,40 +91,38 @@
                        dataValue="HItemID" v-model="hform.HDeptID">
                    </zxz-uni-data-select>
                    <!-- <input disabled v-model="hform.HDeptName" placeholder="请选择部门" /> -->
                </view>
                <view class="form-item">
                    <view class="title required">验收人:</view>
                    <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
                        dataValue="HItemID" v-model="hform.HEmpID">
                    </zxz-uni-data-select>
                    <!-- <input disabled v-model="hform.HDeptName" placeholder="请选择部门" /> -->
                </view>
                <view class="form-item">
                    <view class="title required">验收项目:</view>
                    <zxz-uni-data-select required class="right" :localdata="HRepairCheckList" dataKey="维修验收项目"
                        dataValue="hitemid" v-model="hform.HRepairCheckMainID">
                    </zxz-uni-data-select>
                    <!-- <input disabled v-model="hform.HDeptName" placeholder="请选择部门" /> -->
                </view>
                <view class="form-item">
                    <view class="title required">负责人:</view>
                    <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
                        dataValue="HItemID" v-model="hform.HManagerID">
                    </zxz-uni-data-select>
                    <!-- <input disabled v-model="hform.HDeptName" placeholder="请选择部门" /> -->
                </view>
                <!-- 扫码带出维修记录 -->
                <view class="form-item">
                    <view class="title required">维修记录:</view>
                    <view class="right">
                        <input type="text" value="" />
               <view class="right" v-show="hform.HMainSourceBillType != 1">
                  <input type="text" v-model="hform.HMouldRepairWorkName"
                     :disabled="hform.HMainSourceBillType == -1" placeholder="请选择维修记录" />
                    </view>
                    <view class="icon-wrapper">
                        <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
               <view class="icon-wrapper" v-show="hform.HMainSourceBillType != 1"
                  :disabled="hform.HMainSourceBillType == -1">
                  <uni-icons type="search" size="20" @click="showRepairRecordList"></uni-icons>
               </view>
               <view class="righton" v-show="hform.HMainSourceBillType == 1">
                  <input type="text" disabled v-model="hform.HMouldRepairWorkName" />
                    </view>
                </view>
                <view class="form-item">
@@ -204,7 +209,13 @@
            <button class="btn-a" size="mini" @tap="addNew">新增</button>
            <button class="btn-c" size="mini" @tap="goBack">退出</button>
        </view>
        <xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload>
      <!-- 弹出模具故障登记单的选择列表 -->
      <BillListPopupMouldConkBookBillVue ref="billList" :HBillType="hform.HBillType"
         :HSourceBillType="hform.HMainSourceBillType" :HStockOrgID="hform.HStockOrgID">
      </BillListPopupMouldConkBookBillVue>
      <!-- 弹出模具维修记录单的选择列表 -->
      <RepairRecordPopup ref="repairRecordList" :HBillType="hform.HBillType" :HStockOrgID="hform.HStockOrgID">
      </RepairRecordPopup>
    </view>
</template>
@@ -219,25 +230,37 @@
    import {
        getUserInfo
    } from "../../../utils/auth";
   import BillListPopupMouldConkBookBillVue from '../../../components/BillListPopup/BillListPopupMouldConkBookBill.vue';
   import RepairRecordPopup from '../../../components/BillListPopup/BillListPopuMouldRepairRecordPopup.vue';
    export default {
      components: {
         BillListPopupMouldConkBookBillVue,
         RepairRecordPopup
      },
        name: 'Sc_MouldRepairCheckBill',
        data() {
            return {
                tabs: 0,
                HMainSourceBillType: "",
                btnTop: 0,
                tabsBottom: 0,
                HModName: "Sc_MouldRepairCheckBill",
                HBillType: '3817',
                operationType: 1,
                uploadOptions: {},
                enableEdit: true,
            // 控制源单类型是否可编辑
            showHMainSourceBillType: true,
            HMainSourceBillType: '模具故障登记单',
            arrayHMainSourceBillType: ['模具故障登记单'],
            arrayHMainSourceBillTypeID: ['3815'],
                HDeptList: [],
                HRepairCheckList: [],
                HEmpList: [],
                hform: {
               "HBillType": 3817,
                    "HBarCode": "",
                    "HBillNo": "",
                    "HInterID": 0,
@@ -247,7 +270,7 @@
                    "HMouldSpec": "",
                    "HMouldModel": "",
                    "HMouldID": 0,
                    "HMainSourceBillType": "-1",
               "HMainSourceBillType": "3815",
                    "HMainSourceInterID": 0,
                    "HMainSourceEntryID": 0,
                    "HCheckResult": "OK",
@@ -264,6 +287,7 @@
                    "HExplanation": "",
                    "HRemark": "",
                    "HOrgID": uni.getStorageSync("OrganizationID"),
               "HStockOrgID": uni.getStorageSync("OrganizationID"),
                    "HMaker": getUserInfo()["Czymc"],
                    "HChecker": "",
                    "HCloseMan": "",
@@ -343,6 +367,39 @@
            },
            goBack() {
                uni.navigateBack()
         },
         showBillList() {
            this.$refs.billList.showPopup()
         },
         showRepairRecordList() {
            if (this.hform.HMouldID === 0) {
               CommonUtils.showTips({
                  title: '提示',
                  message: '请先选择模具'
               });
               return;
            }
            this.$refs.repairRecordList.showPopup(this.hform.HMouldID);
         },
         //选择源单类型
         HMainSourceBillTypeChange(e) {
            if (e.detail.value == -1 || e.detail.value == NaN) {
               this.HMainSourceBillType = '手工录入'
               this.hform.HMainSourceBillType = -1
               return
            }
            console.log(e.detail.value)
            console.log(e)
            this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value]
            this.hform.HMainSourceBillType = this.arrayHMainSourceBillTypeID[e.detail.value]
            const pages = getCurrentPages()
            // 获取页面栈中的最后一个元素,也就是当前显示的页面
            const currentPage = pages[pages.length - 1]
            // 选择源单类型后 缓存当前页面选择
            uni.setStorageSync(`${currentPage.route.split("/").pop()}_HSourceBillTypeCache`, {
               HSourceBillTypeName: this.HMainSourceBillType,
               HSourceBillType: this.hform.HMainSourceBillType
            })
            },
            checkBoxChangeHandler(index, e) {
                let cr = e.detail.value
@@ -615,6 +672,32 @@
            this.getHDeptList()
            this.getEmpList()
            this.getCheckProjList()
         // 监听故障登记单选择完成事件
         uni.$on('BillSelectComplete', (e) => {
            console.log("接收到的消息: ", e)
            this.hform.HMainSourceInterID = e.HInterID
            this.hform.HMainSourceBillNo = e.HBillNo
            this.hform.HMainSourceEntryID = e.HEntryID
            this.hform.HMouldID = e.HMouldID
            this.hform.HMouldName = e.HMouldName
            this.hform.HMouldSpec = e.HMouldSpec
            this.hform.HMouldModel = e.HMouldModel
            this.$refs.billList.exit()
         })
         // 监听维修记录选择完成事件
         uni.$on('RepairRecordSelectComplete', (e) => {
            console.log("接收到维修记录选择: ", e);
            if (e.HInterID) {
               this.hform.HMouldRepairWorkName = e.HBillNo;
               this.hform.HMouldRepairWorkID = e.HInterID;
               // 可以根据需要设置其他字段
            }
            this.$refs.repairRecordList.exit();
         });
      },
      onUnload() {
         uni.$off('BillSelectComplete');
         uni.$off('RepairRecordSelectComplete');
        },
        onReady() {
            const query = uni.createSelectorQuery().in(this)