qq_41295110
2026-01-28 d71bd2958a362bea5e4a3331e9d50601abc4fc04
src/views/scMould/warehouse/Sc_MouldProdBackBillEdit.vue
@@ -7,24 +7,24 @@
      <el-button type="primary" @click="close">退 出</el-button>
      <!-- <el-button @click="cancel">取 消</el-button> -->
    </div>
    <div style="margin: 10px; font-size: 28px; font-weight: bold; text-align: center;">容器领用退库单</div>
    <div style="margin: 10px; font-size: 28px; font-weight: bold; text-align: center;">容器入库单</div>
    <el-form ref="form" :model="form" :rules="rules" label-width="90px">
      <el-tabs v-model="activeName" type="card">
        <el-tab-pane label="基本信息" name="first">
          <el-row>
            <el-col :span="6">
              <el-form-item label="单据号" prop="HBillNo">
              <el-form-item v-show="HIsShow" label="单据号" prop="HBillNo">
                <el-input v-model="form.HBillNo" placeholder="请输入单据号" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="日期" prop="HDate">
                <el-date-picker v-model="form.HDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd">
              <el-form-item v-show="HIsShow" label="日期" prop="HDate">
                <el-date-picker v-model="form.HDate" type="date" placeholder="选择日期" format="yyyy-MM-dd">
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="12">
              <el-form-item label="组织" prop="HStockOrgID">
              <el-form-item v-show="HIsShow" label="组织" prop="HStockOrgID">
                <el-select v-model="form.HStockOrgID" placeholder="请选择组织" :disabled="ifOrganizationEdit">
                  <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name" :value="item.ID">
                  </el-option>
@@ -34,7 +34,7 @@
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="往来类型" prop="HSupTypeID">
              <el-form-item v-show="HIsShow" label="往来类型" prop="HSupTypeID">
                <el-select v-model="form.HSupTypeID" placeholder="请选择往来类型" @change="form.HSupName='',form.HSupId=0">
                  <el-option v-for="(item, index) in hSupTypeList" :key="index" :label="item.name" :value="item.id">
                  </el-option>
@@ -42,21 +42,21 @@
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="往来单位" prop="HSupName">
              <el-form-item v-show="HIsShow" label="往来单位" prop="HSupName">
                <el-input v-model="form.HSupName" placeholder="请选择往来单位" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialogChoose()"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="部门" prop="HDeptName">
              <el-form-item v-show="HIsShow" label="部门" prop="HDeptName">
                <el-input v-model="form.HDeptName" placeholder="请选择部门" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(1,deptType=1)"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="仓库" prop="HWHName">
              <el-form-item v-show="HIsShow" label="仓库" prop="HWHName">
                <el-input v-model="form.HWHName" placeholder="请选择仓库" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(2,eHWHType=1)"></el-button>
                </el-input>
@@ -65,28 +65,28 @@
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="业务员" prop="HEmpName">
              <el-form-item v-show="HIsShow" label="业务员" prop="HEmpName">
                <el-input v-model="form.HEmpName" placeholder="请选择" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(4,empType=1)"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="负责人" prop="HMangerName">
              <el-form-item v-show="HIsShow" label="负责人" prop="HMangerName">
                <el-input v-model="form.HMangerName" placeholder="请选择" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(4,empType=2)"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="验收员" prop="HSecManagerName">
              <el-form-item v-show="HIsShow" label="验收员" prop="HSecManagerName">
                <el-input v-model="form.HSecManagerName" placeholder="请选择" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(4,empType=3)"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="保管员" prop="HKeeperName">
              <el-form-item v-show="HIsShow" label="保管员" prop="HKeeperName">
                <el-input v-model="form.HKeeperName" placeholder="请选择" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="openDataDialog(4,empType=4)"></el-button>
                </el-input>
@@ -95,7 +95,7 @@
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="源单类型" prop="HSourceBillType">
              <el-form-item v-show="HIsShow" label="源单类型" prop="HSourceBillType">
                <el-select v-model="form.HSourceBillType" placeholder="请选择">
                  <el-option v-for="(item, index) in HSourceBillTypes" :key="index" :label="item.HSourceBillTypeName" :value="item.HSourceBillType">
                  </el-option>
@@ -103,26 +103,26 @@
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="源单单号" prop="HSourceBillNo">
              <el-form-item v-show="HIsShow" label="源单单号" prop="HSourceBillNo">
                <el-input placeholder="请选择源单单号" disabled>
                  <el-button slot="append" icon="el-icon-search" @click="get_checkMainSource()"></el-button>
                </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="内部单据号" prop="HInnerBillNo">
              <el-form-item v-show="HIsShow" label="内部单据号" prop="HInnerBillNo">
                <el-input v-model="form.HInnerBillNo" placeholder="请输入" />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="12">
              <el-form-item label="摘要" prop="HExplanation">
              <el-form-item v-show="HIsShow" label="摘要" prop="HExplanation">
                <el-input v-model="form.HExplanation" placeholder="请输入摘要" />
              </el-form-item>
            </el-col>
            <el-col :span="12">
              <el-form-item label="备注" prop="HRemark">
              <el-form-item v-show="HIsShow" label="备注" prop="HRemark">
                <el-input v-model="form.HRemark" placeholder="请输入备注" />
              </el-form-item>
            </el-col>
@@ -131,63 +131,63 @@
        <el-tab-pane label="制单信息" name="third">
          <el-row>
            <el-col :span="6">
              <el-form-item label="制单人" prop="HMaker">
              <el-form-item v-show="HIsShow" label="制单人" prop="HMaker">
                <el-input v-model="form.HMaker" placeholder="请输入制单人" disabled />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="修改人" prop="HUpDater">
              <el-form-item v-show="HIsShow" label="修改人" prop="HUpDater">
                <el-input v-model="form.HUpDater" placeholder="请输入修改人" disabled />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="审核人" prop="HChecker">
              <el-form-item v-show="HIsShow" label="审核人" prop="HChecker">
                <el-input v-model="form.HChecker" placeholder="请输入审核人" disabled />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="关闭人" prop="HCloseMan">
              <el-form-item v-show="HIsShow" label="关闭人" prop="HCloseMan">
                <el-input v-model="form.HCloseMan" placeholder="请输入关闭人" disabled />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="制单日期" prop="HMakeDate">
                <el-date-picker v-model="form.HMakeDate" type="date" placeholder="选择制单日期" disabled>
              <el-form-item v-show="HIsShow" label="制单日期" prop="HMakeDate">
                <el-date-picker v-model="form.HMakeDate" type="date" placeholder="选择制单日期" format="yyyy-MM-dd hh:mm:ss" disabled>
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="修改日期" prop="HUpDateDate">
                <el-date-picker v-model="form.HUpDateDate" type="date" placeholder="选择审核日期" disabled>
              <el-form-item v-show="HIsShow" label="修改日期" prop="HUpDateDate">
                <el-date-picker v-model="form.HUpDateDate" type="date" placeholder="选择审核日期" format="yyyy-MM-dd hh:mm:ss" disabled>
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="审核日期" prop="HCheckDate">
                <el-date-picker v-model="form.HCheckDate" type="date" placeholder="选择审核日期" disabled>
              <el-form-item v-show="HIsShow" label="审核日期" prop="HCheckDate">
                <el-date-picker v-model="form.HCheckDate" type="date" placeholder="选择审核日期" format="yyyy-MM-dd hh:mm:ss" disabled>
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="关闭日期" prop="HCloseDate">
                <el-date-picker v-model="form.HCloseDate" type="date" placeholder="选择关闭日期" disabled>
              <el-form-item v-show="HIsShow" label="关闭日期" prop="HCloseDate">
                <el-date-picker v-model="form.HCloseDate" type="date" placeholder="选择关闭日期" format="yyyy-MM-dd hh:mm:ss" disabled>
                </el-date-picker>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="作废人" prop="HDeleteMan">
              <el-form-item v-show="HIsShow" label="作废人" prop="HDeleteMan">
                <el-input v-model="form.HDeleteMan" placeholder="请输入作废人" disabled />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="作废日期" prop="HDeleteDate">
                <el-date-picker v-model="form.HDeleteDate" type="date" placeholder="选择作废日期" disabled>
              <el-form-item v-show="HIsShow" label="作废日期" prop="HDeleteDate">
                <el-date-picker v-model="form.HDeleteDate" type="date" placeholder="选择作废日期" format="yyyy-MM-dd hh:mm:ss" disabled>
                </el-date-picker>
              </el-form-item>
            </el-col>
@@ -206,6 +206,7 @@
              size="mini">上移</el-button>
            <el-button type="success" plain icon="el-icon-arrow-down" @click="handleMoveRowDown(zbSelForm)"
              size="mini">下移</el-button>
            <el-button type="success" plain icon="el-icon-printer" @click="get_ICInventoryMould(zbSelForm)">容器库存</el-button>
          </div>
          <el-table :data="editData" style="width: 100%" height="300" width="100%" ref="zbTable"
            @selection-change="handleTableZbEdit" :row-class-name="rowSysZbIndex" show-summary border>
@@ -351,7 +352,7 @@
      <GySupplier @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gySupplierShow" />
      <GyCustomer @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyCustomerShow" />
      <GyMould @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyMouldShow" />
      <GyStockPlace @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyStockPlaceShow" />
      <GyStockPlace @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" :openPageData="openPageData" v-if="gyStockPlaceShow" />
      <scMouldIn @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" :HOrgID="form.HStockOutOrgID" v-if="scMouldInShow" />
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="deptClickSub">确 定</el-button>
@@ -361,6 +362,8 @@
    <el-dialog title="隐藏列设置" :visible.sync="openRowHide" width="816px" append-to-body>
      <RowSettings :colName="btResList" :HModName="HModName" @rowEditClose="rowSetClose" v-if="rowHideShow" />
    </el-dialog>
    <!-- 容器库存 -->
    <ICInventoryMould :visible.sync="ICInventoryMouldShow" ref="ICInventoryMould"/>
  </div>
</template>
@@ -375,11 +378,12 @@
import GyMould from '@/views/scMould/basicModeling/Gy_MouldFileList.vue'
import GyStockPlace from '@/views/basic/gyStockPlace/gyStockPlace.vue'
import scMouldIn from '@/views/scMould/warehouse/component/Sc_MouldInRequestBill.vue'
import ICInventoryMould from '@/views/component/ICInventory_Mould'               //容器库存组件
import moment from 'moment';
export default {
  name: 'Sc_MouldProdBackBillEdit',
  components: { Dept, Warehouse, RowSettings, GyEmployee,GySupplier,GyCustomer,GyMould,GyStockPlace,scMouldIn },
  components: { Dept, Warehouse, RowSettings, GyEmployee,GySupplier,GyCustomer,GyMould,GyStockPlace,scMouldIn,ICInventoryMould },
  props: {
    OperationType: { type: Number, },
    linterid: { type: Number, },
@@ -389,6 +393,8 @@
  },
  data() {
    return {
      HIsShow: true,
      HIsHide: false,
      HModName: "Sc_MouldProdBackBillEdit",
      formShow: false,
      temp: undefined,
@@ -401,6 +407,7 @@
      addBtnShow: false,
      zbIndex: null,
      zbSelForm: {},//子表选中数据
      openPageData:{},//传入弹窗的数据
      dialogTypeNum: null,//部门弹窗1,仓库弹窗2
      deptShow: false,//部门数据组件
      warehouseShow: false,//仓库数据组件
@@ -420,6 +427,7 @@
      ifOrganizationEdit: false,
      subDisabled: false,//编辑页面保存按钮是否禁用(true禁用,false可用)
      // OperationType: this.$route.query.OperationType,//保存类型(新增1修改3)
      ICInventoryMouldShow:false, //容器库存组件显示标记
      HInterID: 0,
      baseURL: process.env.VUE_APP_BASE_API,
      checkedSysZb: [],
@@ -492,7 +500,7 @@
  },
  methods: {
    fetchData() {
      axios.get(this.baseURL + "/Web/GetOrganizations", {
      axios.get(this.$baseUrl + "/Web/GetOrganizations", {
      }).then(response => {
        if (response.data.count == 1) {
          this.organizationList = response.data.data;//组织列表
@@ -504,7 +512,7 @@
      });
    },
    SourceBillType(){
      axios.get(this.baseURL + "/Web/GetHSourceBillType", {
      axios.get(this.$baseUrl + "/Web/GetHSourceBillType", {
        params: { "HName": '器具领用退库单', "Num": 2 }//0蓝单 1红单 2不分红蓝单
      }).then(response => {
        if (response.data.count == 1) {
@@ -554,7 +562,7 @@
    //获取源单数据
    GetSourceBillList(HSourceInterID, HSourceEntryID, HSourceBillType) { 
        return new Promise((resolve, reject) => {
            axios.get(this.baseURL + "/Sc_MouldProdBackBillController/GetSourceBill_MouldProdBack_Json", {
            axios.get(this.$baseUrl + "/Sc_MouldProdBackBillController/GetSourceBill_MouldProdBack_Json", {
                params: { "HInterID": HSourceInterID, "HEntryID": HSourceEntryID, "HBillType": HSourceBillType } 
            }).then(response => { 
                if (response.data.count == 1) { 
@@ -579,7 +587,7 @@
      this.form.HManagerName = data.HManagerName
      this.form.HKeeperID = data.HKeeperID
      this.form.HKeeperName = data.HKeeperName
      this.form.HSecManagerId = data.HSecManagerID
      this.form.HSecManagerID = data.HSecManagerID
      this.form.HSecManagerName = data.HSecManagerName
      this.form.HDeptID = data.HDeptID
      this.form.HDeptName = data.HDeptName
@@ -747,7 +755,7 @@
            this.gyMouldShow = false
            this.openData = false
          } else if (num == 9){
            this.editData[this.zbIndex].HSPID = deptRow.HMainID
            this.editData[this.zbIndex].HSPID = deptRow.HItemID
            this.editData[this.zbIndex].HSPNumber = deptRow.仓位代码
            this.editData[this.zbIndex].HSPName = deptRow.仓位名称
            this.gyStockPlaceShow = false
@@ -802,13 +810,13 @@
        HMaker: '',
        HUpDater: '',
        HChecker: '',
        HMakeDate: new Date(),
        HUpDateDate: '',
        HCheckDate: '',
        HMakeDate: moment(new Date()).format('YYYY-MM-DD hh:mm:ss'),
        HUpDateDate: moment(new Date()).format('YYYY-MM-DD hh:mm:ss'),
        HCheckDate: moment(new Date()).format('YYYY-MM-DD hh:mm:ss'),
        HCloseMan: '',
        HDeleteMan: '',
        HCloseDate: '',
        HDeleteDate: '',
        HCloseDate: moment(new Date()).format('YYYY-MM-DD hh:mm:ss'),
        HDeleteDate: moment(new Date()).format('YYYY-MM-DD hh:mm:ss'),
      }
      this.editData = []
      this.editData1 = []
@@ -847,7 +855,7 @@
    },
    //根据用户获取对应职员、部门、销售主管
    getCzyglByUser() {
      axios.get(this.baseURL + '/Xs_SeOrderBill/getCzyglByUser', {
      axios.get(this.$baseUrl + '/Xs_SeOrderBill/getCzyglByUser', {
        params: { "CurUserName": sessionStorage["HUserName"] }
      }).then(response => {
        let dataForm = response.data.data[0]
@@ -875,7 +883,7 @@
      })
    },
    getHBillNo() {
      axios.get(this.baseURL + "/WEBSController/GetMaxBillNo_Json", {
      axios.get(this.$baseUrl + "/WEBSController/GetMaxBillNo_Json", {
        params: {
          HBillType: '3803'
        }
@@ -926,7 +934,7 @@
      let rowHmainid = this.linterid
      console.log(this.linterid)
      //主表
      axios.get(this.baseURL + "/Sc_MouldStockBillController/GetSc_MouldStockBill_Json", {
      axios.get(this.$baseUrl + "/Sc_MouldStockBillController/GetSc_MouldStockBill_Json", {
        params: { 'HInterID': rowHmainid,"HMaker": sessionStorage["HUserName"]}
      }).then(response => {
        if (response.data.count == 1) {
@@ -1131,6 +1139,21 @@
        this.$refs.zbTable.toggleRowSelection(del_row, false) //设置这一行取消选中
      }
    },
    //#region 查看容器库存
    get_ICInventoryMould(zbSelForm) {
      if (!this.zbIndex) {
        this.$modal.msgError("请选择一行数据")
      } else {
        var index = zbSelForm.index-1;
        this.ICInventoryMouldShow = true
        this.$nextTick(() => {
          this.$refs.ICInventoryMould.open(this.editData[index]);
        })
      }
    },
    //#endregion
    // 编辑提交保存
    submitForm() {
      this.$refs["form"].validate(valid => {
@@ -1171,7 +1194,7 @@
              var sMainSub = sMainStr + ';' + sSubStr + ';' + Operation + ";" + sessionStorage["HUserName"];
              axios({
                method: 'post',
                url: this.baseURL + "/Sc_MouldProdBackBillController/GetSc_MouldProdBackBill_Save_Json",
                url: this.$baseUrl + "/Sc_MouldProdBackBillController/GetSc_MouldProdBackBill_Save_Json",
                data: {
                  'sMainSub': sMainSub
                },
@@ -1200,7 +1223,7 @@
    set_CheckBill(num, form) {
      var InterID = form.hmainid || form.HInterID
      //逻辑审核方法
      axios.get(this.baseURL + "/Sc_MouldProdBackBillController/GetSc_MouldProdBackBill_Check_Json", {
      axios.get(this.$baseUrl + "/Sc_MouldProdBackBillController/GetSc_MouldProdBackBill_Check_Json", {
        params: { "HInterID": InterID, "Type": num, "HMaker": sessionStorage["HUserName"] }
      }).then(response => {
        let result = response.data
@@ -1261,9 +1284,14 @@
        this.gyMouldShow = true
        this.openData = true
      }  else if (num == 9) {
        this.dialogTitle = '仓位列表'
        this.gyStockPlaceShow = true
        this.openData = true
        if(this.editData[this.zbIndex].HWHName){
          this.dialogTitle = '仓位列表'
          this.openPageData.HWHName = this.editData[this.zbIndex].HWHName
          this.gyStockPlaceShow = true
          this.openData = true
        }else{
          this.$modal.msgError("请先选择仓库!");
        }
      }  else if (num == 3851) {
        this.dialogTitle = '容器入库申请单列表'
        this.scMouldInShow = true