陈婷婷
2026-01-28 70051418ff34b3d843cc0b02c1a0d96a609baaa9
src/views/sell/XsSeOutStockBill.vue
@@ -1,74 +1,38 @@
<template>
  <div style="padding: 10px">
    <el-form
      :model="queryParams"
      ref="queryForm"
      size="small"
      :inline="true"
      label-width="78px"
      class="searchBox"
    >
  <div style="padding: 10px; position: relative;">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="78px" class="searchBox">
      <el-row>
        <el-form-item label="日期" style="margin-left: 100px">
          <el-date-picker
            v-model="dateRange"
            value-format="yyyy-MM-dd"
            type="daterange"
            range-separator="-"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
          ></el-date-picker>
        <el-form-item label="开始日期" style="margin-left: 100px">
          <el-date-picker v-model="sTime" type="date" placeholder="开始日期" style="width: 150px"
            :disabled="queryParams.HInitTimeCycle != -1" value-format="yyyy-MM-dd">
          </el-date-picker>
        </el-form-item>
        <el-form-item label="结束日期">
          <el-date-picker v-model="eTime" type="date" placeholder="结束日期" style="width: 150px"
            :disabled="queryParams.HInitTimeCycle != -1" value-format="yyyy-MM-dd">
          </el-date-picker>
        </el-form-item>
        <el-form-item label="日期间隔">
          <el-select
            v-model="queryParams.HInitTimeCycle"
            placeholder="请选择"
            @change="riqiChange"
          >
            <el-option
              v-for="(item, index) in rqsgList"
              :key="index"
              :label="item.label"
              :value="item.value"
            >
          <el-select v-model="queryParams.HInitTimeCycle" placeholder="请选择" @change="riqiChange">
            <el-option v-for="(item, index) in rqsgList" :key="index" :label="item.label" :value="item.value">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="单据号" prop="HBillNo">
          <el-input
            v-model="queryParams.HBillNo"
            placeholder="请输入单据号"
            @keyup.enter.native="handleQuery"
          />
          <el-input v-model="queryParams.HBillNo" placeholder="请输入单据号" @keyup.enter.native="handleQuery" />
        </el-form-item>
        <el-form-item label="项目编号" prop="HProjectNumber">
          <el-input
            v-model="queryParams.HProjectNumber"
            placeholder="请输入项目编号"
            @keyup.enter.native="handleQuery"
          />
          <el-input v-model="queryParams.HProjectNumber" placeholder="请输入项目编号" @keyup.enter.native="handleQuery" />
        </el-form-item>
        <el-form-item label="组织">
          <el-select
            v-model="queryParams.HOrgID"
            placeholder="请选择"
            class="ForFilteringSchemes"
          >
            <el-option
              v-for="(item, index) in organizationList"
              :key="item.ID"
              :label="item.Name"
              :value="item.ID.toString()"
            >
          <el-select v-model="queryParams.HOrgID" placeholder="请选择" class="ForFilteringSchemes">
            <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name"
              :value="item.ID.toString()">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="单据号" prop="HBillNo2">
          <el-input
            v-model="form.HBillNo2"
            placeholder="请输入同步单据号"
            @keyup.enter.native="BillSync"
          >
          <el-input v-model="form.HBillNo2" placeholder="请输入同步单据号" @keyup.enter.native="BillSync">
            <el-button slot="append" @click="BillSync">重新同步</el-button>
          </el-input>
        </el-form-item>
@@ -77,25 +41,13 @@
      <el-collapse v-model="activeSeach">
        <el-collapse-item title="更多" name="1">
          <el-form-item label="客户" prop="HCusID">
            <el-input
              v-model="queryParams.HCusID"
              placeholder="请输入客户"
              @keyup.enter.native="handleQuery"
            />
            <el-input v-model="queryParams.HCusID" placeholder="请输入客户" @keyup.enter.native="handleQuery" />
          </el-form-item>
          <el-form-item label="部门" prop="HDeptID">
            <el-input
              v-model="queryParams.HDeptID"
              placeholder="请输入部门"
              @keyup.enter.native="handleQuery"
            />
            <el-input v-model="queryParams.HDeptID" placeholder="请输入部门" @keyup.enter.native="handleQuery" />
          </el-form-item>
          <el-form-item label="主管" prop="HMangerID">
            <el-input
              v-model="queryParams.HMangerID"
              placeholder="请输入主管"
              @keyup.enter.native="handleQuery"
            />
            <el-input v-model="queryParams.HMangerID" placeholder="请输入主管" @keyup.enter.native="handleQuery" />
          </el-form-item>
          <el-card class="box-card">
            <div slot="header" class="clearfix"><span>过滤</span></div>
@@ -103,132 +55,69 @@
              <el-row>
                <el-form-item label-width="0">
                  <el-col :span="7">
                    <el-select
                      v-model="queryParams.ColName1"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                    <el-select v-model="queryParams.ColName1" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <span v-for="(item, index) in btList" :key="index">
                        <el-option
                          :label="item.field"
                          :value="item.field"
                          v-if="!item.hide"
                        ></el-option>
                        <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
                      </span>
                    </el-select>
                  </el-col>
                  <el-col :span="6" style="padding: 0 10px">
                    <el-select
                      v-model="queryParams.Comparator1"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                      <el-option
                        v-for="(item, index) in comparatorList"
                        :key="index"
                        :label="item.label"
                        :value="item.value"
                      ></el-option>
                    <el-select v-model="queryParams.Comparator1" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label"
                        :value="item.value"></el-option>
                    </el-select>
                  </el-col>
                  <el-col :span="11">
                    <el-input
                      v-model="queryParams.ColContent1"
                      placeholder="请输入"
                      clearable
                      @keyup.enter.native="handleQuery"
                      class="ForFilteringSchemes"
                    />
                    <el-input v-model="queryParams.ColContent1" placeholder="请输入" clearable
                      @keyup.enter.native="handleQuery" class="ForFilteringSchemes" />
                  </el-col>
                </el-form-item>
              </el-row>
              <el-row>
                <el-form-item label-width="0">
                  <el-col :span="7">
                    <el-select
                      v-model="queryParams.ColName2"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                    <el-select v-model="queryParams.ColName2" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <span v-for="(item, index) in btList" :key="index">
                        <el-option
                          :label="item.field"
                          :value="item.field"
                          v-if="!item.hide"
                        ></el-option>
                        <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
                      </span>
                    </el-select>
                  </el-col>
                  <el-col :span="6" style="padding: 0 10px">
                    <el-select
                      v-model="queryParams.Comparator2"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                    <el-select v-model="queryParams.Comparator2" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <span v-for="(item, index) in btList" :key="index">
                        <el-option
                          :label="item.field"
                          :value="item.field"
                          v-if="!item.hide"
                        ></el-option>
                        <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
                      </span>
                    </el-select>
                  </el-col>
                  <el-col :span="11">
                    <el-input
                      v-model="queryParams.ColContent2"
                      placeholder="请输入"
                      clearable
                      @keyup.enter.native="handleQuery"
                      class="ForFilteringSchemes"
                    />
                    <el-input v-model="queryParams.ColContent2" placeholder="请输入" clearable
                      @keyup.enter.native="handleQuery" class="ForFilteringSchemes" />
                  </el-col>
                </el-form-item>
              </el-row>
              <el-row>
                <el-form-item label-width="0">
                  <el-col :span="7">
                    <el-select
                      v-model="queryParams.ColName"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                      <el-option
                        v-for="(item, index) in btList"
                        :key="index"
                        :label="item.field"
                        :value="item.field"
                      ></el-option>
                    <el-select v-model="queryParams.ColName" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <el-option v-for="(item, index) in btList" :key="index" :label="item.field"
                        :value="item.field"></el-option>
                    </el-select>
                  </el-col>
                  <el-col :span="6" style="padding: 0 10px">
                    <el-select
                      v-model="queryParams.Comparator"
                      placeholder="请选择"
                      @change="riqiChange"
                      class="ForFilteringSchemes"
                    >
                      <el-option
                        v-for="(item, index) in comparatorList"
                        :key="index"
                        :label="item.label"
                        :value="item.value"
                      ></el-option>
                    <el-select v-model="queryParams.Comparator" placeholder="请选择" @change="riqiChange"
                      class="ForFilteringSchemes">
                      <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label"
                        :value="item.value"></el-option>
                    </el-select>
                  </el-col>
                  <el-col :span="11">
                    <el-input
                      v-model="queryParams.ColContent"
                      placeholder="请输入"
                      clearable
                      @keyup.enter.native="handleQuery"
                      class="ForFilteringSchemes"
                    />
                    <el-input v-model="queryParams.ColContent" placeholder="请输入" clearable
                      @keyup.enter.native="handleQuery" class="ForFilteringSchemes" />
                  </el-col>
                </el-form-item>
              </el-row>
@@ -239,11 +128,8 @@
      <el-form-item label-width="78px">
        <el-button type="primary" size="small" icon="el-icon-search" @click="handleQuery">
          搜 索</el-button
        >
        <el-button icon="el-icon-circle-close" size="small" @click="searchOpen = false"
          >取 消</el-button
        >
          搜 索</el-button>
        <el-button icon="el-icon-circle-close" size="small" @click="searchOpen = false">取 消</el-button>
      </el-form-item>
    </el-form>
@@ -259,45 +145,29 @@
        >
      </el-col> -->
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-plus"
          size="mini"
          @click="handleAddEdit((OperationType = 1))"
          id="btn-Add"
          >新增</el-button
        >
        <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAddEdit((OperationType = 1))"
          id="btn-Add">新增</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
          @click="handleEdit((row = rowForm), (OperationType = 3), (copyType = -1))">编辑</el-button>
      </el-col>
      <!-- <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleEdit((row = rowForm), (OperationType = 3))"
          >编辑</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleEdit((row = rowForm), (OperationType = 2))"
          @click="handleEdit((row = rowForm), (OperationType = 2), (copyType = 1))"
          >复制</el-button
        >
      </el-col>
      -->
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-delete"
          size="mini"
          :disabled="single"
          @click="handleDelete"
          >删除
        <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single" @click="handleDelete">删除
        </el-button>
      </el-col>
      <!--
      <el-col :span="1.5">
        <el-button
          type="primary"
@@ -317,7 +187,7 @@
          @click="set_CheckBill(2, (form = rowForm))"
          >反审核</el-button
        >
      </el-col>
      </el-col> -->
      <!-- <el-col :span="1.5">
        <el-button
          type="success"
@@ -340,7 +210,7 @@
          >反禁用</el-button
        >
      </el-col> -->
      <el-col :span="1.5">
      <!-- <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-edit"
@@ -399,27 +269,15 @@
          @click="set_DropBill(2, (form = rowForm))"
          >反作废</el-button
        >
      </el-col>
      </el-col> -->
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-download"
          size="mini"
          @click="handleExport"
          >导出</el-button
        >
        <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport">导出</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-download"
          size="mini"
          @click="handleRowHide"
          >隐藏列设置</el-button
        >
        <el-button type="primary" icon="el-icon-download" size="mini" @click="handleRowHide">隐藏列设置</el-button>
      </el-col>
      <el-col :span="1.5">
      <!-- <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-help" size="mini" @click="handleSearch"
          >搜 索</el-button
        >
@@ -428,92 +286,42 @@
        <el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery"
          >重 置</el-button
        >
      </el-col>
      </el-col> -->
      <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
    </el-row>
    <div class="tableBox" v-loading="loading">
      <el-table
        :data="tableData"
        ref="tableData"
        max-height="750"
        :summary-method="getSummaries"
        @selection-change="handleSelectionChange"
        show-summary
        border
        @row-click="handleRowClick"
        :row-style="rowStyle"
        @cell-dblclick="handleDblclick"
        v-if="tableShow"
      >
      <el-table :data="tableData" ref="tableData" max-height="750" :summary-method="getSummaries"
        @selection-change="handleSelectionChange" show-summary border @row-click="handleRowClick" :row-style="rowStyle"
        @cell-dblclick="handleDblclick" v-if="tableShow">
        <template v-for="(item, index) in btList">
          <el-table-column
            type="selection"
            width="55"
            align="center"
            :fixed="item.fixed"
            v-if="item.type == 'checkbox'"
            :key="index"
          />
          <el-table-column
            :align="item.align"
            :prop="item.field"
            :label="item.title"
            :width="item.width"
            :key="item.sorderid"
            v-else-if="!item.hide && item.type != 'checkbox'"
            :sortable="item.sort"
            show-overflow-tooltip
            :fixed="item.fixed"
          >
          <el-table-column type="selection" width="55" align="center" :fixed="item.fixed" v-if="item.type == 'checkbox'"
            :key="index" />
          <el-table-column :align="item.align" :prop="item.field" :label="item.title" :width="item.width"
            :key="item.sorderid" v-else-if="!item.hide && item.type != 'checkbox'" :sortable="item.sort"
            show-overflow-tooltip :fixed="item.fixed">
            <template slot-scope="{ row, column }">
              <el-checkbox v-model="checked" v-if="item.type == 'checkbox'"></el-checkbox>
              <div :style="item.style">
                <span v-if="column.property.includes('日期')">{{
                  parseTime(row[column.property], "{y}-{m}-{d}")
                }}</span>
                <el-button
                  type="text"
                  @click="handleEdit(row, (OperationType = 3))"
                  v-else-if="column.property == '单据号'"
                  >{{ row.单据号 }}</el-button
                >
                <el-button type="text" @click.stop="handleEdit(row, (OperationType = 3), (copyType = 1))"
                  v-else-if="column.property == '单据号'">{{ row.单据号 }}</el-button>
                <span v-else>{{ row[column.label] }}</span>
              </div>
            </template>
          </el-table-column>
        </template>
      </el-table>
      <pagination
        v-show="total > 0"
        :total="total"
        :page.sync="page"
        :limit.sync="pageSize"
        :pageSizes="pageSizes"
        @pagination="getList"
      />
      <el-dialog
        title="隐藏列设置"
        :visible.sync="openRowHide"
        width="816px"
        append-to-body
      >
        <RowSettings
          :colName="btResList"
          :HModName="HModName"
          @rowEditClose="rowSetClose"
          v-if="rowHideShow"
        />
      <pagination v-show="total > 0" :total="total" :page.sync="page" :limit.sync="pageSize" :pageSizes="pageSizes"
        @pagination="getList" />
      <el-dialog title="隐藏列设置" :visible.sync="openRowHide" width="816px" append-to-body>
        <RowSettings :colName="btResList" :HModName="HModName" @rowEditClose="rowSetClose" v-if="rowHideShow" />
      </el-dialog>
      <!-- 编辑 -->
      <el-dialog
        title="编辑职员"
        :visible.sync="openEdit"
        width="1480px"
        append-to-body
        class="xsckdBox"
        :before-close="close"
      >
        <edit
      <el-dialog title="编辑发货通知单" :visible.sync="openEdit" width="1480px" append-to-body class="xsckdBox"
        :before-close="close">
        <!-- <edit
          :OperationType="OperationType"
          :linterid="this.rowForm.HItemID"
          :HSouceBillType="this.rowForm.HSourceBillType"
@@ -521,94 +329,44 @@
          :copyType="copyType"
          @editCloseGy="editGyClose"
          v-if="editShow"
        />
        /> -->
        <div style="height: 70vh" v-if="openEdit">
          <iframe :src="iframeUrl" frameborder="0" width="100%" height="100%"></iframe>
        </div>
      </el-dialog>
      <el-dialog
        :title="upload.title"
        :visible.sync="upload.open"
        width="1500px"
        append-to-body
      >
      <el-dialog :title="upload.title" :visible.sync="upload.open" width="1500px" append-to-body>
        <div style="margin-top: -20px">
          <el-button type="primary" @click="set_AddNew">导入数据</el-button>
          <el-button type="primary" @click="upload.open = false">退 出</el-button>
          <el-upload
            ref="upload"
            :limit="1"
            accept=".xlsx, .xls"
            style="display: inline-block; margin-left: 10px"
            :action="upload.url + '?updateSupport=' + upload.updateSupport"
            :disabled="upload.isUploading"
            :on-progress="handleFileUploadProgress"
            :on-success="handleFileSuccess"
          >
          <el-upload ref="upload" :limit="1" accept=".xlsx, .xls" style="display: inline-block; margin-left: 10px"
            :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
            :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess">
            <el-button type="primary">文件上传</el-button>
          </el-upload>
        </div>
        <el-table
          :data="uploadData"
          v-loading="uploadTableLoading"
          :row-class-name="uploadDataIndex"
          border
          height="550"
        >
        <el-table :data="uploadData" v-loading="uploadTableLoading" :row-class-name="uploadDataIndex" border
          height="550">
          <el-table-column type="index" label="序号" width="55" align="center" />
          <el-table-column label="组织代码" prop="组织代码" align="center" width="120" />
          <el-table-column label="组织名称" prop="组织名称" align="center" width="120" />
          <el-table-column
            label="生产资源名称"
            prop="生产资源名称"
            align="center"
            width="120"
          />
          <el-table-column
            label="生产资源代码"
            prop="生产资源代码"
            align="center"
            width="120"
          />
          <el-table-column label="生产资源名称" prop="生产资源名称" align="center" width="120" />
          <el-table-column label="生产资源代码" prop="生产资源代码" align="center" width="120" />
          <el-table-column label="部门代码" prop="部门代码" align="center" width="120" />
          <el-table-column label="部门名称" prop="部门名称" align="center" width="120" />
          <el-table-column
            label="负责人代码"
            prop="负责人代码"
            align="center"
            width="120"
          />
          <el-table-column label="负责人代码" prop="负责人代码" align="center" width="120" />
          <el-table-column label="负责人" prop="负责人" align="center" width="120" />
          <el-table-column
            label="工作中心代码"
            prop="工作中心代码"
            align="center"
            width="120"
          />
          <el-table-column
            label="工作中心名称"
            prop="工作中心名称"
            align="center"
            width="120"
          />
          <el-table-column label="工作中心代码" prop="工作中心代码" align="center" width="120" />
          <el-table-column label="工作中心名称" prop="工作中心名称" align="center" width="120" />
          <el-table-column label="单班工时" prop="单班工时" align="center" width="120" />
          <el-table-column label="操作" align="center">
            <template slot-scope="scope">
              <el-button
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="uploadDataDelete(scope.row)"
                >删除</el-button
              >
              <el-button size="mini" type="text" icon="el-icon-delete"
                @click="uploadDataDelete(scope.row)">删除</el-button>
            </template>
          </el-table-column>
        </el-table>
        <pagination
          v-show="uploadTotal > 0"
          :total="uploadTotal"
          :page.sync="uploadPage"
          :limit.sync="uploadPageSize"
          :pageSizes="uploadPageSizes"
          @pagination="currentPage"
        />
        <pagination v-show="uploadTotal > 0" :total="uploadTotal" :page.sync="uploadPage" :limit.sync="uploadPageSize"
          :pageSizes="uploadPageSizes" @pagination="currentPage" />
      </el-dialog>
    </div>
  </div>
@@ -620,15 +378,18 @@
import dayjs from "dayjs";
export default {
  name: "GySource",
  name: "XsSeOutStockBill",
  components: { RowSettings },
  props: {
    openPage: { type: String },
    openType: { type: String },
    propsHOrgID: {},
  },
  data() {
    return {
      iframeUrl: "",
      activeSeach: "",
      HModName: "Cg_POOrderBillList",
      HModName: "XsSeOutStockBill",
      editShow: false,
      openEdit: false,
      totalNameList: [],
@@ -637,7 +398,7 @@
      openPrintList: false,
      printListShow: false,
      HClassTag: "ForFilteringSchemes", //过滤条件的class类
      HBillType: "1202",
      HBillType: "1402",
      openBtnHide: false,
      btnHideShow: false,
      rowHideShow: false,
@@ -669,6 +430,7 @@
        { label: "近30天", value: 29 },
        { label: "近半年", value: 180 },
        { label: "近一年", value: 365 },
        { label: "任意间隔", value: -1 },
      ],
      hPriceTypeList: ["成本价", "结算价"],
      addBtnShow: false,
@@ -687,12 +449,12 @@
      OperationType: null, //保存类型(新增1修改3)
      HInterID: null,
      baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
      user: "admin",
      currentRow: [],
      lastSelectedRowIndex: null, // 用于记录上次点击的行索引
      lastSelectedRow: null, // 上一次选中的行
      selectedRow: null, // 当前选中的行
      rowForm: {},
      selRowList: [],//选择行数据
      checkedSysZb: [],
      editData: [], //生产资料子表
      editBtData: [], //子表表头
@@ -706,7 +468,7 @@
      dateRange: [],
      // 查询参数
      queryParams: {
        HOrgID: sessionStorage.getItem("OrganizationID"),
        HOrgID: sessionStorage["OrganizationID"],
        HName: null,
        HNumber: null,
        Comparator1: "",
@@ -736,7 +498,14 @@
      btResList: [],
      tableData: [], //收料通知单列表(分页显示)
      dataList: [],
      titleData: ["HItemID", "Hprocid", "HUSEORGID", "HCREATEORGID", "HParentID"], //不需要显示的字段 可扩展
      titleData: [
        "HItemID",
        "hmainid",
        "Hprocid",
        "HUSEORGID",
        "HCREATEORGID",
        "HParentID",
      ], //不需要显示的字段 可扩展
      pageSizes: [50, 100, 500, 5000, 50000],
      page: 1,
      pageSize: 50,
@@ -773,15 +542,22 @@
      uploadTotal: 0,
    };
  },
  mounted() {},
  mounted() {
    window.editGyClose = () => {
      this.editGyClose(); // 组件内的方法绑定到windows
    };
  },
  created() {
    this.queryParams.HOrgID = sessionStorage["OrganizationID"];
    this.riqiChange();
    this.getList();
  },
  beforeDestroy() {
    // 组件销毁时清理全局方法,避免内存泄漏
    delete window.editGyClose;
  },
  methods: {
    BillSync() {
      axios.get(`${this.baseURL}/Xs_SeOutStockBill/Xs_SeOutStockBillViewApi`, {
      axios.get(`${this.$baseUrl}/Xs_SeOutStockBill/Xs_SeOutStockBillViewApi`, {
        params: { HBillNo: this.form.HBillNo2, BillType: 1402 },
      });
    },
@@ -825,7 +601,7 @@
    defaintOperationByCompanyName() {
      var result = false;
      axios
        .get(this.baseURL + "/Xt_getInfo/getCompanyName")
        .get(this.$baseUrl + "/Xt_getInfo/getCompanyName")
        .then((res) => {
          var data1 = res.data;
          if (data1.count == 1) {
@@ -860,6 +636,9 @@
      this.getList();
    },
    riqiChange() {
      if (this.queryParams.HInitTimeCycle == -1) {
        return;
      }
      const end = new Date();
      const start = new Date();
      start.setTime(start.getTime() - 3600 * 1000 * 24 * this.queryParams.HInitTimeCycle);
@@ -917,25 +696,25 @@
      if (this.pageSize == 0) {
        this.pageSize = 50;
      }
      if (this.openPage && this.propsHOrgID) {
        this.queryParams.HOrgID = this.propsHOrgID
      }
      // this.queryParams.HOrgID = 100038
      // this.sWhere += ` and CONVERT(varchar(100),日期, 23) >= '2020-01-01' and CONVERT(varchar(100),日期, 23) <= '2030-01-01'`;
      // 收料通知单列表
      if (this.dateRange.length > 0) {
        this.sWhere +=
          " and CONVERT(varchar(100),日期, 23) >= '" + this.dateRange[0] + "'";
        this.sWhere +=
          " and CONVERT(varchar(100),日期, 23) <= '" + this.dateRange[1] + "'";
      if (this.sTime && this.eTime) {
        this.sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + this.sTime + "'";
        this.sWhere += " and CONVERT(varchar(100),日期, 23) <= '" + this.eTime + "'";
      }
      let Organization = this.organizationList.find(
        (e) => (e.ID = this.queryParams.HOrgID)
        (e) => e.ID == this.queryParams.HOrgID
      )?.Name;
      try {
        let res = await axios.get(this.baseURL + "/Xs_SeOutStockBill/list_byPage", {
        let res = await axios.get(this.$baseUrl + "/Xs_SeOutStockBill/list_byPage", {
          params: {
            sWhere: this.sWhere,
            user: this.user,
            user: sessionStorage["HUserName"],
            Organization: Organization,
            page: this.page,
            size: this.pageSize,
@@ -1024,7 +803,12 @@
            }
          }
          option.data = result;
          this.DisPlay_HideColumn(this.HModName, this.user, option, this.dataList);
          this.DisPlay_HideColumn(
            this.HModName,
            sessionStorage["HUserName"],
            option,
            this.dataList
          );
        }
      } catch (err) {
        this.$modal.msgError(`获取收料通知单错误: ${err}`);
@@ -1033,7 +817,7 @@
    DisPlay_HideColumn(HModName, user, option, dataOption) {
      this.totalNameList = [];
      axios
        .get(this.baseURL + "/Xt_grdAlignment_WMES/grdAlignmentWMESList", {
        .get(this.$baseUrl + "/Xt_grdAlignment_WMES/grdAlignmentWMESList", {
          params: {
            HModName: HModName,
            user: user,
@@ -1181,27 +965,31 @@
      this.selectedRow = row; // 记录当前选中的行
      this.lastSelectedRowIndex = this.tableData.indexOf(row);
      this.$refs.tableData.toggleRowSelection(row);
      if (this.openPage) {
        this.$emit('deptEmit', this.selRowList, 12)
      }
    },
    //选中行高亮样式
    rowStyle({ row, rowIndex }) {
      if (this.ids.includes(row.HItemID)) {
      if (this.ids.includes(row.hmainid)) {
        return { background: "#ecf5ff" };
      }
    },
    //双击行
    handleDblclick(row, column, cell, event) {
      this.OperationType = 3;
      this.handleEdit();
      this.handleEdit(row, 3, 1);
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      // this.rowForm = {}
      this.ids = selection.map((item) => item.HItemID);
      this.ids = selection.map((item) => item.hmainid);
      this.single = selection.length != 1;
      this.multiple = !selection.length;
      if (!this.single) {
        this.rowForm = selection[0];
      }
      this.selRowList = selection
    },
    //打开侧边搜索弹窗
    handleSearch() {
@@ -1280,6 +1068,7 @@
        }
        this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
      }
      if (this.queryParams.HBillNo) {
        this.sWhere += " and 单据号 like '%" + this.queryParams.HNumber + "%'";
      }
@@ -1316,7 +1105,7 @@
      var sWhere = "";
      //this.openPage判断是否有值,有代表其它页面通过选择按钮打开
      if (this.openPage) {
        sWhere += " and 禁用标记 != 'Y' and ISNULL(审核人,'')  != ''";
        sWhere += "  and ISNULL(审核人,'')  != ''";
        return sWhere;
      }
      return sWhere;
@@ -1325,10 +1114,10 @@
    getOrgIDByUser() {
      var res = "";
      axios
        .get(this.baseURL + "/Xt_User/getOrgIDListByUser", {
        .get(this.$baseUrl + "/Xt_User/getOrgIDListByUser", {
          params: {
            HModName: this.HModName,
            user: this.user,
            user: sessionStorage["HUserName"],
            HOrgID: this.zuzhiId,
          },
        })
@@ -1383,13 +1172,15 @@
    //打开新增组件弹窗
    handleAddEdit() {
      this.rowForm.HItemID = 0;
      this.iframeUrl = `/iframe/XsSeOutStockBillEdit?HInterID=${0}&OperationType=${1}&copyType=${-1}`;
      this.$nextTick(() => {
        this.openEdit = true;
        this.editShow = true;
      });
    },
    //打开修改组件弹窗
    handleEdit() {
    handleEdit(row, OperationType, copyType) {
      this.iframeUrl = `/iframe/XsSeOutStockBillEdit?HInterID=${row.hmainid}&OperationType=${OperationType}&copyType=${copyType}`;
      this.$nextTick(() => {
        this.openEdit = true;
        this.editShow = true;
@@ -1408,14 +1199,14 @@
        .then(() => {
          if (!this.rowForm.审核人) {
            axios
              .get(this.baseURL + "/Xs_SeOutStockBill/DeltetSeOutStockBill", {
              .get(this.$baseUrl + "/Xs_SeOutStockBill/DeltetSeOutStockBill", {
                params: {
                  HInter: this.rowForm.hmainid.toString(),
                  HsupId: this.rowForm.HsupId,
                  HQty: this.rowForm.HQty,
                  HSourceInterID: this.rowForm.HSourceInterID,
                  HSourceEntryID: this.rowForm.HSourceEntryID,
                  user: this.user,
                  user: sessionStorage["HUserName"],
                },
              })
              .then((res) => {
@@ -1433,15 +1224,19 @@
            this.$modal.msgError("此条数据不是创建状态,无法删除!");
          }
        })
        .catch(() => {});
        .catch(() => { });
    },
    // 反审核/审核数据
    set_CheckBill(num, form) {
      var InterID = form.HItemID || form.HInterID || form.hmainid;
      //逻辑审核方法
      axios
        .get(this.baseURL + "/Xs_SeOutStockBill/CheckXs_SeOutStockBill", {
          params: { HInterID: InterID, TypeError: num, CurUserName: this.user },
        .get(this.$baseUrl + "/Xs_SeOutStockBill/CheckXs_SeOutStockBill", {
          params: {
            HInterID: InterID,
            TypeError: num,
            CurUserName: sessionStorage["HUserName"],
          },
        })
        .then((res) => {
          let result = res.data;
@@ -1461,12 +1256,12 @@
      let HInterID = form.HItemID || form.HInterID || form.hmainid;
      try {
        let res = await axios.get(
          `${this.baseURL}/Xs_SeOutStockBill/CloseXs_SeOutStockBill`,
          `${this.$baseUrl}/Xs_SeOutStockBill/CloseXs_SeOutStockBill`,
          {
            params: {
              HInterID: HInterID,
              Type: num,
              user: this.user,
              user: sessionStorage["HUserName"],
            },
          }
        );
@@ -1488,13 +1283,13 @@
      let HEntryID = form.HEntryID || form.hsubid;
      try {
        let res = await axios.get(
          `${this.baseURL}/Xs_SeOutStockBill/CloseRowXs_SeOutStockBill`,
          `${this.$baseUrl}/Xs_SeOutStockBill/CloseRowXs_SeOutStockBill`,
          {
            params: {
              HInterID: HInterID,
              HEntryID: HEntryID,
              ISAudit: num,
              CurUserName: this.user,
              CurUserName: sessionStorage["HUserName"],
            },
          }
        );
@@ -1515,12 +1310,12 @@
      let HInterID = form.HItemID || form.HInterID || form.hmainid;
      try {
        let res = await axios.get(
          `${this.baseURL}/Xs_SeOutStockBill/CancellXs_SeOutStockBill`,
          `${this.$baseUrl}/Xs_SeOutStockBill/CancellXs_SeOutStockBill`,
          {
            params: {
              HInterID: HInterID,
              Type: num,
              user: this.user,
              user: sessionStorage["HUserName"],
            },
          }
        );
@@ -1541,8 +1336,12 @@
      var InterID = form.HItemID || form.HInterID;
      //逻辑审核方法
      axios
        .get(this.baseURL + "/Gy_Employee/StopGy_Employee", {
          params: { HInterID: InterID, IsStop: num, CurUserName: this.user },
        .get(this.$baseUrl + "/Gy_Employee/StopGy_Employee", {
          params: {
            HInterID: InterID,
            IsStop: num,
            CurUserName: sessionStorage["HUserName"],
          },
        })
        .then((res) => {
          let result = res.data;
@@ -1589,8 +1388,8 @@
      } else {
        this.$alert(
          "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
            res.Message +
            "</div>",
          res.Message +
          "</div>",
          "导入结果",
          { dangerouslyUseHTMLString: true }
        );
@@ -1608,10 +1407,10 @@
        }
      }
      var sSubStr = JSON.stringify(num);
      var sMainSub = sSubStr + "&和" + this.user;
      var sMainSub = sSubStr + "&和" + sessionStorage["HUserName"];
      axios({
        method: "post",
        url: this.baseURL + "/Gy_Source/Gy_Source_btnSave",
        url: this.$baseUrl + "/Gy_Source/Gy_Source_btnSave",
        data: {
          sMainSub: sMainSub,
        },
@@ -1619,8 +1418,8 @@
        .then((res) => {
          this.$alert(
            "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
              res.data.Message +
              "</div>",
            res.data.Message +
            "</div>",
            "导入结果",
            { dangerouslyUseHTMLString: true }
          );
@@ -1644,7 +1443,7 @@
            return deleteList.indexOf(item.index) == -1;
          });
        })
        .catch(() => {});
        .catch(() => { });
    },
    getPage(page, list) {
      let sindex = (parseInt(page) - 1) * this.uploadPageSize;
@@ -1667,7 +1466,7 @@
  width: 100%;
}
.form-item-inline > .el-form-item__content {
.form-item-inline>.el-form-item__content {
  display: flex;
  flex-direction: row;
  width: 60%;