wtt
2025-08-12 112bb1d3ca7e5c813adc9514f6b56b5e4886f49b
pages/caigouruku/form.vue
@@ -1,1475 +1,1567 @@
<template>
    <view>
        <view class="form">
            <view class="form-item">
                <view class="title">条码:</view>
                <view class="right" style="width: 380rpx;">
                    <input :focus="barCodeFocus" v-model="hform.HBarCode" placeholder="请扫描(或输入)条码"
                        @confirm="getCode(hform.HBarCode)" />
                </view>
                <uni-icons type="scan"
                    style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
                    size="20" @click="toScanCode"></uni-icons>
            </view>
            <view class="form-item">
                <view class="title">数量:</view>
                <view class="right">
                    <input v-model="hform.HQty" placeholder="请输入数量" />
                </view>
            </view>
            <view class="form-item">
                <view class="title">仓库:</view>
                <view class="right">
                    <uni-combox :candidates="arrayHWHName" placeholder="请输入(或扫描)仓库" v-model="hform.HWHName"
                        @input="HWHNameChange"></uni-combox>
                </view>
            </view>
            <view class="form-item">
                <view class="title">仓位:</view>
                <view class="right" v-show="showHStockPlaceName">
                    <uni-combox :candidates="arrayHStockPlaceName" placeholder="请输入(或扫描)仓位"
                        v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange"></uni-combox>
                </view>
                <view class="righton" v-show="!showHStockPlaceName"><input v-model="hform.HStockPlaceName"
                        placeholder="不可操作" /></view>
            </view>
   <view>
      <view class="form">
         <view class="form-item">
            <view class="title">条码:</view>
            <view class="right" style="width: 380rpx;">
               <input :focus="barCodeFocus" v-model="hform.HBarCode" placeholder="请扫描(或输入)条码"
                  @confirm="getCode(hform.HBarCode)" />
            </view>
            <uni-icons type="scan"
               style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
               size="20" @click="toScanCode"></uni-icons>
         </view>
         <view class="form-item">
            <view class="title">数量:</view>
            <view class="right">
               <input v-model="hform.HQty" placeholder="请输入数量" />
            </view>
         </view>
         <view class="form-item">
            <view class="title">仓库:</view>
            <view class="right">
               <uni-combox :candidates="arrayHWHName" placeholder="请输入(或扫描)仓库" v-model="hform.HWHName"
                  @input="HWHNameChange"></uni-combox>
            </view>
         </view>
         <view class="form-item">
            <view class="title">仓位:</view>
            <view class="right" v-show="showHStockPlaceName">
               <uni-combox :candidates="arrayHStockPlaceName" placeholder="请输入(或扫描)仓位"
                  v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange"></uni-combox>
            </view>
            <view class="righton" v-show="!showHStockPlaceName"><input v-model="hform.HStockPlaceName"
                  placeholder="不可操作" /></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>
         <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>
            <view v-if="tabs == 0">
                <view class="form-item">
                    <view class="title">源单类型:</view>
                    <view class="right" v-show="showHMainSourceBillType">
                        <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
                            @change="HMainSourceBillTypeChange">
                            <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType"
                                placeholder="请选择源单类型" />
                        </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" v-show="showHSourceBillNo">
                        <uni-combox ref="uniComboxSourceBill" :isFocus="HSourceBillNoFocus"
                            :confirm-call="onSourceBillBlurHandler" v-if="reHSourceBillNo"
                            :candidates="arrayHSourceBillNo" placeholder="请输入源单单号" v-model="hform.HSourceBillNo"
                            @input="HSourceBillNoChange"></uni-combox>
                    </view>
                    <view class="righton" v-show="!showHSourceBillNo">
                        <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" placeholder="请输入源单单号" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">日期:</view>
                    <view class="right">
                        <picker mode="date" v-model="hform.HDate" @change="HDateChange">
                            <input disabled v-model="hform.HDate" placeholder="请选择日期" />
                        </picker>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">制单人:</view>
                    <view class="righton">
                        <input name="HMaker" disabled v-model="hform.HMaker" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">单据号:</view>
                    <view class="righton">
                        <input name="HBillNo" disabled v-model="hform.HBillNo" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">单据ID:</view>
                    <view class="righton">
                        <input name="HInterID" disabled v-model="hform.HInterID" />
                    </view>
                </view>
            </view>
         <view v-if="tabs == 0">
            <view class="form-item">
               <view class="title">源单类型:</view>
               <view class="right" v-show="showHMainSourceBillType">
                  <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
                     @change="HMainSourceBillTypeChange">
                     <input name="HMainSourceBillType" disabled 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" v-show="showHSourceBillNo">
                  <uni-combox ref="uniComboxSourceBill" :isFocus="HSourceBillNoFocus"
                     :confirm-call="onSourceBillBlurHandler" v-if="reHSourceBillNo"
                     :candidates="arrayHSourceBillNo" placeholder="请输入源单单号" v-model="hform.HSourceBillNo"
                     @input="HSourceBillNoChange"></uni-combox>
               </view>
               <view class="righton" v-show="!showHSourceBillNo">
                  <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" placeholder="请输入源单单号" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">日期:</view>
               <view class="right">
                  <picker mode="date" v-model="hform.HDate" @change="HDateChange">
                     <input disabled v-model="hform.HDate" placeholder="请选择日期" />
                  </picker>
               </view>
            </view>
            <view class="form-item">
               <view class="title">制单人:</view>
               <view class="righton">
                  <input name="HMaker" disabled v-model="hform.HMaker" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">单据号:</view>
               <view class="righton">
                  <input name="HBillNo" disabled v-model="hform.HBillNo" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">单据ID:</view>
               <view class="righton">
                  <input name="HInterID" disabled v-model="hform.HInterID" />
               </view>
            </view>
         </view>
            <view v-if="tabs == 1">
                <view class="form-item">
                    <view class="title">保管:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHEmpName" placeholder="请选择保管员" v-model="hform.HKeeperName"
                            @input="HKeeperNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">验收:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHEmpName" placeholder="请选择验收员" v-model="hform.HSecManagerName"
                            @input="HSecManagerNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">部门:</view>
                    <view class="right">
                        <uni-combox :candidates="arrayHDeptName" placeholder="请选择部门" v-model="hform.HDeptName"
                            @input="HDeptNameChange"></uni-combox>
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">供应商:</view>
                    <view class="right" v-show="showHSupName">
                        <uni-combox :candidates="arrayHSupName" placeholder="请选择供应商" v-model="hform.HSupName"
                            @input="HSupNameChange"></uni-combox>
                    </view>
                    <view class="righton" v-show="!showHSupName">
                        <input name="HSupName" disabled v-model="hform.HSupName" placeholder="请选择供应商" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">组织:</view>
                    <view class="righton">
                        <input name="HStockOrgName" disabled v-model="hform.HStockOrgName" />
                    </view>
                </view>
            </view>
         <view v-if="tabs == 1">
            <view class="form-item">
               <view class="title">保管:</view>
               <view class="right">
                  <uni-combox :candidates="arrayHEmpName" placeholder="请选择保管员" v-model="hform.HKeeperName"
                     @input="HKeeperNameChange"></uni-combox>
               </view>
            </view>
            <view class="form-item">
               <view class="title">验收:</view>
               <view class="right">
                  <uni-combox :candidates="arrayHEmpName" placeholder="请选择验收员" v-model="hform.HSecManagerName"
                     @input="HSecManagerNameChange"></uni-combox>
               </view>
            </view>
            <view class="form-item">
               <view class="title">部门:</view>
               <view class="right">
                  <uni-combox :candidates="arrayHDeptName" placeholder="请选择部门" v-model="hform.HDeptName"
                     @input="HDeptNameChange"></uni-combox>
               </view>
            </view>
            <view class="form-item">
               <view class="title">供应商:</view>
               <view class="right" v-show="showHSupName">
                  <uni-combox :candidates="arrayHSupName" placeholder="请选择供应商" v-model="hform.HSupName"
                     @input="HSupNameChange"></uni-combox>
               </view>
               <view class="righton" v-show="!showHSupName">
                  <input name="HSupName" disabled v-model="hform.HSupName" placeholder="请选择供应商" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">组织:</view>
               <view class="righton">
                  <input name="HStockOrgName" disabled v-model="hform.HStockOrgName" />
               </view>
            </view>
         </view>
            <view v-if="tabs == 2">
                <view class="list" v-for="(item,index) in Materlist" :key="index">
                    <uni-card :title="item.物料名称" :extra="item.物料代码" style="margin: 10px;" @tap="delMater(item)">
                        <view class="card-detail">
                            <view class="detail">
                                <text>源单单号:</text>{{item.源单单号}}
                            </view>
                            <view class="detail">
                                <text>源单数量:</text>{{item.源单数量}}
                            </view>
                            <view class="detail">
                                <text>数量:</text>{{item.数量}}
                            </view>
                            <view class="detail">
                                <text>条码个数:</text>{{item.条码个数}}
                            </view>
                            <view class="detail" v-if="item.规格型号">
                                <text>规格型号:</text>{{item.规格型号}}
                            </view>
                            <view class="detail" v-if="item.辅助属性">
                                <text>辅助属性:</text>{{item.辅助属性}}
                            </view>
                        </view>
                    </uni-card>
                </view>
                <view class="over" v-if="Materlist.length == 0">暂无数据</view>
            </view>
         <view v-if="tabs == 2">
            <view class="list" v-for="(item,index) in Materlist" :key="index">
               <uni-card :title="item.物料名称" :extra="item.物料代码" style="margin: 10px;" @tap="delMater(item)">
                  <view class="card-detail">
                     <view class="detail">
                        <text>源单单号:</text>{{item.源单单号}}
                     </view>
                     <view class="detail">
                        <text>源单数量:</text>{{item.源单数量}}
                     </view>
                     <view class="detail">
                        <text>数量:</text>{{item.数量}}
                     </view>
                     <view class="detail">
                        <text>条码个数:</text>{{item.条码个数}}
                     </view>
                     <view class="detail" v-if="item.规格型号">
                        <text>规格型号:</text>{{item.规格型号}}
                     </view>
                     <view class="detail" v-if="item.辅助属性">
                        <text>辅助属性:</text>{{item.辅助属性}}
                     </view>
                  </view>
               </uni-card>
            </view>
            <view class="over" v-if="Materlist.length == 0">暂无数据</view>
         </view>
            <view v-if="tabs == 3">
                <view class="form-item">
                    <view class="title">条码:</view>
                    <view class="righton">
                        <input name="HBarCode_B" disabled v-model="hform.HBarCode_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">物料:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HMaterName_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">规格:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HMaterModel_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">批次:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HBatchNo_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">单位:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HUnitName_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">数量:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HQty_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">容量:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HTMQty_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">仓库:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HWHName_B" />
                    </view>
                </view>
                <view class="form-item">
                    <view class="title">仓位:</view>
                    <view class="righton">
                        <input disabled v-model="hform.HSPName_B" />
                    </view>
                </view>
            </view>
         <view v-if="tabs == 3">
            <view class="form-item">
               <view class="title">条码:</view>
               <view class="righton">
                  <input name="HBarCode_B" disabled v-model="hform.HBarCode_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">物料:</view>
               <view class="righton">
                  <input disabled v-model="hform.HMaterName_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">规格:</view>
               <view class="righton">
                  <input disabled v-model="hform.HMaterModel_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">批次:</view>
               <view class="righton">
                  <input disabled v-model="hform.HBatchNo_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">单位:</view>
               <view class="righton">
                  <input disabled v-model="hform.HUnitName_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">数量:</view>
               <view class="righton">
                  <input disabled v-model="hform.HQty_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">容量:</view>
               <view class="righton">
                  <input disabled v-model="hform.HTMQty_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">仓库:</view>
               <view class="righton">
                  <input disabled v-model="hform.HWHName_B" />
               </view>
            </view>
            <view class="form-item">
               <view class="title">仓位:</view>
               <view class="righton">
                  <input disabled v-model="hform.HSPName_B" />
               </view>
            </view>
         </view>
            <view class="bottom-btn">
                <button class="btn-a" size="mini" @tap="submit">提交</button>
                <view style="flex: 1;"></view>
                <button class="btn-a" size="mini" @tap="addNew">新增</button>
                <button class="btn-c" size="mini" @tap="goBack">退出</button>
            </view>
        </view>
    </view>
         <view class="bottom-btn">
            <button class="btn-a" size="mini" @tap="submit">提交</button>
            <view style="flex: 1;"></view>
            <button class="btn-a" size="mini" @tap="addNew">新增</button>
            <button class="btn-c" size="mini" @tap="goBack">退出</button>
         </view>
      </view>
   </view>
</template>
<script>
    import getDateTime from '@/utils/getdateTime.js';
    import {
        getUserInfo
    } from "@/utils/auth.js";
    import {
        CommonUtils
    } from '../../utils/common';
    export default {
        data() {
            return {
                HSourceBillNoFocus: false,
                barCodeFocus: false,
                userInfo: getUserInfo(),
                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
                HModName: 'Kf_POStockInBill_PDA',
                ModRightName: 'CE_POStockIn',
                OperationType: 1,
                HInterID_Temp: '',
   import getDateTime from '@/utils/getdateTime.js';
   import {
      getUserInfo
   } from "@/utils/auth.js";
   import {
      CommonUtils
   } from '../../utils/common';
   import {
      getUserStockRelation
   } from "@/utils/userRelationManager.js"
   export default {
      data() {
         return {
            HSourceBillNoFocus: false,
            barCodeFocus: false,
            userInfo: getUserInfo(),
            serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
            HModName: 'Kf_POStockInBill_PDA',
            ModRightName: 'CE_POStockIn',
            OperationType: 1,
            HInterID_Temp: '',
            HPageTitle: '采购入库单',
                showHStockPlaceName: true,
                showHMainSourceBillType: true,
                showHSourceBillNo: true,
                reHSourceBillNo: true,
                showHSupName: true,
            showHStockPlaceName: true,
            showHMainSourceBillType: true,
            showHSourceBillNo: true,
            reHSourceBillNo: true,
            showHSupName: true,
                tabs: 0,
                HMainSourceBillType: '收料通知单',
                arrayHMainSourceBillType: ['收料通知单', '采购订单', '手工录入'],
            tabs: 0,
            HMainSourceBillType: '收料通知单',
            arrayHMainSourceBillType: ['收料通知单', '采购订单', '手工录入'],
            arrayHMainSourceBillValue: ['1103', '1101', '-1'],
                linterid: '',
                HBillNo: '',
                btnType: 0, //0新增,1修改,2审核,3反审核
                showmore: false,
            linterid: '',
            HBillNo: '',
            btnType: 0, //0新增,1修改,2审核,3反审核
            showmore: false,
                arrayHWHName: [], //仓库
                HWHNameList: [],
                arrayHStockPlaceName: [], //仓位
                HStockPlaceNameList: [],
                arrayHSourceBillNo: [], //源单单号
                HSourceBillNoList: [],
            arrayHWHName: [], //仓库
            HWHNameList: [],
            arrayHStockPlaceName: [], //仓位
            HStockPlaceNameList: [],
            arrayHSourceBillNo: [], //源单单号
            HSourceBillNoList: [],
                arrayHEmpName: [], //操作员
                HEmpNameList: [],
                arrayHDeptName: [], //部门
                HDeptNameList: [],
                arrayHSupName: [], //供应商
                HSupNameList: [],
            arrayHEmpName: [], //操作员
            HEmpNameList: [],
            arrayHDeptName: [], //部门
            HDeptNameList: [],
            arrayHSupName: [], //供应商
            HSupNameList: [],
                Materlist: [],
                hform: {
                    HBillType: 1201,
                    HBillerID: uni.getStorageSync('HBillerID'),
                    HRedBlueFlag: false,
            Materlist: [],
            hform: {
               HBillType: 1201,
               HBillerID: uni.getStorageSync('HBillerID'),
               HRedBlueFlag: false,
                    HBarCode: '',
                    HQty: '',
                    HWHName: getUserInfo().HWHName,
                    HWHID: getUserInfo().HWhID,
                    HStockPlaceName: getUserInfo().HSPName,
                    HStockPlaceID: getUserInfo().HSPID,
               HBarCode: '',
               HQty: '',
               HWHName: getUserInfo().HWHName,
               HWHID: getUserInfo().HWhID,
               HStockPlaceName: getUserInfo().HSPName,
               HStockPlaceID: getUserInfo().HSPID,
                    HMainSourceBillType: 1103,
                    HSourceBillNo: '', //CGDD000200
                    HDate: getDateTime.dateTimeStr('y-m-d'),
                    HMaker: uni.getStorageSync('HUserName'),
                    HBillNo: '',
                    HInterID: '',
               HMainSourceBillType: 1103,
               HSourceBillNo: '', //CGDD000200
               HDate: getDateTime.dateTimeStr('y-m-d'),
               HMaker: uni.getStorageSync('HUserName'),
               HBillNo: '',
               HInterID: '',
                    HKeeperName: getUserInfo().HKeeper,
                    HKeeperID: getUserInfo().HKeeperID,
                    HSecManagerName: getUserInfo().HSecManager,
                    HSecManagerID: getUserInfo().HSecManagerID,
                    HDeptName: getUserInfo().HDept,
                    HDeptID: getUserInfo().HDeptID,
                    HSupName: '',
                    HSupID: '',
                    HStockOrgName: uni.getStorageSync('Organization'),
                    HStockOrgID: uni.getStorageSync('OrganizationID'),
               HKeeperName: getUserInfo().HKeeper,
               HKeeperID: getUserInfo().HKeeperID,
               HSecManagerName: getUserInfo().HSecManager,
               HSecManagerID: getUserInfo().HSecManagerID,
               HDeptName: getUserInfo().HDept,
               HDeptID: getUserInfo().HDeptID,
               HSupName: '',
               HSupID: '',
               HStockOrgName: uni.getStorageSync('Organization'),
               HStockOrgID: uni.getStorageSync('OrganizationID'),
                    HBarCode_B: '',
                    HMaterName_B: '',
                    HMaterModel_B: '',
                    HBatchNo_B: '',
                    HUnitName_B: '',
                    HQty_B: '',
                    HTMQty_B: '',
                    HWHName_B: '',
                    HSPName_B: '',
                }
            }
        },
        onLoad(e) {
            console.log(e, this.userInfo)
            this.OperationType = e.OperationType
            if (e.HInterID) {
                this.HInterID_Temp = e.HInterID
                // this.btnType = 1
                this.RoadBillMain(e.HInterID)
                this.barCodeFocus = true
            } else {
                this.getNewData()
                this.HSourceBillNoFocus = true
            }
            this.getHBaseList()
            this.getHSupList()
            this.getHEmpList()
            this.getHDeptList()
        },
        methods: {
            async refreshHSourceBillState() {
                this.HSourceBillNoFocus = false
                await this.$nextTick(() => {
                    this.HSourceBillNoFocus = true
                    this.hform.HBarCode = ""
                })
            },
            async refreshBarCodeState() {
                this.barCodeFocus = false
                await this.$nextTick(() => {
                    this.barCodeFocus = true
                    this.hform.HSourceBillNo = ""
                })
            },
            playSound(e) {
                const innerAudioContext = uni.createInnerAudioContext();
                if (e == 1) {
                    innerAudioContext.src = '/static/success.wav';
                } else {
                    innerAudioContext.src = '/static/jingbao.wav';
                }
                innerAudioContext.play(); // 播放音频
            },
            //扫码
            toScanCode() {
                var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
                mpaasScanModule.mpaasScan({
                    'hideAlbum': true,
                    'timeoutInterval': '10', //超时时间
                    'timeoutText': '未识别到二维码' //超时提醒
                }, (ret) => {
                    console.log(ret.resp_result)
                    if (this.hform.HBarCode == '*') {
                        this.hform.HBarCode = this.hform.HBarCode + ret.resp_result
                    } else {
                        this.hform.HBarCode = ret.resp_result
                    }
               HBarCode_B: '',
               HMaterName_B: '',
               HMaterModel_B: '',
               HBatchNo_B: '',
               HUnitName_B: '',
               HQty_B: '',
               HTMQty_B: '',
               HWHName_B: '',
               HSPName_B: '',
            }
         }
      },
      onLoad(e) {
         console.log(e, this.userInfo)
         this.OperationType = e.OperationType
         if (e.HInterID) {
            this.HInterID_Temp = e.HInterID
            // this.btnType = 1
            this.RoadBillMain(e.HInterID)
            this.barCodeFocus = true
         } else {
            this.getNewData()
            this.HSourceBillNoFocus = true
         }
                    this.getCode(this.hform.HBarCode)
                })
            },
         this.getHSupList()
         this.getHEmpList()
         this.getHDeptList()
         this.GetSourceBillType()
         this.getRelationStore()
      },
      methods: {
         async getRelationStore() {
            let {
               data,
               count
            } = await getUserStockRelation()
            if (count == 1) {
               this.arrayHWHName = []
               this.HWHNameList = []
               Array.from(data).forEach(elem => {
                  console.log(elem.HItemID);
                  this.arrayHWHName.push(elem.HName)
                  this.HWHNameList.push({
                     HItemID: elem.HItemID,
                     HName: elem.HName,
                     HNumber: elem.HNumber,
                     "仓库名称": elem.HName
                  })
               })
            } else {
               this.getHBaseList()
            }
         },
         async refreshHSourceBillState() {
            this.HSourceBillNoFocus = false
            await this.$nextTick(() => {
               this.HSourceBillNoFocus = true
               this.hform.HBarCode = ""
            })
         },
         async refreshBarCodeState() {
            this.barCodeFocus = false
            await this.$nextTick(() => {
               this.barCodeFocus = true
               this.hform.HSourceBillNo = ""
            })
         },
         playSound(e) {
            const innerAudioContext = uni.createInnerAudioContext();
            if (e == 1) {
               innerAudioContext.src = '/static/success.wav';
            } else {
               innerAudioContext.src = '/static/jingbao.wav';
            }
            innerAudioContext.play(); // 播放音频
         },
         //扫码
         toScanCode() {
            var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
            mpaasScanModule.mpaasScan({
               'hideAlbum': true,
               'timeoutInterval': '10', //超时时间
               'timeoutText': '未识别到二维码' //超时提醒
            }, (ret) => {
               console.log(ret.resp_result)
               if (this.hform.HBarCode == '*') {
                  this.hform.HBarCode = this.hform.HBarCode + ret.resp_result
               } else {
                  this.hform.HBarCode = ret.resp_result
               }
            //扫其他(仓库,仓位)
            // toScanData(e){
            //    uni.scanCode({
            //        onlyFromCamera: true,
            //        success: (res) => {
            //            console.log('条码内容:' + res.result);
            //          var code = res.result
            //          if(e == 1){
            //             uni.request({
            //                url: this.serverUrl + '/WEBSController/GetWarehouse_Json',
            //                data: {HBarCode:code,HStockOrgID:uni.getStorageSync('OrganizationID')},
            //                success: (res) => {
            //                   this.hform.HStockPlaceID = 0
            //                   this.hform.HStockPlaceName = ''
            //                   this.showHStockPlaceName = true
            //                   if(res.data.count == 1){
            //                      var data = res.data.data[0]
            //                      this.hform.HWHID = data.HItemID
            //                      this.hform.HWHName = data.HName
            //                      if (data.HSPFlag == 0) {
            //                          this.showHStockPlaceName = false
            //                      }
            //                   }else{
            //                      this.hform.HWHID = 0
            //                      this.hform.HWHName = ''
            //                      uni.showToast({
            //                         title:res.data.Message,
            //                         icon:'none'
            //                      })
            //                   }
            //                },
            //                fail: (res) => {
            //                   console.log(res);
            //                   uni.showToast({
            //                      title:'仓库数据请求失败',
            //                      icon:'none'
            //                   })
            //                },
            //             });
            //          }else if(e == 2){
            //             uni.request({
            //                url: this.serverUrl + '/WEBSController/GetStockPlace_Json',
            //                data: {HBarCode:code,HStockOrgID:uni.getStorageSync('OrganizationID'),HWhID: this.hform.HWHID},
            //                success: (res) => {
            //                   if(res.data.count == 1){
            //                      var data = res.data.data[0]
            //                      this.hform.HWHID = data.HWHID
            //                      this.hform.HWHName = data.HWhName
            //                      this.hform.HStockPlaceID = data.HItemID
            //                      this.hform.HStockPlaceName = data.HName
            //                   }else{
            //                      this.hform.HWHID = 0
            //                      this.hform.HWHName = ''
            //                      this.hform.HStockPlaceID = 0
            //                      this.hform.HStockPlaceName = ''
            //                      uni.showToast({
            //                         title:res.data.Message,
            //                         icon:'none'
            //                      })
            //                   }
            //                },
            //                fail: (res) => {
            //                   console.log(res);
            //                   uni.showToast({
            //                      title:'仓库数据请求失败',
            //                      icon:'none'
            //                   })
            //                },
            //             });
            //          }
            //        }
            //    });
            // },
            //日期
            HDateChange(e) {
                console.log(e.detail.value)
                this.hform.HDate = e.detail.value
            },
            onSourceBillBlurHandler() {
                if (this.hform.HMainSourceBillType == -1) {
                    this.playSound(1)
                    this.barCodeFocus = true
                    return
                }
                let inputVal = this.$refs.uniComboxSourceBill.inputVal
                if (inputVal == '') {
                    CommonUtils.playSound(0)
                    this.refreshHSourceBillState()
                    return uni.showToast({
                        icon: 'none',
                        Message: '源单单号不得为空...'
                    })
                }
                this.getHBarCodeData(inputVal)
               this.getCode(this.hform.HBarCode)
            })
         },
            },
            //基础仓库资料
            getHBaseList() {
                uni.request({
                    url: this.serverUrl + '/Gy_Warehouse/list',
                    data: {
                        sWhere: "",
                        user: uni.getStorageSync('HUserName'),
                        Organization: uni.getStorageSync('Organization')
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HWHNameList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHWHName[i] = res.data.data[i].仓库名称
                            }
                        } else {
                            uni.showToast({
                                title: '仓库数据请求失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
         //扫其他(仓库,仓位)
         // toScanData(e){
         //    uni.scanCode({
         //        onlyFromCamera: true,
         //        success: (res) => {
         //            console.log('条码内容:' + res.result);
         //          var code = res.result
         //          if(e == 1){
         //             uni.request({
         //                url: this.serverUrl + '/WEBSController/GetWarehouse_Json',
         //                data: {HBarCode:code,HStockOrgID:uni.getStorageSync('OrganizationID')},
         //                success: (res) => {
         //                   this.hform.HStockPlaceID = 0
         //                   this.hform.HStockPlaceName = ''
         //                   this.showHStockPlaceName = true
         //                   if(res.data.count == 1){
         //                      var data = res.data.data[0]
         //                      this.hform.HWHID = data.HItemID
         //                      this.hform.HWHName = data.HName
         //                      if (data.HSPFlag == 0) {
         //                          this.showHStockPlaceName = false
         //                      }
         //                   }else{
         //                      this.hform.HWHID = 0
         //                      this.hform.HWHName = ''
         //                      uni.showToast({
         //                         title:res.data.Message,
         //                         icon:'none'
         //                      })
         //                   }
         //                },
         //                fail: (res) => {
         //                   console.log(res);
         //                   uni.showToast({
         //                      title:'仓库数据请求失败',
         //                      icon:'none'
         //                   })
         //                },
         //             });
         //          }else if(e == 2){
         //             uni.request({
         //                url: this.serverUrl + '/WEBSController/GetStockPlace_Json',
         //                data: {HBarCode:code,HStockOrgID:uni.getStorageSync('OrganizationID'),HWhID: this.hform.HWHID},
         //                success: (res) => {
         //                   if(res.data.count == 1){
         //                      var data = res.data.data[0]
         //                      this.hform.HWHID = data.HWHID
         //                      this.hform.HWHName = data.HWhName
         //                      this.hform.HStockPlaceID = data.HItemID
         //                      this.hform.HStockPlaceName = data.HName
         //                   }else{
         //                      this.hform.HWHID = 0
         //                      this.hform.HWHName = ''
         //                      this.hform.HStockPlaceID = 0
         //                      this.hform.HStockPlaceName = ''
         //                      uni.showToast({
         //                         title:res.data.Message,
         //                         icon:'none'
         //                      })
         //                   }
         //                },
         //                fail: (res) => {
         //                   console.log(res);
         //                   uni.showToast({
         //                      title:'仓库数据请求失败',
         //                      icon:'none'
         //                   })
         //                },
         //             });
         //          }
         //        }
         //    });
         // },
         //日期
         HDateChange(e) {
            console.log(e.detail.value)
            this.hform.HDate = e.detail.value
         },
         onSourceBillBlurHandler() {
            if (this.hform.HMainSourceBillType == -1) {
               this.playSound(1)
               this.barCodeFocus = true
               return
            }
            let inputVal = this.$refs.uniComboxSourceBill.inputVal
            if (inputVal == '') {
               CommonUtils.playSound(0)
               this.refreshHSourceBillState()
               return uni.showToast({
                  icon: 'none',
                  Message: '源单单号不得为空...'
               })
            }
            this.getHBarCodeData(inputVal)
                uni.request({
                    url: this.serverUrl + '/Gy_StockPlace/list',
                    data: {
                        sWhere: "",
                        user: uni.getStorageSync('HUserName'),
                        Organization: uni.getStorageSync('Organization')
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HStockPlaceNameList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHStockPlaceName[i] = res.data.data[i].仓位名称
                            }
                        } else {
                            uni.showToast({
                                title: '仓位数据请求失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
         },
         //基础仓库资料
         getHBaseList() {
            uni.request({
               url: this.serverUrl + '/Gy_Warehouse/list',
               data: {
                  sWhere: "",
                  user: uni.getStorageSync('HUserName'),
                  Organization: uni.getStorageSync('Organization')
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HWHNameList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHWHName[i] = res.data.data[i].仓库名称
                     }
                  } else {
                     uni.showToast({
                        title: '仓库数据请求失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
                this.getHYDList()
            },
            //源单资料
            getHYDList() {
                uni.request({
                    url: this.serverUrl + '/WEBSController/GetSourceBillList_Json',
                    data: {
                        HBillType: this.hform.HBillType,
                        HSourceBillType: this.hform.HMainSourceBillType,
                        HStockOrgID: this.hform.HStockOrgID,
                        HSourceBillNo: "",
                        HMater: "",
                        HCustom: ""
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HSourceBillNoList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHSourceBillNo[i] = res.data.data[i].单据号
                            }
                            this.reHSourceBillNo = false
                            this.$nextTick(() => {
                                this.reHSourceBillNo = true
                            })
                        } else {
                            uni.showToast({
                                title: '源单数据请求失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //选择仓库
            HWHNameChange(e) {
                // var name = e.split("(")
                for (var i = 0; i < this.HWHNameList.length; i++) {
                    if (this.HWHNameList[i].仓库名称 == e) {
                        this.hform.HWHName = this.HWHNameList[i].仓库名称
                        this.hform.HWHID = this.HWHNameList[i].HItemID
                    }
                }
            },
            //选择仓位
            HStockPlaceNameChange(e) {
                for (var i = 0; i < this.HStockPlaceNameList.length; i++) {
                    if (this.HStockPlaceNameList[i].仓位名称 == e) {
                        this.hform.HStockPlaceName = this.HStockPlaceNameList[i].仓位名称
                        this.hform.HStockPlaceID = this.HStockPlaceNameList[i].HItemID
                    }
                }
            },
            //选择源单
            HSourceBillNoChange(e) {
                this.hform.HSourceBillNo = e
                this.getHBarCodeData(e)
                // for(var i=0;i<this.HSourceBillNoList.length;i++){
                //    if(this.HSourceBillNoList[i].单据号 == e){
                //       this.hform.HSourceBillNo = this.HSourceBillNoList[i].单据号
                //    }
                // }
            },
            //选择源单类型
            HMainSourceBillTypeChange(e) {
                this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value]
                if (this.HMainSourceBillType == '收料通知单') {
                    this.hform.HMainSourceBillType = 1103
                    this.getHYDList()
                } else if (this.HMainSourceBillType == '采购订单') {
                    this.hform.HMainSourceBillType = 1102
                    this.getHYDList()
                } else {
                    this.hform.HMainSourceBillType = -1
                    this.getHYDList()
                }
            },
            uni.request({
               url: this.serverUrl + '/Gy_StockPlace/list',
               data: {
                  sWhere: "",
                  user: uni.getStorageSync('HUserName'),
                  Organization: uni.getStorageSync('Organization')
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HStockPlaceNameList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHStockPlaceName[i] = res.data.data[i].仓位名称
                     }
                  } else {
                     uni.showToast({
                        title: '仓位数据请求失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
            //获取供应商数据
            getHSupList() {
                if (!this.hform.HStockOrgID) {
                    var HOtherOrgID = 0;
                } else {
                    var HOtherOrgID = this.hform.HStockOrgID
                }
                uni.request({
                    url: this.serverUrl + '/Web/GetSupplierList_Json',
                    data: {
                        Supplier: '',
                        HOrgID: HOtherOrgID
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HSupNameList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHSupName[i] = res.data.data[i].HName
                            }
                            this.$forceUpdate();
                        } else {
                            uni.showToast({
                                title: res.data.Message,
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '供应商数据请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //选择供应商
            HSupNameChange(e) {
                for (var i = 0; i < this.HSupNameList.length; i++) {
                    if (this.HSupNameList[i].HName == e) {
                        this.hform.HSupID = this.HSupNameList[i].HItemID
                        this.hform.HSupName = this.HSupNameList[i].HName
                    }
                }
            },
            //获取使用部门数据
            getHDeptList() {
                uni.request({
                    url: this.serverUrl + '/Gy_Department/list',
                    data: {
                        sWhere: "",
                        user: uni.getStorageSync('HUserName'),
                        Organization: uni.getStorageSync('Organization')
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HDeptNameList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHDeptName[i] = res.data.data[i].部门名称
                            }
                            this.$forceUpdate();
                        } else {
                            uni.showToast({
                                title: '部门数据请求失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //选择使用部门
            HDeptNameChange(e) {
                for (var i = 0; i < this.HDeptNameList.length; i++) {
                    if (this.HDeptNameList[i].部门名称 == e) {
                        this.hform.HDeptID = this.HDeptNameList[i].HItemID
                        this.hform.HDeptName = this.HDeptNameList[i].部门名称
                    }
                }
            },
            //操作员
            getHEmpList() {
                uni.request({
                    url: this.serverUrl + '/Web/GetEmployeeList_Json',
                    data: {
                        Employee: '',
                        HGroupID: 0
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            this.HEmpNameList = res.data.data
                            for (var i = 0; i < res.data.data.length; i++) {
                                this.arrayHEmpName[i] = res.data.data[i].HName
                            }
                            this.$forceUpdate();
                        } else {
                            uni.showToast({
                                title: '人员数据请求失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //保管
            HKeeperNameChange(e) {
                for (var i = 0; i < this.HEmpNameList.length; i++) {
                    if (this.HEmpNameList[i].HName == e) {
                        console.log(this.HEmpNameList[i])
                        this.hform.HKeeperID = this.HEmpNameList[i].HItemID
                        this.hform.HKeeperName = this.HEmpNameList[i].HName
                    }
                }
            },
            //验收
            HSecManagerNameChange(e) {
                for (var i = 0; i < this.HEmpNameList.length; i++) {
                    if (this.HEmpNameList[i].HName == e) {
                        this.hform.HSecManagerID = this.HEmpNameList[i].HItemID
                        this.hform.HSecManagerName = this.HEmpNameList[i].HName
                    }
                }
            },
            //选中源单
            getHBarCodeData(HBarCode) {
                uni.request({
                    url: this.serverUrl + '/WEBSController/Get_SourceBarCode_POStockIn_Json',
                    data: {
                        HInterID: this.hform.HInterID,
                        HBillNo: this.hform.HBillNo,
                        HBillType: this.hform.HBillType,
                        HSourceBillNo: HBarCode,
                        HSourceBillType: this.hform.HMainSourceBillType,
                        HMaker: this.hform.HMaker,
                        HStockOrgID: this.hform.HStockOrgID
                    },
                    success: (res) => {
                        if (res.data.count == 1) {
                            var data = res.data.data
                            console.log(2, data);
                            this.hform.HSupName = data.hSupNameField
                            this.hform.HSupID = data.hSupIDField
                            if (data.hDeptIDField != 0) {
                                this.hform.HDeptID = data.hDeptIDField
                                this.hform.HDeptName = data.hDeptNameField
                            }
                            this.hform.HSourceBillNo = data.hSourceBillNoField
                            this.showHMainSourceBillType = false
                            if (data.hMulSourceFlagField == 0) {
                                this.showHSourceBillNo = false
                            }
                            this.tabs = 2
                            this.showHSupName = false
                            this.barCodeFocus = true
                            this.playSound(1)
                            this.DisBillEntryList()
                        } else {
                            this.refreshHSourceBillState()
                            this.playSound(0)
                            uni.showToast({
                                title: res.data.Message,
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        this.refreshHSourceBillState()
                        this.playSound(0)
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //扫条码处理
            getCode(HBarCode) {
                //仓库、仓位文本框为空时,清空对应ID
                if (!this.hform.HWHName) {
                    this.hform.HWHID = 0
                }
                if (!this.hform.HStockPlaceName) {
                    this.hform.HStockPlaceID = 0
                }
                var sOldBarCode = HBarCode
                var HDeleteFlag = sOldBarCode.substring(0, 1);
                var sBarCode = sOldBarCode.slice(1);
            this.getHYDList()
         },
         // 通过单据类型获取源单类型
         async GetSourceBillType() {
            CommonUtils.doRequest2({
               url: '/Web/GetHSourceBillType',
               data: {
                  HName: this.HPageTitle,
                  Num: 2
               },
               resFunction: (res) => {
                  let {
                     data,
                     count,
                     Message
                  } = res.data
                  if (count == 1) {
                     // console.log('data: ', data);
                     this.arrayHMainSourceBillType = []
                     this.arrayHMainSourceBillValue = []
                     Array.from(data).forEach(e => {
                        this.arrayHMainSourceBillType.push(e['HSourceBillTypeName'])
                        this.arrayHMainSourceBillValue.push(e['HSourceBillType'])
                     })
                var sHWHID = this.hform.HWHID
                var sHSPID = this.hform.HStockPlaceID
                var sHQty = this.hform.HQty
                var sSourceBillNo = this.hform.HSourceBillNo
                var sSourceBillType = this.hform.HMainSourceBillType
                var HSourceFlag = this.hform.HSourceBillNo == '' ? false : true
                console.log(this.hform.HSourceBillNo, HSourceFlag)
                if (HDeleteFlag == "*") {
                    if (sBarCode == "") {
                        this.playSound(0)
                        this.refreshBarCodeState()
                        uni.showToast({
                            title: '请输入要删除的条码',
                            icon: 'none'
                        })
                    } else {
                        uni.request({
                            url: this.serverUrl +
                                '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
                            data: {
                                HInterID: this.hform.HInterID,
                                HBillType: this.hform.HBillType,
                                HBarCode: sBarCode
                            },
                            success: (res) => {
                                console.log('删除条码', res.data);
                                this.hform.HBarCode = ''
                                if (res.data.count == 1) {
                                    this.playSound(1)
                                    this.hform.HQty = ''
                                    this.DisBillEntryList()
                                } else {
                                    this.playSound(0)
                                    this.refreshBarCodeState()
                                    uni.showToast({
                                        title: res.data.Message,
                                        icon: 'none'
                                    })
                                }
                            },
                            fail: (res) => {
                                console.log(res);
                                this.refreshBarCodeState()
                                this.playSound(0)
                                uni.showToast({
                                    title: '接口请求失败',
                                    icon: 'none'
                                })
                            },
                        });
                    }
                } else {
                    var sBarCode = this.hform.HBarCode
                    if (sHQty == "") {
                        sHQty = 0;
                    }
                    uni.request({
                        url: this.serverUrl + '/WEBSController/Get_BarCode_Json',
                        data: {
                            sBarCode: sBarCode,
                            HInterID: this.hform.HInterID,
                            HBillType: this.hform.HBillType,
                            HBillNo: this.hform.HBillNo,
                            HMaker: this.hform.HMaker,
                            HWhID: sHWHID,
                            HSPID: sHSPID,
                            HQty: sHQty,
                            HRedBlueFlag: this.hform.HRedBlueFlag,
                            SourceFlag: HSourceFlag,
                            HSourceBillNo: sSourceBillNo,
                            HSourceBillType: sSourceBillType,
                            HStockOrgID: this.hform.HStockOrgID,
                            HScanStyle: "",
                            HCustom1: "",
                            HCustom2: ""
                        },
                        success: (res) => {
                            console.log('扫码返回', res.data);
                            this.hform.HBarCode = ''
                            if (res.data.count == 1) {
                                this.playSound(1)
                                var data = res.data.data
                                if (data.hBarTypeField == '仓库条码') {
                                    this.hform.HWHName = data.hWhNameField
                                    this.hform.HWHID = data.hWhIDField
                                    this.hform.HStockPlaceName = ''
                                    this.hform.HStockPlaceID = 0
                                    if (data.hSPFlagField == 0) {
                                        this.showHStockPlaceName = false
                                    } else {
                                        this.showHStockPlaceName = true
                                    }
                                } else if (data.hBarTypeField == '仓位条码') {
                                    this.hform.HWHName = data.hWhNameField
                                    this.hform.HWHID = data.hWhIDField
                                    this.hform.HStockPlaceName = data.hSPNameField
                                    this.hform.HStockPlaceID = data.hSPIDField
                                } else if (data.hBarTypeField == '部门条码') {
                                    this.hform.HDeptName = data.hDeptNameField
                                    this.hform.HDeptID = data.hDeptIDField
                                    this.tabs = 1
                                } else if (data.hBarTypeField == '源单条码') {
                                    this.hform.HSupName = data.hSupNameField
                                    this.hform.HSupID = data.hSupIDField
                                    if (data.hDeptIDField != 0) {
                                        this.hform.HDeptID = data.hDeptIDField
                                        this.hform.HDeptName = data.hDeptNameField
                                    }
                                    this.hform.HSourceBillNo = data.hSourceBillNoField
                                    //获取源单类型、源单单号
                                    if (data.hSourceBillTypeField == "1103") {
                                        this.HMainSourceBillType = '收料通知单'
                                        this.hform.HMainSourceBillType = 1103
                                        this.showHMainSourceBillType = false
                                    } else if (data.hSourceBillTypeField == "1102") {
                                        this.HMainSourceBillType = '采购订单'
                                        this.hform.HMainSourceBillType = 1102
                                        this.showHMainSourceBillType = false
                                    } else {
                                        this.HMainSourceBillType = '手工录入'
                                        this.hform.HMainSourceBillType = -1
                                        this.showHMainSourceBillType = false
                                    }
                                    if (data.hMulSourceFlagField == 0) {
                                        this.showHSourceBillNo = false
                                    }
                                    //供应商不可编辑
                                    this.showHSupName = false
                                    this.tabs = 2
                                } else { //物料条码
                                    this.tabs = 2
                                    if (!this.hform.HSourceBillNo) {
                                        this.hform.HSupName = data.hSupNameField
                                        this.hform.HSupID = data.hSupIDField
                                        this.hform.HSourceBillNo = data.hSourceBillNoField
                                        if (data.hDeptIDField != 0) {
                                            this.hform.HDeptID = data.hDeptIDField
                                            this.hform.HDeptName = data.hDeptNameField
                                        }
                                        console.log(data)
                                        //获取源单类型、源单单号
                                        this.hform.HMainSourceBillType = data.hSourceBillTypeField
                                        if (data.hSourceBillTypeField == "1103") {
                                            this.HMainSourceBillType = '收料通知单'
                                            this.hform.HMainSourceBillType = 1103
                                            this.showHMainSourceBillType = false
                                        } else if (data.hSourceBillTypeField == "1102") {
                                            this.HMainSourceBillType = '采购订单'
                                            this.hform.HMainSourceBillType = 1102
                                            this.showHMainSourceBillType = false
                                        } else {
                                            this.HMainSourceBillType = '手工录入'
                                            this.hform.HMainSourceBillType = -1
                                            this.showHMainSourceBillType = false
                                        }
                                        if (data.hMulSourceFlagField == 0) {
                                            this.showHSourceBillNo = false
                                        }
                                        //供应商不可编辑
                                        this.showHSupName = false
                                    }
                                }
                                //显示表体明细
                                this.DisBillEntryList()
                                //清空数量
                                this.hform.HQty = ''
                            } else {
                                this.playSound(0)
                                this.refreshBarCodeState()
                                uni.showToast({
                                    title: res.data.Message,
                                    icon: 'none'
                                })
                            }
                        },
                        fail: (res) => {
                            this.playSound(0)
                            this.refreshBarCodeState()
                            console.log(res);
                            uni.showToast({
                                title: '接口请求失败',
                                icon: 'none'
                            })
                        },
                    });
                }
            },
            //物料信息
            DisBillEntryList() {
                uni.request({
                    url: this.serverUrl + '/WEBSController/GetBillEntryTmpList_Json',
                    data: {
                        HInterID: this.hform.HInterID,
                        HBillNo: this.hform.HBillNo,
                        HBillType: this.hform.HBillType,
                        HStockOrgID: this.hform.HStockOrgID
                    },
                    success: (res) => {
                        console.log('物料', res.data)
                        if (res.data.count == 1) {
                            var data = res.data.data
                            this.Materlist = data.Materlist
                            if (!data.BarCodeDetailslist[0].HBarCode) {
                                this.hform.HMaterName_B = ''
                                this.hform.HMaterModel_B = ''
                                this.hform.HBatchNo_B = ''
                                this.hform.HUnitName_B = ''
                                this.hform.HQty_B = ''
                                this.hform.HTMQty_B = ''
                                this.hform.HWHName_B = ''
                                this.hform.HSPName_B = ''
                            } else {
                                this.hform.HMaterName_B = data.BarCodeDetailslist[0].HMaterName
                                this.hform.HMaterModel_B = data.BarCodeDetailslist[0].HMaterModel
                                this.hform.HBatchNo_B = data.BarCodeDetailslist[0].HBatchNo
                                this.hform.HUnitName_B = data.BarCodeDetailslist[0].HUnitName
                                this.hform.HQty_B = data.BarCodeDetailslist[0].HQty
                                this.hform.HTMQty_B = data.BarCodeDetailslist[0].HTMQty
                                this.hform.HWHName_B = data.BarCodeDetailslist[0].HWHName
                                this.hform.HSPName_B = data.BarCodeDetailslist[0].HSPName
                            }
                        } else {
                            uni.showToast({
                                title: res.data.Message,
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            delMater(item) {
                uni.showModal({
                    title: '提示',
                    content: '确认要删除 "' + item.物料名称 + '" 所有扫码记录?删除后将不可恢复!',
                    success: (res) => {
                        if (res.confirm) {
                            uni.request({
                                url: this.serverUrl +
                                    '/WEBSController/set_DelPonderationBillMain_Temp_InterIDAndSource_Json',
                                data: {
                                    HInterID: this.hform.HInterID,
                                    HMaterID: item.HMaterID,
                                    HAuxPropID: item.HAuxPropID,
                                    HMTONo: item.HMTONo,
                                    HSourceInterID: item.HSourceInterID,
                                    HSourceEntryID: item.HSourceEntryID,
                                    HBillType: this.hform.HBillType
                                },
                                success: (res) => {
                                    if (res.data.count == 1) {
                                        this.DisBillEntryList()
                                    } else {
                                        uni.showToast({
                                            title: res.data.Message,
                                            icon: 'none'
                                        })
                                    }
                                },
                                fail: (res) => {
                                    console.log(res);
                                    uni.showToast({
                                        title: '接口请求失败',
                                        icon: 'none'
                                    })
                                }
                            });
                        }
                    }
                });
            },
            //新增
            getNewData() {
                uni.request({
                    url: this.serverUrl + '/WEBSController/GetMaxBillNoAndID_Json',
                    data: {
                        HBillType: this.hform.HBillType
                    },
                    success: (res) => {
                        // console.log(res.data)
                        if (res.data.count == 1) {
                            this.hform.HInterID = res.data.data[0].HInterID
                            this.hform.HBillNo = res.data.data[0].HBillNo
                        } else {
                            uni.showToast({
                                title: res.data.Message,
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            //修改回填数据
            RoadBillMain(HInterID) {
                uni.request({
                    url: this.serverUrl + '/WEBSController/GetSourceBill_Temp_Json',
                    data: {
                        HInterID: HInterID,
                        HBillType: this.hform.HBillType
                    },
                    success: (res) => {
                        console.log(33, res.data.data[0]);
                        if (res.data.count == 1) {
                            var data = res.data.data[0]
                            this.hform.HInterID = data.HInterID
                            this.hform.HBillNo = data.HBillNo
                            this.hform.HMainSourceBillType = data.HSourceBillType
                            this.hform.HSourceBillNo = data.HSourceBillNo
                            if (data.HSourceBillType == 1103) {
                                this.hform.HMainSourceBillType = 1103
                                this.HMainSourceBillType = '收料通知单'
                                this.showHSupName = false
                            } else if (data.HSourceBillType == 1102) {
                                this.hform.HMainSourceBillType = 1102
                                this.HMainSourceBillType = '采购订单'
                                this.showHSupName = false
                            } else {
                                this.hform.HMainSourceBillType = -1
                                this.HMainSourceBillType = '手工录入'
                            }
                            this.showHMainSourceBillType = false
                     this.arrayHMainSourceBillType.push('手工录入')
                     this.arrayHMainSourceBillValue.push('-1')
                            //非多源单模式
                            if (data.HMulSourceBill == 0) {
                                this.showHSourceBillNo = false
                            }
                            this.hform.HDeptID = data.HDeptID
                            this.hform.HDeptName = data.HDeptName
                            this.hform.HSupID = data.HCusID
                            this.hform.HSupName = data.HSupName
                            this.DisBillEntryList()
                            this.tabs = 2
                        } else {
                            uni.showToast({
                                title: '获取数据回填失败',
                                icon: 'none'
                            })
                        }
                    },
                    fail: (res) => {
                        console.log(res);
                        uni.showToast({
                            title: '接口请求失败',
                            icon: 'none'
                        })
                    },
                });
            },
            addNew() {
                uni.redirectTo({
                    url: '/pages/caigouruku/form?OperationType=1'
                })
            },
            submit() {
                //仓库、仓位、保管、验收、部门、供应商文本框为空时,清空对应ID
                if (!this.hform.HWHName) {
                    this.hform.HWHID = 0
                }
                if (!this.hform.HStockPlaceName) {
                    this.hform.HStockPlaceID = 0
                }
                if (!this.hform.HKeeperName) {
                    this.hform.HKeeperID = 0
                }
                if (!this.hform.HSecManagerName) {
                    this.hform.HSecManagerID = 0
                }
                if (!this.hform.HDeptName) {
                    this.hform.HDeptID = 0
                }
                if (!this.hform.HSupName) {
                    this.hform.HSupID = 0
                }
                if (this.hform.HInterID == 0 || !this.hform.HInterID) {
                    uni.showToast({
                        title: '单据内码获取失败,错误的单据内码!',
                        icon: 'none'
                    })
                } else if (!this.hform.HBillNo) {
                    uni.showToast({
                        title: '单据号获取失败,错误的单据号!',
                        icon: 'none'
                    })
                } else if (!this.Materlist || this.Materlist.length == 0) {
                    uni.showToast({
                        title: '没有扫码信息,请先扫描条码,确认无误后再提交!',
                        icon: 'none'
                    })
                } else {
                    var s = 0;
                    for (var i = 0; i < this.Materlist.length; i++) {
                        if (this.Materlist[i].数量 > 0) {
                            s = 1;
                        }
                    }
                    if (s == 0) {
                        uni.showToast({
                            title: '没有扫描物料条码,请先扫描物料条码,确认无误后再提交!',
                            icon: 'none'
                        })
                    } else {
                        uni.showLoading({
                            title: '请稍候'
                        })
                        var sMainStr = JSON.stringify(this.hform);
                        uni.request({
                            url: this.serverUrl + '/WEBSController/set_SavePOStockInBill_Json',
                            method: 'POST',
                            dataType: "json",
                            data: {
                                oMain: sMainStr
                            },
                            success: (res) => {
                                console.log(1, res);
                                uni.hideLoading()
                                if (res.data.count == 1) {
                                    uni.showModal({
                                        title: '提示',
                                        content: res.data.Message + '。是否继续新增?(点击取消返回上级页面)',
                                        success: (res) => {
                                            if (res.confirm) {
                                                console.log('用户点击确定');
                                                uni.redirectTo({
                                                    url: '/pages/caigouruku/form?OperationType=1'
                                                })
                                            } else if (res.cancel) {
                                                console.log('用户点击取消');
                                                setTimeout(() => {
                                                    uni.navigateBack();
                                                }, 50)
                                            }
                                        }
                                    });
                                } else {
                                    uni.showToast({
                                        title: res.data.Message,
                                        icon: 'none'
                                    })
                                }
                            },
                            fail: (res) => {
                                console.log(res);
                                uni.showToast({
                                    title: '接口请求失败',
                                    icon: 'none'
                                })
                            },
                        });
                    }
                }
            },
                     this.HMainSourceBillType = this.arrayHMainSourceBillType[0]
                     this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[0]
                  } else {
                     uni.showToast({
                        icon: 'none',
                        title: Message
                     })
                  }
               }
            })
         },
         //源单资料
         getHYDList() {
            uni.request({
               url: this.serverUrl + '/WEBSController/GetSourceBillList_Json',
               data: {
                  HBillType: this.hform.HBillType,
                  HSourceBillType: this.hform.HMainSourceBillType,
                  HStockOrgID: this.hform.HStockOrgID,
                  HSourceBillNo: "",
                  HMater: "",
                  HCustom: ""
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HSourceBillNoList = []
                     this.arrayHSourceBillNo = []
                     this.HSourceBillNoList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHSourceBillNo[i] = res.data.data[i].单据号
                     }
                     this.reHSourceBillNo = false
                     this.$nextTick(() => {
                        this.reHSourceBillNo = true
                     })
                  } else {
                     uni.showToast({
                        title: '源单数据请求失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
            goBack() {
                uni.showModal({
                    title: '提示',
                    content: '确认要退出当前页面吗?',
                    success: (res) => {
                        if (res.confirm) {
                            console.log('用户点击确定');
                            uni.redirectTo({
                                url: '/pages/caigouruku/table'
                            })
                        } else if (res.cancel) {
                            console.log('用户点击取消');
                        }
                    }
                });
            }
        }
    }
         },
         //选择仓库
         HWHNameChange(e) {
            // var name = e.split("(")
            for (var i = 0; i < this.HWHNameList.length; i++) {
               if (this.HWHNameList[i].仓库名称 == e) {
                  this.hform.HWHName = this.HWHNameList[i].仓库名称
                  this.hform.HWHID = this.HWHNameList[i].HItemID
               }
            }
         },
         //选择仓位
         HStockPlaceNameChange(e) {
            for (var i = 0; i < this.HStockPlaceNameList.length; i++) {
               if (this.HStockPlaceNameList[i].仓位名称 == e) {
                  this.hform.HStockPlaceName = this.HStockPlaceNameList[i].仓位名称
                  this.hform.HStockPlaceID = this.HStockPlaceNameList[i].HItemID
               }
            }
         },
         //选择源单
         HSourceBillNoChange(e) {
            this.hform.HSourceBillNo = e
            this.getHBarCodeData(e)
            // for(var i=0;i<this.HSourceBillNoList.length;i++){
            //    if(this.HSourceBillNoList[i].单据号 == e){
            //       this.hform.HSourceBillNo = this.HSourceBillNoList[i].单据号
            //    }
            // }
         },
         //选择源单类型
         HMainSourceBillTypeChange(e) {
            this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value]
            let index = this.arrayHMainSourceBillType.findIndex(e => e == this.HMainSourceBillType)
            if (index != -1) {
               this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[index]
               this.getHYDList()
            }
         },
         //获取供应商数据
         getHSupList() {
            if (!this.hform.HStockOrgID) {
               var HOtherOrgID = 0;
            } else {
               var HOtherOrgID = this.hform.HStockOrgID
            }
            uni.request({
               url: this.serverUrl + '/Web/GetSupplierList_Json',
               data: {
                  Supplier: '',
                  HOrgID: HOtherOrgID
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HSupNameList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHSupName[i] = res.data.data[i].HName
                     }
                     this.$forceUpdate();
                  } else {
                     uni.showToast({
                        title: res.data.Message,
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '供应商数据请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         //选择供应商
         HSupNameChange(e) {
            for (var i = 0; i < this.HSupNameList.length; i++) {
               if (this.HSupNameList[i].HName == e) {
                  this.hform.HSupID = this.HSupNameList[i].HItemID
                  this.hform.HSupName = this.HSupNameList[i].HName
               }
            }
         },
         //获取使用部门数据
         getHDeptList() {
            uni.request({
               url: this.serverUrl + '/Gy_Department/list',
               data: {
                  sWhere: "",
                  user: uni.getStorageSync('HUserName'),
                  Organization: uni.getStorageSync('Organization')
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HDeptNameList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHDeptName[i] = res.data.data[i].部门名称
                     }
                     this.$forceUpdate();
                  } else {
                     uni.showToast({
                        title: '部门数据请求失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         //选择使用部门
         HDeptNameChange(e) {
            for (var i = 0; i < this.HDeptNameList.length; i++) {
               if (this.HDeptNameList[i].部门名称 == e) {
                  this.hform.HDeptID = this.HDeptNameList[i].HItemID
                  this.hform.HDeptName = this.HDeptNameList[i].部门名称
               }
            }
         },
         //操作员
         getHEmpList() {
            uni.request({
               url: this.serverUrl + '/Web/GetEmployeeList_Json',
               data: {
                  Employee: '',
                  HGroupID: 0
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     this.HEmpNameList = res.data.data
                     for (var i = 0; i < res.data.data.length; i++) {
                        this.arrayHEmpName[i] = res.data.data[i].HName
                     }
                     this.$forceUpdate();
                  } else {
                     uni.showToast({
                        title: '人员数据请求失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         //保管
         HKeeperNameChange(e) {
            for (var i = 0; i < this.HEmpNameList.length; i++) {
               if (this.HEmpNameList[i].HName == e) {
                  console.log(this.HEmpNameList[i])
                  this.hform.HKeeperID = this.HEmpNameList[i].HItemID
                  this.hform.HKeeperName = this.HEmpNameList[i].HName
               }
            }
         },
         //验收
         HSecManagerNameChange(e) {
            for (var i = 0; i < this.HEmpNameList.length; i++) {
               if (this.HEmpNameList[i].HName == e) {
                  this.hform.HSecManagerID = this.HEmpNameList[i].HItemID
                  this.hform.HSecManagerName = this.HEmpNameList[i].HName
               }
            }
         },
         //选中源单
         getHBarCodeData(HBarCode) {
            uni.request({
               url: this.serverUrl + '/WEBSController/Get_SourceBarCode_POStockIn_Json',
               data: {
                  HInterID: this.hform.HInterID,
                  HBillNo: this.hform.HBillNo,
                  HBillType: this.hform.HBillType,
                  HSourceBillNo: HBarCode,
                  HSourceBillType: this.hform.HMainSourceBillType,
                  HMaker: this.hform.HMaker,
                  HStockOrgID: this.hform.HStockOrgID
               },
               success: (res) => {
                  if (res.data.count == 1) {
                     var data = res.data.data
                     console.log(2, data);
                     this.hform.HSupName = data.hSupNameField
                     this.hform.HSupID = data.hSupIDField
                     if (data.hDeptIDField != 0) {
                        this.hform.HDeptID = data.hDeptIDField
                        this.hform.HDeptName = data.hDeptNameField
                     }
                     this.hform.HSourceBillNo = data.hSourceBillNoField
                     this.showHMainSourceBillType = false
                     if (data.hMulSourceFlagField == 0) {
                        this.showHSourceBillNo = false
                     }
                     this.tabs = 2
                     this.showHSupName = false
                     this.barCodeFocus = true
                     this.playSound(1)
                     this.DisBillEntryList()
                  } else {
                     this.refreshHSourceBillState()
                     this.playSound(0)
                     uni.showToast({
                        title: res.data.Message,
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  this.refreshHSourceBillState()
                  this.playSound(0)
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         //扫条码处理
         getCode(HBarCode) {
            //仓库、仓位文本框为空时,清空对应ID
            if (!this.hform.HWHName) {
               this.hform.HWHID = 0
            }
            if (!this.hform.HStockPlaceName) {
               this.hform.HStockPlaceID = 0
            }
            var sOldBarCode = HBarCode
            var HDeleteFlag = sOldBarCode.substring(0, 1);
            var sBarCode = sOldBarCode.slice(1);
            var sHWHID = this.hform.HWHID
            var sHSPID = this.hform.HStockPlaceID
            var sHQty = this.hform.HQty
            var sSourceBillNo = this.hform.HSourceBillNo
            var sSourceBillType = this.hform.HMainSourceBillType
            var HSourceFlag = this.hform.HSourceBillNo == '' ? false : true
            console.log(this.hform.HSourceBillNo, HSourceFlag)
            if (HDeleteFlag == "*") {
               if (sBarCode == "") {
                  this.playSound(0)
                  this.refreshBarCodeState()
                  uni.showToast({
                     title: '请输入要删除的条码',
                     icon: 'none'
                  })
               } else {
                  uni.request({
                     url: this.serverUrl +
                        '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
                     data: {
                        HInterID: this.hform.HInterID,
                        HBillType: this.hform.HBillType,
                        HBarCode: sBarCode
                     },
                     success: (res) => {
                        console.log('删除条码', res.data);
                        this.hform.HBarCode = ''
                        if (res.data.count == 1) {
                           this.playSound(1)
                           this.hform.HQty = ''
                           this.DisBillEntryList()
                        } else {
                           this.playSound(0)
                           this.refreshBarCodeState()
                           uni.showToast({
                              title: res.data.Message,
                              icon: 'none'
                           })
                        }
                     },
                     fail: (res) => {
                        console.log(res);
                        this.refreshBarCodeState()
                        this.playSound(0)
                        uni.showToast({
                           title: '接口请求失败',
                           icon: 'none'
                        })
                     },
                  });
               }
            } else {
               var sBarCode = this.hform.HBarCode
               if (sHQty == "") {
                  sHQty = 0;
               }
               uni.request({
                  url: this.serverUrl + '/WEBSController/Get_BarCode_Json',
                  data: {
                     sBarCode: sBarCode,
                     HInterID: this.hform.HInterID,
                     HBillType: this.hform.HBillType,
                     HBillNo: this.hform.HBillNo,
                     HMaker: this.hform.HMaker,
                     HWhID: sHWHID,
                     HSPID: sHSPID,
                     HQty: sHQty,
                     HRedBlueFlag: this.hform.HRedBlueFlag,
                     SourceFlag: HSourceFlag,
                     HSourceBillNo: sSourceBillNo,
                     HSourceBillType: sSourceBillType,
                     HStockOrgID: this.hform.HStockOrgID,
                     HScanStyle: "",
                     HCustom1: "",
                     HCustom2: ""
                  },
                  success: (res) => {
                     console.log('扫码返回', res.data);
                     this.hform.HBarCode = ''
                     if (res.data.count == 1) {
                        this.playSound(1)
                        var data = res.data.data
                        if (data.hBarTypeField == '仓库条码') {
                           this.hform.HWHName = data.hWhNameField
                           this.hform.HWHID = data.hWhIDField
                           this.hform.HStockPlaceName = ''
                           this.hform.HStockPlaceID = 0
                           if (data.hSPFlagField == 0) {
                              this.showHStockPlaceName = false
                           } else {
                              this.showHStockPlaceName = true
                           }
                        } else if (data.hBarTypeField == '仓位条码') {
                           this.hform.HWHName = data.hWhNameField
                           this.hform.HWHID = data.hWhIDField
                           this.hform.HStockPlaceName = data.hSPNameField
                           this.hform.HStockPlaceID = data.hSPIDField
                        } else if (data.hBarTypeField == '部门条码') {
                           this.hform.HDeptName = data.hDeptNameField
                           this.hform.HDeptID = data.hDeptIDField
                           this.tabs = 1
                        } else if (data.hBarTypeField == '源单条码') {
                           this.hform.HSupName = data.hSupNameField
                           this.hform.HSupID = data.hSupIDField
                           if (data.hDeptIDField != 0) {
                              this.hform.HDeptID = data.hDeptIDField
                              this.hform.HDeptName = data.hDeptNameField
                           }
                           this.hform.HSourceBillNo = data.hSourceBillNoField
                           //获取源单类型、源单单号
                           let index = this.arrayHMainSourceBillValue.findIndex(e => e = data
                              .hSourceBillTypeField)
                           if (index != -1) {
                              this.HMainSourceBillType = this.arrayHMainSourceBillType[index]
                              this.hform.HMainSourceBillType = data.hSourceBillTypeField
                              this.showHMainSourceBillType = false
                           }
                           // if (data.hSourceBillTypeField == "1103") {
                           //    this.HMainSourceBillType = '收料通知单'
                           //    this.hform.HMainSourceBillType = 1103
                           //    this.showHMainSourceBillType = false
                           // } else if (data.hSourceBillTypeField == "1102") {
                           //    this.HMainSourceBillType = '采购订单'
                           //    this.hform.HMainSourceBillType = 1102
                           //    this.showHMainSourceBillType = false
                           // } else {
                           //    this.HMainSourceBillType = '手工录入'
                           //    this.hform.HMainSourceBillType = -1
                           //    this.showHMainSourceBillType = false
                           // }
                           if (data.hMulSourceFlagField == 0) {
                              this.showHSourceBillNo = false
                           }
                           //供应商不可编辑
                           this.showHSupName = false
                           this.tabs = 2
                        } else { //物料条码
                           this.tabs = 2
                           if (!this.hform.HSourceBillNo) {
                              this.hform.HSupName = data.hSupNameField
                              this.hform.HSupID = data.hSupIDField
                              this.hform.HSourceBillNo = data.hSourceBillNoField
                              if (data.hDeptIDField != 0) {
                                 this.hform.HDeptID = data.hDeptIDField
                                 this.hform.HDeptName = data.hDeptNameField
                              }
                              console.log(data)
                              //获取源单类型、源单单号
                              this.hform.HMainSourceBillType = data.hSourceBillTypeField
                              let index = this.arrayHMainSourceBillValue.findIndex(e => e = data
                                 .hSourceBillTypeField)
                              if (index != -1) {
                                 this.HMainSourceBillType = this.arrayHMainSourceBillType[index]
                                 this.hform.HMainSourceBillType = data.hSourceBillTypeField
                                 this.showHMainSourceBillType = false
                              }
                              // if (data.hSourceBillTypeField == "1103") {
                              //    this.HMainSourceBillType = '收料通知单'
                              //    this.hform.HMainSourceBillType = 1103
                              //    this.showHMainSourceBillType = false
                              // } else if (data.hSourceBillTypeField == "1102") {
                              //    this.HMainSourceBillType = '采购订单'
                              //    this.hform.HMainSourceBillType = 1102
                              //    this.showHMainSourceBillType = false
                              // } else {
                              //    this.HMainSourceBillType = '手工录入'
                              //    this.hform.HMainSourceBillType = -1
                              //    this.showHMainSourceBillType = false
                              // }
                              if (data.hMulSourceFlagField == 0) {
                                 this.showHSourceBillNo = false
                              }
                              //供应商不可编辑
                              this.showHSupName = false
                           }
                        }
                        //显示表体明细
                        this.DisBillEntryList()
                        //清空数量
                        this.hform.HQty = ''
                     } else {
                        this.playSound(0)
                        this.refreshBarCodeState()
                        uni.showToast({
                           title: res.data.Message,
                           icon: 'none'
                        })
                     }
                  },
                  fail: (res) => {
                     this.playSound(0)
                     this.refreshBarCodeState()
                     console.log(res);
                     uni.showToast({
                        title: '接口请求失败',
                        icon: 'none'
                     })
                  },
               });
            }
         },
         //物料信息
         DisBillEntryList() {
            uni.request({
               url: this.serverUrl + '/WEBSController/GetBillEntryTmpList_Json',
               data: {
                  HInterID: this.hform.HInterID,
                  HBillNo: this.hform.HBillNo,
                  HBillType: this.hform.HBillType,
                  HStockOrgID: this.hform.HStockOrgID
               },
               success: (res) => {
                  console.log('物料', res.data)
                  if (res.data.count == 1) {
                     var data = res.data.data
                     this.Materlist = data.Materlist
                     if (!data.BarCodeDetailslist[0].HBarCode) {
                        this.hform.HMaterName_B = ''
                        this.hform.HMaterModel_B = ''
                        this.hform.HBatchNo_B = ''
                        this.hform.HUnitName_B = ''
                        this.hform.HQty_B = ''
                        this.hform.HTMQty_B = ''
                        this.hform.HWHName_B = ''
                        this.hform.HSPName_B = ''
                     } else {
                        this.hform.HMaterName_B = data.BarCodeDetailslist[0].HMaterName
                        this.hform.HMaterModel_B = data.BarCodeDetailslist[0].HMaterModel
                        this.hform.HBatchNo_B = data.BarCodeDetailslist[0].HBatchNo
                        this.hform.HUnitName_B = data.BarCodeDetailslist[0].HUnitName
                        this.hform.HQty_B = data.BarCodeDetailslist[0].HQty
                        this.hform.HTMQty_B = data.BarCodeDetailslist[0].HTMQty
                        this.hform.HWHName_B = data.BarCodeDetailslist[0].HWHName
                        this.hform.HSPName_B = data.BarCodeDetailslist[0].HSPName
                     }
                  } else {
                     uni.showToast({
                        title: res.data.Message,
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         delMater(item) {
            uni.showModal({
               title: '提示',
               content: '确认要删除 "' + item.物料名称 + '" 所有扫码记录?删除后将不可恢复!',
               success: (res) => {
                  if (res.confirm) {
                     uni.request({
                        url: this.serverUrl +
                           '/WEBSController/set_DelPonderationBillMain_Temp_InterIDAndSource_Json',
                        data: {
                           HInterID: this.hform.HInterID,
                           HMaterID: item.HMaterID,
                           HAuxPropID: item.HAuxPropID,
                           HMTONo: item.HMTONo,
                           HSourceInterID: item.HSourceInterID,
                           HSourceEntryID: item.HSourceEntryID,
                           HBillType: this.hform.HBillType
                        },
                        success: (res) => {
                           if (res.data.count == 1) {
                              this.DisBillEntryList()
                           } else {
                              uni.showToast({
                                 title: res.data.Message,
                                 icon: 'none'
                              })
                           }
                        },
                        fail: (res) => {
                           console.log(res);
                           uni.showToast({
                              title: '接口请求失败',
                              icon: 'none'
                           })
                        }
                     });
                  }
               }
            });
         },
         //新增
         getNewData() {
            uni.request({
               url: this.serverUrl + '/WEBSController/GetMaxBillNoAndID_Json',
               data: {
                  HBillType: this.hform.HBillType
               },
               success: (res) => {
                  // console.log(res.data)
                  if (res.data.count == 1) {
                     this.hform.HInterID = res.data.data[0].HInterID
                     this.hform.HBillNo = res.data.data[0].HBillNo
                  } else {
                     uni.showToast({
                        title: res.data.Message,
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         //修改回填数据
         RoadBillMain(HInterID) {
            uni.request({
               url: this.serverUrl + '/WEBSController/GetSourceBill_Temp_Json',
               data: {
                  HInterID: HInterID,
                  HBillType: this.hform.HBillType
               },
               success: (res) => {
                  console.log(33, res.data.data[0]);
                  if (res.data.count == 1) {
                     var data = res.data.data[0]
                     this.hform.HInterID = data.HInterID
                     this.hform.HBillNo = data.HBillNo
                     this.hform.HMainSourceBillType = data.HSourceBillType
                     this.hform.HSourceBillNo = data.HSourceBillNo
                     let index = this.arrayHMainSourceBillValue.findIndex(e => e = data.HSourceBillType)
                     if (index != -1) {
                        this.HMainSourceBillType = this.arrayHMainSourceBillType[index]
                        this.hform.HMainSourceBillType = data.HSourceBillType
                        if (this.HMainSourceBillType != -1) {
                           this.showHSupName = false
                        }
                     }
                     // if (data.HSourceBillType == 1103) {
                     //    this.hform.HMainSourceBillType = 1103
                     //    this.HMainSourceBillType = '收料通知单'
                     //    this.showHSupName = false
                     // } else if (data.HSourceBillType == 1102) {
                     //    this.hform.HMainSourceBillType = 1102
                     //    this.HMainSourceBillType = '采购订单'
                     //    this.showHSupName = false
                     // } else {
                     //    this.hform.HMainSourceBillType = -1
                     //    this.HMainSourceBillType = '手工录入'
                     // }
                     this.showHMainSourceBillType = false
                     //非多源单模式
                     if (data.HMulSourceBill == 0) {
                        this.showHSourceBillNo = false
                     }
                     this.hform.HDeptID = data.HDeptID
                     this.hform.HDeptName = data.HDeptName
                     this.hform.HSupID = data.HCusID
                     this.hform.HSupName = data.HSupName
                     this.DisBillEntryList()
                     this.tabs = 2
                  } else {
                     uni.showToast({
                        title: '获取数据回填失败',
                        icon: 'none'
                     })
                  }
               },
               fail: (res) => {
                  console.log(res);
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                  })
               },
            });
         },
         addNew() {
            uni.redirectTo({
               url: '/pages/caigouruku/form?OperationType=1'
            })
         },
         submit() {
            //仓库、仓位、保管、验收、部门、供应商文本框为空时,清空对应ID
            if (!this.hform.HWHName) {
               this.hform.HWHID = 0
            }
            if (!this.hform.HStockPlaceName) {
               this.hform.HStockPlaceID = 0
            }
            if (!this.hform.HKeeperName) {
               this.hform.HKeeperID = 0
            }
            if (!this.hform.HSecManagerName) {
               this.hform.HSecManagerID = 0
            }
            if (!this.hform.HDeptName) {
               this.hform.HDeptID = 0
            }
            if (!this.hform.HSupName) {
               this.hform.HSupID = 0
            }
            if (this.hform.HInterID == 0 || !this.hform.HInterID) {
               uni.showToast({
                  title: '单据内码获取失败,错误的单据内码!',
                  icon: 'none'
               })
            } else if (!this.hform.HBillNo) {
               uni.showToast({
                  title: '单据号获取失败,错误的单据号!',
                  icon: 'none'
               })
            } else if (!this.Materlist || this.Materlist.length == 0) {
               uni.showToast({
                  title: '没有扫码信息,请先扫描条码,确认无误后再提交!',
                  icon: 'none'
               })
            } else {
               var s = 0;
               for (var i = 0; i < this.Materlist.length; i++) {
                  if (this.Materlist[i].数量 > 0) {
                     s = 1;
                  }
               }
               if (s == 0) {
                  uni.showToast({
                     title: '没有扫描物料条码,请先扫描物料条码,确认无误后再提交!',
                     icon: 'none'
                  })
               } else {
                  uni.showLoading({
                     title: '请稍候'
                  })
                  var sMainStr = JSON.stringify(this.hform);
                  uni.request({
                     url: this.serverUrl + '/WEBSController/set_SavePOStockInBill_Json',
                     method: 'POST',
                     dataType: "json",
                     data: {
                        oMain: sMainStr
                     },
                     success: (res) => {
                        console.log(1, res);
                        uni.hideLoading()
                        if (res.data.count == 1) {
                           uni.showModal({
                              title: '提示',
                              content: res.data.Message + '。是否继续新增?(点击取消返回上级页面)',
                              success: (res) => {
                                 if (res.confirm) {
                                    console.log('用户点击确定');
                                    uni.redirectTo({
                                       url: '/pages/caigouruku/form?OperationType=1'
                                    })
                                 } else if (res.cancel) {
                                    console.log('用户点击取消');
                                    setTimeout(() => {
                                       uni.navigateBack();
                                    }, 50)
                                 }
                              }
                           });
                        } else {
                           uni.showToast({
                              title: res.data.Message,
                              icon: 'none'
                           })
                        }
                     },
                     fail: (res) => {
                        console.log(res);
                        uni.showToast({
                           title: '接口请求失败',
                           icon: 'none'
                        })
                     },
                  });
               }
            }
         },
         goBack() {
            uni.showModal({
               title: '提示',
               content: '确认要退出当前页面吗?',
               success: (res) => {
                  if (res.confirm) {
                     console.log('用户点击确定');
                     uni.redirectTo({
                        url: '/pages/caigouruku/table'
                     })
                  } else if (res.cancel) {
                     console.log('用户点击取消');
                  }
               }
            });
         }
      }
   }
</script>
<style lang="scss" scoped>
    .form {
        width: 668rpx;
        margin: 20rpx auto;
        padding-bottom: 240rpx;
    }
   .form {
      width: 668rpx;
      margin: 20rpx auto;
      padding-bottom: 240rpx;
   }
    .tab_area {
        width: 100%;
        height: 50rpx;
    }
   .tab_area {
      width: 100%;
      height: 50rpx;
   }
    .other {
        margin-top: 8rpx;
        text-align: center;
        font-size: 28rpx;
        padding: 4rpx 18rpx;
        color: #1890FF;
    }
   .other {
      margin-top: 8rpx;
      text-align: center;
      font-size: 28rpx;
      padding: 4rpx 18rpx;
      color: #1890FF;
   }
    .tabs {
        width: 100%;
        display: flex;
        border-bottom: 1px solid #ddd;
        margin: 20rpx 0;
   .tabs {
      width: 100%;
      display: flex;
      border-bottom: 1px solid #ddd;
      margin: 20rpx 0;
        view {
            width: 25%;
            font-size: 30rpx;
            color: #555;
            text-align: center;
            padding: 16rpx 0;
        }
      view {
         width: 25%;
         font-size: 30rpx;
         color: #555;
         text-align: center;
         padding: 16rpx 0;
      }
        .on {
            color: #3a78ff;
            font-weight: bold;
            border-bottom: 3px solid #3a78ff;
        }
    }
      .on {
         color: #3a78ff;
         font-weight: bold;
         border-bottom: 3px solid #3a78ff;
      }
   }
    .form-item {
        display: flex;
        align-items: center;
        font-size: 30rpx;
        padding: 6rpx 0;
   .form-item {
      display: flex;
      align-items: center;
      font-size: 30rpx;
      padding: 6rpx 0;
        .title {
            width: 208rpx;
      .title {
         width: 208rpx;
            text {
                color: red;
                font-weight: bold;
            }
        }
         text {
            color: red;
            font-weight: bold;
         }
      }
        .right {
            width: 450rpx;
            border-radius: 22rpx;
            border: 1px solid #acacac;
        }
      .right {
         width: 450rpx;
         border-radius: 22rpx;
         border: 1px solid #acacac;
      }
        .righton {
            width: 450rpx;
            border-radius: 22rpx;
            border: 1px solid #e4e4e4;
            background-color: #e4e4e4;
        }
      .righton {
         width: 450rpx;
         border-radius: 22rpx;
         border: 1px solid #e4e4e4;
         background-color: #e4e4e4;
      }
        input {
            width: 100%;
            padding: 8rpx 20rpx;
            font-size: 30rpx;
        }
      input {
         width: 100%;
         padding: 8rpx 20rpx;
         font-size: 30rpx;
      }
        textarea {
            width: 98%;
            padding: 8rpx 20rpx;
            font-size: 30rpx;
        }
      textarea {
         width: 98%;
         padding: 8rpx 20rpx;
         font-size: 30rpx;
      }
    }
   }
    .bottom-btn {
        box-sizing: border-box;
        width: 100%;
        // height: 120rpx;
        position: fixed;
        bottom: 0;
        left: 0;
        background-color: #fff;
        box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
        padding: 30rpx 40rpx 40rpx 40rpx;
        display: flex;
        flex-direction: row;
        gap: 10rpx;
   .bottom-btn {
      box-sizing: border-box;
      width: 100%;
      // height: 120rpx;
      position: fixed;
      bottom: 0;
      left: 0;
      background-color: #fff;
      box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
      padding: 30rpx 40rpx 40rpx 40rpx;
      display: flex;
      flex-direction: row;
      gap: 10rpx;
        button {
            border-radius: 50rpx;
            width: 180rpx;
            height: 66rpx;
            line-height: 66rpx;
            font-size: 28rpx;
        }
      button {
         border-radius: 50rpx;
         width: 180rpx;
         height: 66rpx;
         line-height: 66rpx;
         font-size: 28rpx;
      }
        .btn-a {
            background-color: #3A78FF;
            color: #fff;
        }
      .btn-a {
         background-color: #3A78FF;
         color: #fff;
      }
        .btn-b {
            background-color: #41a863;
            color: #fff;
        }
      .btn-b {
         background-color: #41a863;
         color: #fff;
      }
        .btn-c {
            background-color: #acacac;
            color: #fff;
        }
      .btn-c {
         background-color: #acacac;
         color: #fff;
      }
        .btn-d {
            background-color: #ff8901;
            color: #fff;
        }
    }
      .btn-d {
         background-color: #ff8901;
         color: #fff;
      }
   }
    .list {
        width: 100%;
   .list {
      width: 100%;
        .card-detail {
            width: 100%;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            line-height: 120%;
      .card-detail {
         width: 100%;
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
         line-height: 120%;
            .detail {
                // width: 50%;
                font-size: 26rpx;
                margin-bottom: 12rpx;
                color: #555;
                margin-right: 20rpx;
         .detail {
            // width: 50%;
            font-size: 26rpx;
            margin-bottom: 12rpx;
            color: #555;
            margin-right: 20rpx;
                text {
                    color: #999;
                    font-size: 26rpx;
                }
            }
        }
            text {
               color: #999;
               font-size: 26rpx;
            }
         }
      }
        .more {
            color: #888;
            font-size: 24rpx;
            display: flex;
            border-top: 1px solid #eee;
            padding-top: 20rpx;
      .more {
         color: #888;
         font-size: 24rpx;
         display: flex;
         border-top: 1px solid #eee;
         padding-top: 20rpx;
            .part {
                width: 50%;
                text-align: center;
            }
        }
    }
         .part {
            width: 50%;
            text-align: center;
         }
      }
   }
</style>