陈婷婷
2025-11-27 b986f1b0139aea6d486c9c623803fe5a68f8da3a
采购退料单
3个文件已删除
1个文件已添加
6个文件已修改
3172 ■■■■ 已修改文件
src/views/component/printList/hBarPlanPrint copy.vue 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/component/printList/hBarPlanPrint.vue 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/component/printList/index copy.vue 211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/gyMaterial/GyMaterial.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/purchase/postockInBack/Kf_POStockInBackBill.vue 646 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/purchase/postockInBack/Kf_POStockInBackBillList.vue 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scMould/basicModeling/Gy_MaterialPackingRelationList.vue 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scMould/basicModeling/Gy_MaterialPackingRelation_Edit.vue 830 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/barcodeMaster/Gy_BarCodeBill copy.vue 1088 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/shipment/Kf_StockOutRequestBill.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/component/printList/hBarPlanPrint copy.vue
File was deleted
src/views/component/printList/hBarPlanPrint.vue
@@ -38,58 +38,39 @@
        },
        ws_both_from_object() {
            let OpenTmp = decodeURIComponent(this.$route.query.OpenTmp)
            let apIUrl = ''
            let sql = ''
            if (this.$route.query.Type == 'Kf_SellOutBillList') {
                apIUrl = '/Kf_SellOutBill/cx'
                axios.get(this.baseURL + apIUrl, {
                    params: {
                        "HInterID": this.handleMessage.linterid
                        // , "HSubID": data[i].hsubid
                    },
                }).then(response => {
                    let result = response.data
                    this.json_data.recordset = result.data
                    //参数具体说明请参考帮助文档中的“WEB报表(B/S报表)->WEB报表客户端->启动参数说明”部分
                    var args = {
                        type: "preview", //设置不同的属性可以执行不同的任务,如:preview print pdf xls csv txt rtf img grd
                        // report: this.json_report, //report: JSON.stringify(json_report),
                        report: urlAddRandomNo('./static/grf/' + OpenTmp + '.grf'),
                        data: this.json_data //data: JSON.stringify(json_data)
                    };
                    webapp_ws_ajax_run(args);
                    // var reportViewer = rubylong.grhtml5.insertReportViewer("report_holder", "./static/grf/销售出库单.grf", this.json_data);
                    // reportViewer.start();
                }).catch(error => {
                    this.$modal.msgError("接口请求失败!");
                });
                sql = "exec h_p_Kf_SellOutBillList_PrintSellOutBill " + this.handleMessage.linterid.toString()
            } else if (this.$route.query.Type == 'HGy_BarCodeBill') {
                apIUrl = '/CommonModel/searchMethod'
                axios.get(this.baseURL + apIUrl, {
                    params: {
                        "sql": "select * from h_v_IF_BarCodeBillList where hmainid in(" + this.handleMessage.linterid.toString() + ") order by hmainid desc",
                        "user": sessionStorage["HUserName"],
                        "ModRightNameCheck": ''
                        // , "HSubID": data[i].hsubid
                    },
                }).then(response => {
                    let result = response.data
                    this.json_data.recordset = result.data
                    //参数具体说明请参考帮助文档中的“WEB报表(B/S报表)->WEB报表客户端->启动参数说明”部分
                    var args = {
                        type: "preview", //设置不同的属性可以执行不同的任务,如:preview print pdf xls csv txt rtf img grd
                        // report: this.json_report, //report: JSON.stringify(json_report),
                        report: urlAddRandomNo('./static/grf/' + OpenTmp + '.grf'),
                        data: this.json_data //data: JSON.stringify(json_data)
                    };
                    console.log(args,this.json_data)
                    webapp_ws_ajax_run(args);
                    // var reportViewer = rubylong.grhtml5.insertReportViewer("report_holder", "./static/grf/销售出库单.grf", this.json_data);
                    // reportViewer.start();
                }).catch(error => {
                    console.log(22222, error)
                    this.$modal.msgError("接口请求失败!");
                });
                sql = "select * from h_v_IF_BarCodeBillList where hmainid in(" + this.handleMessage.linterid.toString() + ") order by hmainid desc"
            }else if (this.$route.query.Type == 'HPOInStockBill') {
                sql = "select * from h_v_Sc_PrintMouldProdOutBillList where hmainid=" + this.handleMessage.linterid.toString()+ " order by hmainid"
            }
            axios.get(this.baseURL + '/CommonModel/searchMethod', {
                params: {
                    "sql": sql,
                    "user": sessionStorage["HUserName"],
                    "ModRightNameCheck": ''
                    // , "HSubID": data[i].hsubid
                },
            }).then(response => {
                let result = response.data
                this.json_data.recordset = result.data
                //参数具体说明请参考帮助文档中的“WEB报表(B/S报表)->WEB报表客户端->启动参数说明”部分
                var args = {
                    type: "preview", //设置不同的属性可以执行不同的任务,如:preview print pdf xls csv txt rtf img grd
                    // report: this.json_report, //report: JSON.stringify(json_report),
                    report: urlAddRandomNo('./static/grf/' + OpenTmp + '.grf'),
                    data: this.json_data //data: JSON.stringify(json_data)
                };
                console.log(args, this.json_data)
                webapp_ws_ajax_run(args);
                // var reportViewer = rubylong.grhtml5.insertReportViewer("report_holder", "./static/grf/销售出库单.grf", this.json_data);
                // reportViewer.start();
            }).catch(error => {
                console.log(22222, error)
                this.$modal.msgError("接口请求失败!");
            });
        }
    },
src/views/component/printList/index copy.vue
File was deleted
src/views/gyMaterial/GyMaterial.vue
@@ -1201,6 +1201,9 @@
    
    handleRowClick(row, column, event) {
        if(this.openPage){
        this.$emit('deptEmit', row, 3)
      }
      if (this.checkIsIframe()) {
        // 将当前选中的数据暴露到window中
        window.selectedRow = row;
@@ -1273,6 +1276,9 @@
    
    // 双击行
    handleDblclick(row, column, cell, event) {
      if(this.openPage){
        this.$emit('deptEmitDb', row, 3)
      }
      if (this.checkIsIframe()) {
        // IFrame 双击 返回当前双击的数据
        window.parent.iFrameMaterialCallback(row);
@@ -1288,6 +1294,9 @@
      if (!this.single) {
        this.selectedRow = selection[0];
      }
      //   if(this.openPage){
      //   this.$emit('deptEmit', this.selectedRow, 3)
      // }
    },
      // 编辑关闭回调
  handleEditClose() {
src/views/purchase/postockInBack/Kf_POStockInBackBill.vue
@@ -2,11 +2,12 @@
    <div v-loading="formLoading" v-if="formShow">
        <div style=" margin-bottom: 10px; border-bottom: 1px solid #f6f6f6;">
            <el-button type="primary" @click="submitForm" :disabled="subDisabled">保 存</el-button>
            <el-button type="primary" @click="set_CheckBill(0)" :disabled="checkDisabled">审 核</el-button>
            <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>
        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
        <el-form ref="form" :model="form" :rules="rules" label-width="100px">
            <el-tabs v-model="activeName" type="card">
                <el-tab-pane label="基本信息" name="first">
                    <el-row>
@@ -23,8 +24,8 @@
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="辅助字段" prop="HInnerBillNo">
                                <el-input v-model="form.HInnerBillNo" placeholder="请输入辅助字段" />
                            <el-form-item label="内部单据号" prop="HInnerBillNo">
                                <el-input v-model="form.HInnerBillNo" placeholder="请输入内部单据号" />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
@@ -32,40 +33,6 @@
                                <el-input v-model="form.HEmpName" placeholder="请输入业务员" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'yewuyuan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="保管员" prop="HKeeperName">
                                <el-input v-model="form.HKeeperName" placeholder="请输入保管员" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'baoguanyuan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="主管" prop="HMangerName">
                                <el-input v-model="form.HMangerName" placeholder="请输入主管" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'zhuguan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="验收" prop="HSecManagerName">
                                <el-input v-model="form.HSecManagerName" placeholder="请输入验收" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'yanshou')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="仓库" prop="HWHName">
                                <el-input v-model="form.HWHName" placeholder="请输入仓库" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(2, ckType = 'form')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
@@ -80,11 +47,69 @@
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="往来单位" prop="HSupName">
                            <el-form-item label="供应商" prop="HSupName">
                                <el-input v-model="form.HSupName" placeholder="请输入往来单位" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(6)"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="仓库" prop="HWHName">
                                <el-input v-model="form.HWHName" placeholder="请输入仓库" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(2, ckType = 'form')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="退料员" prop="HSecManagerName">
                                <el-input v-model="form.HSecManagerName" placeholder="请输入退料员" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'tuiliaoyuan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="保管员" prop="HKeeperName">
                                <el-input v-model="form.HKeeperName" placeholder="请输入保管员" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'baoguanyuan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="负责人" prop="HManagerName">
                                <el-input v-model="form.HManagerName" placeholder="请输入负责人" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(4, zhiyuanType = 'zhuguan')"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="源单类型" prop="HSourceBillType">
                                <el-select v-model="form.HSourceBillType" placeholder="请选择" style="width: 100%">
                                    <!-- <el-option v-for="(item, index) in HSourceBillTypeList" :key="index"
                                        :label="item.label" :value="item.value">
                                    </el-option> -->
                                </el-select>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="选单号" prop="HSourceBillNo">
                                <el-input v-model="form.HSourceBillNo" placeholder="请输入选单号" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(openNum)"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="12">
                            <el-form-item label="摘要" prop="HExplanation">
                                <el-input v-model="form.HExplanation" placeholder="请输入摘要" />
                            </el-form-item>
                        </el-col>
                        <el-col :span="12">
@@ -195,55 +220,18 @@
                </el-table-column>
                <el-table-column align="center" label="计量单位" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.计量单位" placeholder="请输入计量单位"
                            @keyup.native.f7="openDataDialog('单位页面还没有', scope.row, dwType = 'jldw')"
                            @dblclick.native="openDataDialog('单位页面还没有', scope.row, dwType = 'jldw')" />
                        <span>{{ scope.row.计量单位 }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="仓库" width="120">
                <el-table-column align="center" label="实退数量" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.仓库" placeholder="请输入仓库"
                            @keyup.native.f7="openDataDialog(2, scope.row, ckType = 'zb')"
                            @dblclick.native="openDataDialog(2, scope.row, ckType = 'zb')" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="仓位" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.仓位" placeholder="请输入仓位"
                            @keyup.native.f7="openDataDialog(9, scope.row)"
                            @dblclick.native="openDataDialog(9, scope.row)" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="库存辅单位" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.库存辅单位" placeholder="请输入库存辅单位"
                            @keyup.native.f7="openDataDialog('单位页面还没有', scope.row, dwType = 'kcfdw')"
                            @dblclick.native="openDataDialog('单位页面还没有', scope.row, dwType = 'kcfdw')" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="基本单位" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.基本单位" placeholder="请输入基本单位"
                            @keyup.native.f7="openDataDialog('单位页面还没有', scope.row, dwType = 'jbdw')"
                            @dblclick.native="openDataDialog('单位页面还没有', scope.row, dwType = 'jbdw')" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="辅单位" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.辅单位" placeholder="请输入辅单位"
                            @keyup.native.f7="openDataDialog('单位页面还没有', scope.row, dwType = 'fdw')"
                            @dblclick.native="openDataDialog('单位页面还没有', scope.row, dwType = 'fdw')" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="应收数量" width="120">
                    <template slot-scope="scope">
                        <el-input-number v-model="scope.row.HQtyMust" :min="1" style="width: 90px;"
                        <el-input-number v-model="scope.row.HQty" :min="1" style="width: 90px;"
                            controls-position="right"></el-input-number>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="实收数量" width="120">
                <el-table-column align="center" label="应退数量" width="120">
                    <template slot-scope="scope">
                        <el-input-number v-model="scope.row.HQty" :min="1" style="width: 90px;"
                        <el-input-number v-model="scope.row.HQtyMust" :min="1" style="width: 90px;"
                            controls-position="right"></el-input-number>
                    </template>
                </el-table-column>
@@ -256,6 +244,35 @@
                <el-table-column align="center" label="金额" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMoney }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="采购金额" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HOrderPrice }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="发料仓库" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.发料仓库" placeholder="请输入发料仓库"
                            @keyup.native.f7="openDataDialog(2, scope.row, ckType = 'zb')"
                            @dblclick.native="openDataDialog(2, scope.row, ckType = 'zb')" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="仓位名称" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.仓位名称" placeholder="请输入仓位名称"
                            @keyup.native.f7="openDataDialog(9, scope.row)"
                            @dblclick.native="openDataDialog(9, scope.row)" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="批次" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.HBatchNo" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="备注" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.HRemark" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="操作" width="55" fixed="right">
@@ -297,7 +314,7 @@
import moment from 'moment';
export default {
    name: 'Kf_StockOutRequestBill',
    name: 'Kf_POStockInBackBill',
    components: { Dept, Warehouse, Material, RowSettings, GyEmployee, GySupplier, GyStockPlace },
    props: {
        OperationType: { type: Number, },
@@ -308,7 +325,8 @@
    },
    data() {
        return {
            HModName: "Kf_StockOutRequestBill",
            HModName: "Kf_POStockInBackBill",
            checkDisabled: true,
            allVal: undefined,
            zhiyuanType: '',
            ckType: '',
@@ -332,7 +350,7 @@
            deptform: {},//弹窗选中数据
            openData: false,//数据弹窗
            dialogTitle: '',
            organizationList: [],//组织列表
            organizationList: JSON.parse(sessionStorage.getItem('organizationList')),//组织列表
            subDisabled: false,//编辑页面保存按钮是否禁用(true禁用,false可用)
            // OperationType: this.$route.query.OperationType,//保存类型(新增1修改3)
            HInterID: null,
@@ -380,40 +398,204 @@
            form: {},
            // 表单校验
            rules: {
                HDate: [
                    { required: true, message: "日期不能为空", trigger: "blur" }
                HEmpName: [
                    { required: true, message: "请选择业务员!", trigger: "blur" }
                ],
                HExRate: [
                    { required: true, message: "汇率不能为空", trigger: "blur" }
                HDeptName: [
                    { required: true, message: "请选择部门", trigger: "blur" }
                ],
                HSupName: [
                    { required: true, message: "请选择供应商!", trigger: "blur" }
                ],
                HWHName: [
                    { required: true, message: "请选择仓库!", trigger: "blur" }
                ],
                HSecManagerName: [
                    { required: true, message: "请选择退料员!", trigger: "blur" }
                ]
            }
        };
    },
    created() {
        this.fetchData()
        this.getHSourceBillType()
        this.getdata()
    },
    methods: {
        fetchData() {
            axios.get(this.baseURL + "/Web/GetOrganizations", {
        getHSourceBillType() {
            axios.get(this.baseURL + "/Web/GetHSourceBillType", {
                "HName": '采购退料单', "Num": 2
            }).then(response => {
                console.log(response)
                var HSourceBillTypes = "";
                if (response.data.count == 1) {
                    this.organizationList = response.data.data;//组织列表
                    let data = response.data.data
                    for (var i = 0; i < data.length; i++) {
                        HSourceBillTypes += data[i].HSourceBillType + data[i].HSourceBillTypeName;
                    }
                    console.log(111, HSourceBillTypes)
                }
            }).catch(error => {
                console.log(error)
                this.$modal.msgError("接口请求失败!");
            });
        },
        getdata() {
            this.formShow = false
            this.formLoading = true
            if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
            if (this.OperationType == 4) {
                this.reset()
                //新增获取单据号
                this.getHBillNo()
                if (this.HSouceBillType == "1105") {
                    this.setInit_PushBill_ByPOInStockBackBill();
                } else if (this.HSouceBillType == "1201") {
                    this.setInit_PushBill_ByPOStockInBillInit();
                }
            } else if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
                this.handleAdd()
            } else if (this.OperationType == 3 || this.copyType == 1) {
                this.handleUpdate()
            }
        },
        //#region 下推页面初始化-退料通知单
        setInit_PushBill_ByPOInStockBackBill() {
            //获取
            var data = getUrlVars_JSON().data;
            var dataArray = [];
            for (var i = 0; i < data.length; i++) {
                var temp = this.getPushSource_POInStockBackInit(data[i].hmainid, data[i].hsubid);
                if (temp != "none") {
                    dataArray.push(temp);
                } else {
                    return;
                }
            }
            this.form.HMainSourceInterID = 0
            this.form.HMainSourceEntryID = 0
            this.form.HMainSourceBillNo = ""
            this.form.HMainSourceBillType = this.HSouceBillType
            this.form.HDeptID = dataArray[0].HDeptID
            this.form.HDeptName = dataArray[0].部门
            this.form.HManagerID = dataArray[0].HManagerID
            this.form.HManagerName = dataArray[0].主管
            this.form.HWHID = dataArray[0].主表仓库ID == null ? 0 : dataArray[0].主表仓库ID
            this.form.HWHName = dataArray[0].主表仓库
            this.form.HEmpID = dataArray[0].HEmpID
            this.form.HEmpName = dataArray[0].业务员
            this.form.HSupID = dataArray[0].HSupID
            this.form.HSupName = dataArray[0].供应商
            this.form.HCurID = dataArray[0].HCurID
            this.form.HCurName = dataArray[0].币别
            this.form.HExRate = dataArray[0].汇率
            this.form.HAddress = data.交货地点
            this.form.HRemark = data.表头备注
            this.form.HInnerBillNo = data.内部单据号
            //子表  赋值
            this.editData = [];
            for (var i = 0; i < dataArray.length; i++) {
                this.editData.push(
                    {
                        "HMaterID": dataArray[i].HMaterID
                        , "物料代码": dataArray[i].物料代码
                        , "物料名称": dataArray[i].物料名称
                        , "规格型号": dataArray[i].规格型号
                        , "HUnitID": dataArray[i].HUnitID
                        , "计量单位": dataArray[i].计量单位
                        , "HWHID": dataArray[i].HWHID
                        , "发料仓库": dataArray[i].收料仓库
                        , "HSPID": dataArray[i].HSPID
                        , "仓位名称": dataArray[i].仓位名称
                        , "HSecUnitID": dataArray[i].HSecUnitID
                        , "辅助单位": dataArray[i].辅助单位
                        , "HQty": dataArray[i].数量.toFixed(6)
                        , "HQtyMust": dataArray[i].数量.toFixed(6)
                        , "HPrice": dataArray[i].单价.toFixed(4)
                        , 'HDiscountRate': dataArray[i].折扣率                                                    //
                        , 'HRelTaxPrice': "0"
                        , "HTaxRate": dataArray[i].税率
                        , 'HTaxMoney': dataArray[i].税额                                                     //
                        , "HMoney": dataArray[i].金额.toFixed(2)
                        , "HRemark": dataArray[i].表体备注
                        , "HSourceInterID": dataArray[i].hmainid
                        , "HSourceEntryID": dataArray[i].hsubid
                        , "HSourceBillNo": dataArray[i].单据号
                        , "HSourceBillType": dataArray[i].HBillType
                        , "HRelationQty": "0"
                        , "HRelationMoney": "0"
                        , 'HPOOrderInterID': "0"
                        , 'HPOOrderEntryID': "0"
                        , 'HPOOrderBillNo': ""
                        , 'HSeOrderTaxPrice': dataArray[i].含税单价.toFixed(4)
                        , "HSeOrderInterID": dataArray[i].hmainid
                        , "HSeOrderEntryID": dataArray[i].hsubid
                        , "HSeOrderBillNo": dataArray[i].单据号
                    }
                );
            }
        },
        //#endregion
        //#region 下推页面初始化-采购入库单
        setInit_PushBill_ByPOStockInBillInit() {
            //获取
            var data = getUrlVars_JSON().data;
            var dataArray = [];
            for (var i = 0; i < data.length; i++) {
                var temp = getPushSource_POStockInBillInit(data[i].hmainid, data[i].hsubid);
                if (temp != "none") {
                    dataArray.push(temp);
                } else {
                    return;
                }
            }
            this.form.HInnerBillNo = dataArray[0].内部单据号
            this.form.HSupID = dataArray[0].HSupID
            this.form.HSupName = dataArray[0].供应商
            this.form.HEmpID = dataArray[0].HEmpID
            this.form.HEmpName = dataArray[0].业务员
            this.form.HWHID = dataArray[0].主表仓库ID
            this.form.HWHName = dataArray[0].主表仓库
            this.form.HKeeperID = dataArray[0].HKeeperID
            this.form.HKeeperName = dataArray[0].保管员
            this.form.HDeptName = dataArray[0].部门
            this.form.HDeptID = dataArray[0].HDeptID
            this.form.HManagerID = dataArray[0].HManagerID
            this.form.HManagerName = dataArray[0].负责人
            this.form.HExRate = dataArray[0].汇率
            this.form.HSourceBillType = this.HSouceBillType
            //子表  赋值
            this.editData = [];
            for (var i = 0; i < dataArray.length; i++) {
                this.editData.push(
                    {
                        "HMaterID": dataArray[i].HMaterID
                        , "物料代码": dataArray[i].物料代码
                        , "物料名称": dataArray[i].物料名称
                        , "规格型号": dataArray[i].规格型号
                        , "HUnitID": dataArray[i].HUnitID
                        , "计量单位": dataArray[i].计量单位
                        , "HWHID": dataArray[i].HWHID
                        , "发料仓库": dataArray[i].收料仓库
                        , "HSPID": dataArray[i].HSPID
                        , "仓位名称": dataArray[i].仓位名称
                        , "HQty": dataArray[i].实收数量.toFixed(6) - dataArray[i].关联数量.toFixed(6)
                        , "HQtyMust": dataArray[i].实收数量.toFixed(6) - dataArray[i].关联数量.toFixed(6)
                        , "HPrice": dataArray[i].单价.toFixed(4)
                        , "HMoney": dataArray[i].金额.toFixed(2)
                        , "HOrderPrice": dataArray[i].采购金额
                        , "HRemark": dataArray[i].表体备注
                        , "HBatchNo": dataArray[i].批次
                        , "HSourceInterID": dataArray[i].hmainid
                        , "HSourceEntryID": dataArray[i].hsubid
                        , "HSourceBillNo": dataArray[i].单据号
                        , "HSourceBillType": dataArray[i].HBillType
                        , "HRelationQty": "0"
                        , "HRelationMoney": "0"
                    }
                );
            }
        },
        //#endregion
        // 获取参数_传递的JSON格式参数
        getUrlVars_JSON() {
            var datajson;
@@ -422,9 +604,10 @@
            datajson = JSON.parse(decodeURI(arr));
            return datajson;
        },
        //根据主内码与子内码获取源单销售订单数据
        getPushSourceBillInit(HSourceInterID, HSourceEntryID) {
            axios.get(this.baseURL + '/Xs_SeOrderBill/loadXs_SeOrderBill_Push', {
        //根据主内码与子内码获取源单退料通知单数据
        getPushSource_POInStockBackInit(HSourceInterID, HSourceEntryID) {
            var res = "none";
            axios.get(this.baseURL + '/Cg_POInStockBackBill/loadCg_POInStockBackBill_Push', {
                params: {
                    "HInterID": HSourceInterID
                    , "HSubID": HSourceEntryID
@@ -432,13 +615,36 @@
            }).then(response => {
                let result = response.data
                if (result.code == 1) { // 说明验证成功了,
                    this.temp = result.data[0];
                    res = result.data[0];
                } else {
                    this.temp = result.data;
                    res = result.data;
                }
            }).catch(error => {
                res = "none";
                this.$modal.msgError("接口请求失败!");
            });
            return res;
        },
        // 根据主内码与子内码获取源单采购入库单数据
        getPushSource_POStockInBillInit(HSourceInterID, HSourceEntryID) {
            var res = "none";
            axios.get(this.baseURL + '/Kf_POStockInBill/loadKf_POStockInBillEdit_Push', {
                params: {
                    "HInterID": HSourceInterID
                    , "HSubID": HSourceEntryID
                },
            }).then(response => {
                let result = response.data
                if (result.code == 1) { // 说明验证成功了,
                    res = result.data[0];
                } else {
                    res = result.data;
                }
            }).catch(error => {
                res = "none";
                this.$modal.msgError("接口请求失败!");
            });
            return res;
        },
        handleRowHide() {
            this.rowHideShow = true
@@ -468,19 +674,19 @@
                        this.form.HWHName = deptRow.仓库名称;
                    } else if (this.ckType == 'zb') {
                        this.editData[this.zbIndex].HWHID = deptRow.HItemID;
                        this.editData[this.zbIndex].仓库 = deptRow.仓库名称;
                        this.editData[this.zbIndex].发料仓库 = deptRow.仓库名称;
                    }
                    this.warehouseShow = false
                    this.openData = false
                } else if (num == 3) {
                    console.log(deptRow)
                    console.log(deptRow.计量单位名称)
                    this.editData[this.zbIndex].HMaterID = deptRow.HItemID;
                    this.editData[this.zbIndex].物料代码 = deptRow.物料代码;
                    this.editData[this.zbIndex].物料名称 = deptRow.物料名称;
                    this.editData[this.zbIndex].HUnitID = deptRow.HUnitID;
                    this.editData[this.zbIndex].规格型号 = deptRow.规格型号
                    this.editData[this.zbIndex].HUnitID = deptRow.HUnitID;
                    this.editData[this.zbIndex].计量单位 = deptRow.计量单位名称
                    this.editData[this.zbIndex].HTaxPrice = deptRow.含税成本价
                    this.editData[this.zbIndex].HTaxRate = deptRow.默认税率
                    this.materialShow = false
                    this.openData = false
                } else if (num == 4) {
@@ -491,9 +697,9 @@
                        this.form.HKeeperName = deptRow.职员名称
                        this.form.HKeeperID = deptRow.HItemID
                    } else if (this.zhiyuanType == 'zhuguan') {
                        this.form.HMangerName = deptRow.职员名称
                        this.form.HMangerID = deptRow.HItemID
                    } else if (this.zhiyuanType == 'yanshou') {
                        this.form.HManagerName = deptRow.职员名称
                        this.form.HManagerID = deptRow.HItemID
                    } else if (this.zhiyuanType == 'tuiliaoyuan') {
                        this.form.HSecManagerName = deptRow.职员名称
                        this.form.HSecManagerID = deptRow.HItemID
                    }
@@ -506,7 +712,7 @@
                    this.openData = false
                } else if (num == 9) {
                    this.editData[this.zbIndex].HSPID = deptRow.HMainID;
                    this.editData[this.zbIndex].仓位 = deptRow.仓位名称;
                    this.editData[this.zbIndex].仓位名称 = deptRow.仓位名称;
                    this.gyStockPlaceShow = false
                    this.openData = false
                }
@@ -531,37 +737,39 @@
        //销售出库单新增编辑表单初始化
        reset() {
            this.form = {
                HBillNo:'',
                HInterID: 0,
                HBillNo: '',
                HDate: moment(new Date()).format('YYYY-MM-DD'),
                HSSDate:moment(new Date()).format('YYYY-MM-DD'),
                HAddress:'',
                HDeptName:'',
                HDeptID:0,
                HSupID:0,
                HSupName:'',
                HEmpID:0,
                HEmpName:'',
                HCurID:0,
                HCurName:'',
                HExRate:'',
                HManagerName:'',
                HManagerID:0,
                HPSStyleID:0,
                HPSStyleName:'',
                HSSID:0,
                HSSName:'',
                HLinkMan:'',
                HLinkPhone:'',
                HInnerBillNo:'',
                HRemark:'',
                HMaker:sessionStorage["HSupName"],
                HChecker:'',
                HCloseMan:'',
                HMakeDate:'',
                HCheckDate:'',
                HCloseDate:'',
                HUpDateDate:'',
                HDeleteDate:'',
                HReceiveDate: moment(new Date()).format('YYYY-MM-DD'),
                HAddress: '',
                HInnerBillNo: '',
                HEmpID: 0,
                HEmpName: '',
                HDeptName: '',
                HDeptID: 0,
                HSupID: 0,
                HSupName: '',
                HWHName: '',
                HWHID: 0,
                HSecManagerName: '',
                HSecManagerID: 0,
                HKeeperName: '',
                HKeeperID: 0,
                HManagerName: '',
                HManagerID: 0,
                HSourceBillType: '',
                HExplanation: '',
                HRemark: '',
                HMaker: sessionStorage["HSupName"],
                HChecker: '',
                HCloseMan: '',
                HUpDater: '',
                HDeleteMan: '',
                HMakeDate: moment(new Date()).format('YYYY-MM-DD'),
                HCheckDate: '',
                HCloseDate: '',
                HUpDateDate: '',
                HDeleteDate: '',
            }
            this.editData = []
@@ -626,16 +834,13 @@
            })
        },
        getHBillNo() {
            axios.get(this.baseURL + "/Web/GetMAXNum", {
            axios.get(this.baseURL + "/WEBSController/GetMaxBillNoAndID_Json", {
                params: {
                    HBillType: '1242'
                    HBillType: '1239'
                }
            }).then(response => {
                this.form.HMaker = sessionStorage["HUserName"]
                this.form.HBillNo = response.data.data[0].HBillNo
                this.form.HInterID = response.data.data[0].HInterID
                // this.copyType = 0
                // this.getCzyglByUser()
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
@@ -646,74 +851,55 @@
        handleUpdate() {
            this.reset()
            let rowHmainid = this.linterid
            axios.get(this.baseURL + "/Kf_StockOutRequestBill/cx", {
            axios.get(this.baseURL + "/Kf_POStockInBackBill/cx", {
                params: { 'HInterID': rowHmainid }
            }).then(response => {
                if (response.data.count == 1) {
                    var result = response.data
                    var data = response.data.data[0]
                    this.allVal = data
                    this.form.BillType = data.HSourceBillType
                    if (this.copyType == 1) {
                        this.getHBillNo()
                        let date = new Date()
                        this.form.HDate = moment(date).format('YYYY-MM-DD')
                    } else {
                        this.form.HBillNo = data.单据号
                        // this.form.HInterID = data.HInterID
                        this.form.HDate = data.日期
                        this.form.HMaker = data.制单人
                        this.form.HUpDater = data.修改人
                        this.form.HChecker = data.审核人
                        this.form.HMakeDate = data.制单日期
                        this.form.HUpDateDate = data.修改日期
                        this.form.HCheckDate = data.审核日期
                        this.form.HCloseMan = data.关闭人
                        this.form.HDeleteMan = data.作废人
                        this.form.HCloseDate = data.关闭日期
                        this.form.HDeleteDate = data.作废日期
                    }
                    this.form.HAddress = data.交货地点
                    this.form.HDeptName = data.部门
                    this.form.HDeptID = data.HDeptID
                    this.form.HBillNo = data.单据号
                    this.form.HDate = moment(data.日期).format('YYYY-MM-DD')
                    this.form.HInnerBillNo = data.内部单据号
                    this.form.HSupID = data.HSupID
                    this.form.HSupName = data.供应商
                    this.form.HEmpID = data.HEmpID
                    this.form.HEmpName = data.业务员
                    this.form.HCurID = data.HCurID
                    this.form.HCurName = data.币别
                    this.form.HExRate = data.汇率
                    this.form.HManagerName = data.主管
                    this.form.HWHID = data.主表仓库ID
                    this.form.HWHName = data.主表仓库
                    this.form.HSecManagerID = data.HSecManagerID
                    this.form.HSecManagerName = data.验收员
                    this.form.HKeeperID = data.HKeeperID
                    this.form.HKeeperName = data.保管员
                    this.form.HDeptName = data.部门
                    this.form.HDeptID = data.HDeptID
                    this.form.HSourceBillType = data.源单类型
                    this.form.HManagerID = data.HManagerID
                    this.form.HPSStyleID = data.HPSStyleID
                    this.form.HPSStyleName = data.采购方式
                    this.form.HSSID = data.HSSID
                    this.form.HSSName = data.结算方式
                    this.form.HLinkMan = data.联系人
                    this.form.HLinkPhone = data.联系电话
                    this.form.HInnerBillNo = data.辅助字段
                    this.form.HManagerName = data.负责人
                    this.form.HExRate = data.汇率
                    this.form.HExplanation = data.摘要
                    this.form.HRemark = data.表头备注
                    this.form.HMaker = data.制单人
                    this.form.HChecker = data.审核人
                    this.form.HCloseMan = data.关闭人
                    this.form.HUpDater = data.修改人
                    this.form.HDeleteDate = data.作废人
                    this.form.HMakeDate = data.制单日期 == null ? "" : moment(data.制单日期).format('YYYY-MM-DD hh:mm:ss')
                    this.form.HCheckDate = data.审核日期 == null ? "" : moment(data.审核日期).format('YYYY-MM-DD hh:mm:ss')
                    this.form.HCloseDate = data.关闭日期 == null ? "" : moment(data.关闭日期).format('YYYY-MM-DD hh:mm:ss')
                    this.form.HUpDateDate = data.修改日期 == null ? "" : moment(data.修改日期).format('YYYY-MM-DD hh:mm:ss')
                    this.form.HDeleteDate = data.作废日期 == null ? "" : moment(data.作废日期).format('YYYY-MM-DD hh:mm:ss')
                    for (var i = 0; i < result.data.length; i++) {
                        this.editData.push(
                            {
                                "HMaterID": result.data[i].HMaterID,
                                "物料代码": result.data[i].物料代码,
                                "物料名称": result.data[i].物料名称,
                                "规格型号": result.data[i].规格型号,
                                "HUnitID": result.data[i].HUnitID,
                                "计量单位": result.data[i].计量单位,
                                "HQty": result.data[i].数量,
                                "HRemark": result.data[i].表体备注,
                                "HPrice": result.data[i].单价,
                                "HMoney": result.data[i].金额,
                                "HTaxRate": result.data[i].税率,
                                "HTaxMoney": result.data[i].金额 * result.data[i].税率,
                                "HlineTotal": result.data[i].金额 + result.data[i].税额,
                                "HlineTotalBB": (result.data[i].金额 + result.data[i].税额) * result.data[i].汇率,
                                "HTaxPrice": result.data[i].含税单价,
                                "HDiscountRate": result.data[i].折扣率,
                                "HRelTaxPrice": data.实际含税单价,
                                "HDate": moment(result.data[i].交货日期).format('YYYY-MM-DD')
                                "HMaterID": result.data[i].HMaterID, "物料代码": result.data[i].物料代码, "物料名称": result.data[i].物料名称, "规格型号": result.data[i].规格型号, "HUnitID": result.data[i].HUnitID, "计量单位": result.data[i].计量单位,
                                "HQty": result.data[i].实收数量, "HQtyMust": result.data[i].应收数量, "HRemark": result.data[i].表体备注, "HPrice": result.data[i].单价, "HMoney": result.data[i].金额, "HOrderPrice": result.data[i].采购金额, "HWHID": result.data[i].HWHID, "发料仓库": result.data[i].收料仓库, "HSPID": result.data[i].HSPID, "仓位名称": result.data[i].仓位名称,
                                "HBatchNo": result.data[i].批次,
                                "HSourceBillNo": result.data[i].源单单号,    //源单号
                                "HSourceBillType": result.data[i].源单类型,   //源单类型
                                "HSourceInterID": result.data[i].源单主内码,   //源单主内码
                                "HSourceEntryID": result.data[i].源单子内码     //源单子内码
                            }
                        );
                    }
@@ -734,9 +920,11 @@
                this.$modal.msgError("请选择一行数据编辑!");
            } else {
                let obj = {
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 1, "计量单位": "", "HWHID": "0", "仓库": "",
                    "HSPID": "0", "仓位": "", "HSecUnitID": "1", "库存辅单位": "", "HBASEUNITID": "1", "基本单位": "",
                    "HEXTAUXUNITID": "1", "辅单位": "", "HQtyMust": "0", "HQty": "0", "HPrice": "0", "HMoney": "0", "HRemark": ""
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HQty": "", "HRemark": "",
                    "HPrice": "0", "HMoney": "0", "HOrderPrice": "0", "HWHID": 0, "发料仓库": "",
                    "HSPID": 0, "仓位名称": "", "HBatchNo": "", "HPOOrderInterID": 0, "HPOOrderEntryID": 0,
                    "HPOOrderBillNo": "", "HSeOrderInterID": 0, "HSeOrderEntryID": 0, "HSeOrderBillNo": "",
                    "HSourceBillNo": 0, "HSourceBillType": 0, "HSourceInterID": 0, "HSourceEntryID": 0,
                }
                if (index) {
                    this.editData.splice(index, 0, obj);
@@ -805,15 +993,60 @@
            }
        },
        // 编辑提交保存
        //#region 保存按钮
        submitForm() {
            //#region 判断源单状态
            if (this.OperationType == 1 || this.OperationType == 4) {
                if (this.form.HSourceBillType == "1105") {
                    for (var i = 0; i < this.editData.length; i++) {
                        var HSourceBillData = "";
                        var HSourceBillData = this.getPushSource_POInStockBackInit(this.editData[i].HSourceInterID, this.editData[i].HSourceEntryID);            //获取源单数据
                        if (HSourceBillData != "none") {
                            if (HSourceBillData == null) {
                                this.$modal.msgError("保存失败!第" + (i + 1) + "行:未查询到源单单据!");
                                return;
                            } else if (HSourceBillData.状态 != "已审核") {
                                var err = "保存失败!原因:第" + (i + 1) + "行-源单单据状态为“" + HSourceBillData.状态 + "”,不允许保存!";
                                this.$modal.msgError(err);
                                return;
                            } else if (HSourceBillData.行状态 == "已关闭") {
                                this.$modal.msgError("保存失败!第" + (i + 1) + "行:该行记录行状态为'已关闭'状态!");
                                return;
                            }
                        } else {
                            return;
                        }
                    }
                } else if (this.form.HSourceBillType == "1201") {
                    for (var i = 0; i < this.editData.length; i++) {
                        var HSourceBillData = "";
                        var HSourceBillData = this.getPushSource_POStockInBillInit(this.editData[i].HSourceInterID, this.editData[i].HSourceEntryID);            //获取源单数据
                        if (HSourceBillData != "none") {
                            if (HSourceBillData == null) {
                                this.$modal.msgError("保存失败!第" + (i + 1) + "行:未查询到源单单据!");
                                return;
                            }
                        } else {
                            return;
                        }
                    }
                }
                else {
                    this.$modal.msgError('当前不支持该源单!!')
                    return
                }
            }
            this.set_SaveBill();
        },
        // 编辑提交保存
        set_SaveBill() {
            this.$refs["form"].validate(valid => {
                if (valid) {
                    let fhck = false
                    this.editData.map((item, index) => {
                        if (!item.仓库) {
                        if (!item.物料代码) {
                            fhck = true
                            this.$modal.msgError("第" + (index + 1) + "行:仓库未选择!");
                            this.$modal.msgError("第" + (index + 1) + "行:物料代码不能为空!");
                        }
                    })
                    this.$nextTick(() => {
@@ -824,15 +1057,16 @@
                            var sMainSub = sMainStr + ';' + sSubStr + ';' + this.OperationType + ";" + sessionStorage["HUserName"] + ';' + sAllStr;
                            axios({
                                method: 'post',
                                url: this.baseURL + "/Kf_StockOutRequestBill/StockOutRequestBillEdit",
                                url: this.baseURL + "/Kf_POStockInBackBill/POStockInBackBillEdit",
                                data: {
                                    'sMainSub': sMainSub
                                },
                            }).then(response => {
                                if (response.data.count == 1) {
                                    this.subDisabled = true//设置保存按钮不可用
                                    this.subDisabled = true//设置保存按钮不可用
                                    this.checkDisabled = false
                                    this.$modal.msgSuccess(response.data.Message);
                                    this.close()
                                    // this.close()
                                } else {
                                    this.$modal.msgError(response.data.Message);
                                }
@@ -845,15 +1079,15 @@
            });
        },
        // 反审核/审核数据
        set_CheckBill(num, form) {
            var InterID = form.hmainid || form.HInterID
        set_CheckBill(num) {
            //逻辑审核方法
            axios.get(this.baseURL + "/Kf_SellOutBill/AuditKf_SellOutBill", {
            axios.get(this.baseURL + "/Kf_POStockInBackBill/AuditProcessReportList", {
                params: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.$modal.msgSuccess('操作成功');
                    this.close()
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
src/views/purchase/postockInBack/Kf_POStockInBackBillList.vue
@@ -148,10 +148,10 @@
            </el-collapse>
        </el-form>
        <el-row :gutter="10" class="mb8" style="margin-top: 10px">
            <el-col :span="1.5">
              <!-- <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-col>
            </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>
@@ -161,7 +161,44 @@
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CheckBill(0)">审核
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CheckBill(1)">反审核
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CloseBill(0)">关闭
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CloseBill(1)">反关闭
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_DropBill(0)">作废
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_DropBill(1)">反作废
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-date" size="mini" @click="handleRowHide">隐藏列设置</el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-printer" size="mini" @click="get_PrintReport">打印</el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-printer" size="mini" :disabled="single"
                    @click="get_BarCodeDetail">条码明细</el-button>
            </el-col>
        </el-row>
        <div class="tableBox" v-loading="loading">
@@ -179,7 +216,7 @@
                            <div :style="item.style">
                                <span v-if="column.property.includes('日期')">{{
                                    parseTime(row[column.property], "{y}-{m}-{d}")
                                    }}</span>
                                }}</span>
                                <el-button type="text" @click="handleEdit(row, (OperationType = 3))"
                                    v-else-if="column.property == '单据号'">{{ row.单据号 }}</el-button>
                                <span v-else>{{ row[column.label] }}</span>
@@ -197,9 +234,12 @@
            <el-dialog title="编辑" :visible.sync="openEdit" width="1480px" append-to-body class="xsckdBox"
                @close="close">
                <edit :OperationType="OperationType" :linterid="this.rowForm.hmainid"
                    :HSouceBillType="this.rowForm.HSourceBillType" :copyType="copyType" @editClose="editClose"
                    HSouceBillType="0" :copyType="copyType" @editClose="editClose"
                    v-if="editShow" />
            </el-dialog>
            <PrintList :linterid="this.rowForm.hmainid" :MyMsg="this.rowForm.hmainid" Type="HPOInStockBill"
                HModName="HPOInStockBill" @rowEditClose="rowSetClose" v-if="printListShow" />
            <BarCodeDetail :visible.sync="barCodeDetailShow" ref="barcodeDetail" />
        </div>
    </div>
</template>
@@ -207,7 +247,7 @@
<script>
import axios from "axios";
import RowSettings from "@/views/component/rowSettings";
import Edit from "@/views/warehouse/shipment/Kf_StockOutRequestBill.vue";
import Edit from "@/views/purchase/postockInBack/Kf_POStockInBackBill.vue";
import PrintList from "@/views/component/printList";
import BarCodeDetail from '@/views/component/BarCodeDetail'               //条码明细组件
import moment from "moment";
@@ -410,7 +450,7 @@
                        this.total = data1.count;
                        var data = []; //列字段数据
                        var col = [];
                        var totalArray = ["金额","采购金额","应退数量","实退数量"];
                        var totalArray = ["金额", "采购金额", "应退数量", "实退数量"];
                        //给空的数组赋值
                        for (var key in data1.list) {
                            //循序遍历数组
@@ -857,6 +897,97 @@
                });
            }).catch(() => { });
        },
        set_CheckBill(num) {
            //逻辑审核方法
            axios.get(this.baseURL + "/Kf_POStockInBackBill/AuditProcessReportList", {
                params: { "HInterID": this.rowForm.hmainid, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        set_CloseBill(num) {
            //逻辑关闭方法
            axios.get(this.baseURL + "/Kf_POStockInBackBill/CloseKf_POStockInBackBill", {
                params: { "HInterID": this.rowForm.hmainid, "Type": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        set_DropBill(num) {
            //逻辑作废方法
            axios.get(this.baseURL + "/Kf_POStockInBackBill/DropKf_POStockInBackBill", {
                params: { "HInterID": this.rowForm.hmainid, "Type": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        //打印
        get_PrintReport() {
            if (this.ids.length != 1) {
                this.$modal.msgError("请选择一行数据");
            } else {
                 this.printListShow = true;
                            this.openPrintList = true;
                // axios.get(this.baseURL + "/Kf_SellOutBill/CheckSellOutBill_IsExist", {
                //         params: { HInterID: this.rowForm.hmainid },
                //     })
                //     .then((response) => {
                //         var result = response.data;
                //         if (result.count == 1) {
                //             this.printListShow = true;
                //             this.openPrintList = true;
                //             // this.$router.push({ path:'/printList', query: { linterid: this.rowForm.hmainid,MyMsg:this.rowForm.hmainid,Type:'Kf_SellOutBillList' }})
                //         } else {
                //             this.$modal.msgError(result.code + result.Message);
                //         }
                //     })
                //     .catch((error) => {
                //         this.$modal.msgError("接口请求失败!");
                //     });
            }
            //  var content= ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + data[0].hmainid.toString() + '&MyMsg=' + data[0].hmainid.toString() + '&Type=Kf_SellOutBillList', 'yes']
        },
        //#region 条码明细
        get_BarCodeDetail() {
            // if (this.selectedRow.length !== 1) {
            //   this.$message.warning('请选择一行数据查看条码明细!')
            //   return
            // }
            this.barCodeDetailShow = true
            this.$nextTick(() => {
                this.$refs.barcodeDetail.open(this.rowForm)
            })
        },
    },
};
</script>
src/views/scMould/basicModeling/Gy_MaterialPackingRelationList.vue
@@ -131,6 +131,36 @@
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CheckBill(0)">审核
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CheckBill(1)">反审核
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CloseBill(0)">关闭
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_CloseBill(1)">反关闭
                </el-button>
            </el-col>
    <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_DropBill(0)">作废
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single"
                    @click="set_DropBill(1)">反作废
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-date" size="mini" @click="handleRowHide">隐藏列设置</el-button>
            </el-col>
        </el-row>
@@ -149,7 +179,7 @@
                            <div :style="item.style">
                                <span v-if="column.property.includes('日期')">{{
                                    parseTime(row[column.property], "{y}-{m}-{d}")
                                }}</span>
                                    }}</span>
                                <el-button type="text" @click="handleEdit(row, (OperationType = 3))"
                                    v-else-if="column.property == '单据号'">{{ row.单据号 }}</el-button>
                                <span v-else>{{ row[column.label] }}</span>
@@ -177,7 +207,7 @@
<script>
import axios from "axios";
import RowSettings from "@/views/component/rowSettings";
import Edit from "@/views/warehouse/shipment/Kf_StockOutRequestBill.vue";
import Edit from "@/views/scMould/basicModeling/Gy_MaterialPackingRelation_Edit.vue";
import PrintList from "@/views/component/printList";
import BarCodeDetail from '@/views/component/BarCodeDetail'               //条码明细组件
import moment from "moment";
@@ -825,6 +855,60 @@
                });
            }).catch(() => { });
        },
        set_CheckBill(num) {
            //逻辑审核方法
            axios.get(this.baseURL + "/Sc_MouldinventoryBill/CheckGy_MaterialMouldBillMain", {
                params: { "HInterID": this.rowForm.hmainid, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        set_CloseBill(num) {
            //逻辑关闭方法
            axios.get(this.baseURL + "/Gy_MaterialPackingRelation/CloseGy_MaterialPackingRelation", {
                params: { "HInterID": this.rowForm.hmainid, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        set_DropBill(num) {
            //逻辑作废方法
            axios.get(this.baseURL + "/Gy_MaterialPackingRelation/DeleteGy_MaterialPackingRelation", {
                params: { "HInterID": this.rowForm.hmainid, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
    },
};
</script>
src/views/scMould/basicModeling/Gy_MaterialPackingRelation_Edit.vue
New file
@@ -0,0 +1,830 @@
<template>
    <div v-loading="formLoading" v-if="formShow">
        <div style=" margin-bottom: 10px; border-bottom: 1px solid #f6f6f6;">
            <el-button type="primary" @click="submitForm" :disabled="subDisabled">保 存</el-button>
            <el-button type="primary" @click="close">退 出</el-button>
            <el-button type="primary" @click="set_CheckBill(0)" :disabled="checkDisabled">审 核</el-button>
            <el-button type="primary" @click="set_CheckBill(1)" :disabled="abandoncheckDisabled">反审核</el-button>
        </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="80px">
            <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-input v-model="form.HBillNo" placeholder="请输入单据号" disabled />
                            </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-ddT">
                                </el-date-picker>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="项目名称" prop="HProjectName">
                                <el-input v-model="form.HProjectName" placeholder="请输入项目名称" />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="客户" prop="HCusName">
                                <el-input v-model="form.HCusName" placeholder="请输入客户" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(7)"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="物料代码" prop="HMaterNumber">
                                <el-input v-model="form.HMaterNumber" placeholder="请输入物料代码" disabled>
                                    <el-button slot="append" icon="el-icon-search"
                                        @click="openDataDialog(3)"></el-button>
                                </el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="物料名称" prop="HMaterName">
                                <el-input v-model="form.HMaterName" placeholder="请输入物料名称" disabled />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="规格型号" prop="HMaterModel">
                                <el-input v-model="form.HMaterModel" placeholder="请输入规格型号" disabled />
                            </el-form-item>
                        </el-col>
                        <el-col :span="12">
                            <el-form-item label="备注" prop="HRemark">
                                <el-input v-model="form.HRemark" placeholder="请输入备注" />
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="组织" prop="HOrgID" label-width="128px">
                                <el-select v-model="form.HOrgID" placeholder="请选择" disabled>
                                    <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name"
                                        :value="item.ID">
                                    </el-option>
                                </el-select>
                            </el-form-item>
                        </el-col>
                    </el-row>
                </el-tab-pane>
                <el-tab-pane label="制单信息" name="third">
                    <el-row>
                        <el-col :span="6">
                            <el-form-item 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-input v-model="form.HUpDater" placeholder="请输入修改人" disabled />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item 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-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-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-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-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-date-picker>
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item 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-date-picker>
                            </el-form-item>
                        </el-col>
                    </el-row>
                </el-tab-pane>
            </el-tabs>
            <div style="margin-bottom: 10px;">
                <el-button type="success" plain icon="el-icon-plus" @click="handleAddSysZb()"
                    size="mini">增加一行</el-button>
                <el-button type="success" plain icon="el-icon-plus" @click="handleAddSysZb(zbIndex, 1)"
                    size="mini">插入一行</el-button>
                <el-button type="success" plain icon="el-icon-plus" @click="handleCopyZbRow"
                    size="mini">复制一行</el-button>
                <el-button type="success" plain icon="el-icon-arrow-up" @click="handleMoveRowUp(zbSelForm)"
                    size="mini">上移</el-button>
                <el-button type="success" plain icon="el-icon-arrow-down" @click="handleMoveRowDown(zbSelForm)"
                    size="mini">下移</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>
                <el-table-column type="selection" width="55" align="center" />
                <el-table-column align="center" label="序号" type="index" width="80" />
                <el-table-column align="center" label="包装容器代码" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.HMouldNumber" placeholder="请输入包装容器代码"
                            @keyup.native.f7="openDataDialog(8, scope.row)"
                            @dblclick.native="openDataDialog(8, scope.row)" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="包装容器名称" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldName }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="包装容器分类" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldType }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="包装容器用途" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldPurpose }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="包装容器长度" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldLength }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="包装容器高度" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldHeight }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="折叠高度" width="120">
                    <template slot-scope="scope">
                        <span>{{ scope.row.HMouldFoldHeight }}</span>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="容器包装产品数量" width="130">
                    <template slot-scope="scope">
                        <el-input-number v-model="scope.row.HSNP" :min="0" style="width: 90px;"
                            controls-position="right"></el-input-number>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="周转容器标记" width="120">
                    <template slot-scope="scope">
                        <el-select v-model="scope.row.HTransPackFlag" placeholder="请选择" style="width: 100%">
                            <el-option label="否" :value='0' />
                            <el-option label="是" :value='1' />
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="发货容器标记" width="120">
                    <template slot-scope="scope">
                        <el-select v-model="scope.row.HSendPackFlag" placeholder="请选择" style="width: 100%">
                            <el-option label="否" :value='0' />
                            <el-option label="是" :value='1' />
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="默认周转容器标记" width="130">
                    <template slot-scope="scope">
                        <el-select v-model="scope.row.HDefaultTransPackFlag" placeholder="请选择" style="width: 100%">
                            <el-option label="否" :value='0' />
                            <el-option label="是" :value='1' />
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="默认发货容器标记" width="130">
                    <template slot-scope="scope">
                        <el-select v-model="scope.row.HDefaultSendPackFlag" placeholder="请选择" style="width: 100%">
                            <el-option label="否" :value='0' />
                            <el-option label="是" :value='1' />
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="启用标记" width="120">
                    <template slot-scope="scope">
                        <el-select v-model="scope.row.HUseFlag" placeholder="请选择" style="width: 100%">
                            <el-option label="否" :value='0' />
                            <el-option label="是" :value='1' />
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column align="center" label="备注" width="120">
                    <template slot-scope="scope">
                        <el-input v-model="scope.row.HRemark" />
                    </template>
                </el-table-column>
                <el-table-column align="center" label="操作" width="55" fixed="right">
                    <template slot-scope="scope">
                        <el-button type="danger" icon="el-icon-delete" size="mini" circle
                            @click="handleDeleteSysZb(scope.row)"></el-button>
                    </template>
                </el-table-column>
            </el-table>
        </el-form>
        <!-- 弹窗 -->
        <el-dialog :title="dialogTitle" :visible.sync="openData" width="1280px" append-to-body>
            <Dept @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="deptShow" />
            <Warehouse @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="warehouseShow" />
            <Material @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="materialShow" />
            <GyEmployee @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyEmployeeShow" />
            <GySupplier @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gySupplierShow" />
            <GyStockPlace @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyStockPlaceShow" />
            <GyCustomer @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyCustomerShow" />
            <GyMould @deptEmitDb="dbEmitData" @deptEmit="emitData" :openPage="HModName" v-if="gyMouldShow" />
            <div slot="footer" class="dialog-footer">
                <el-button type="primary" @click="deptClickSub">确 定</el-button>
                <el-button @click="deptClose">取 消</el-button>
            </div>
        </el-dialog>
        <el-dialog title="隐藏列设置" :visible.sync="openRowHide" width="816px" append-to-body>
            <RowSettings :colName="btResList" :HModName="HModName" @rowEditClose="rowSetClose" v-if="rowHideShow" />
        </el-dialog>
    </div>
</template>
<script>
import axios from 'axios'
import RowSettings from '@/views/component/rowSettings'
import Dept from '@/views/basic/gy/gyDepartment.vue'
import Warehouse from '@/views/basic/gyWarehouse/gyWarehouse.vue'
import Material from '@/views/gyMaterial/GyMaterial.vue'
import GyEmployee from '@/views/basic/gyEmployee/gyEmployee.vue'
import GySupplier from '@/views/basic/gy/gySupplier.vue'
import GyStockPlace from '@/views/basic/gyStockPlace/gyStockPlace.vue'
import GyCustomer from '@/views/GyCustomer'
import GyMould from '@/views/scMould/basicModeling/Gy_MouldFileList.vue'
import moment from 'moment';
export default {
    name: 'Kf_StockOutRequestBill',
    components: { Dept, Warehouse, Material, RowSettings, GyEmployee, GySupplier, GyStockPlace, GyCustomer, GyMould },
    props: {
        OperationType: { type: Number, },
        linterid: { type: Number, },
        HSouceBillType: { type: String, },
        propsData: { type: String, },
        copyType: { type: Number, },
    },
    data() {
        return {
            HModName: "Kf_StockOutRequestBill",
            checkDisabled: true,
            abandoncheckDisabled: true,
            allVal: undefined,
            zhiyuanType: '',
            ckType: '',
            formShow: false,
            temp: undefined,
            formLoading: true,
            zzSelDis: false,
            rowHideShow: false,
            openRowHide: false,
            hPriceTypeList: ['成本价', '结算价'],
            addBtnShow: false,
            zbIndex: null,
            zbSelForm: {},//子表选中数据
            dialogTypeNum: null,//部门弹窗1,仓库弹窗2
            deptShow: false,//部门数据组件
            warehouseShow: false,//仓库数据组件
            materialShow: false,//物料数据组件
            gyEmployeeShow: false,//销售员数据组件
            gySupplierShow: false,
            gyStockPlaceShow: false,
            gyCustomerShow: false,
            gyMouldShow: false,
            deptform: {},//弹窗选中数据
            openData: false,//数据弹窗
            dialogTitle: '',
            organizationList: JSON.parse(sessionStorage.getItem('organizationList')),//组织列表
            subDisabled: false,//编辑页面保存按钮是否禁用(true禁用,false可用)
            // OperationType: this.$route.query.OperationType,//保存类型(新增1修改3)
            HInterID: null,
            baseURL: process.env.VUE_APP_BASE_API,
            checkedSysZb: [],
            editData: [],//销售出库单子表
            editBtData: [],//子表表头
            activeName: 'first',
            // 弹出层标题
            title: "",
            // 是否显示弹出层
            open: false,
            // 日期范围
            dateRange: [],
            // 查询参数
            queryParams: {
                HBillNo: '',
                HInitTimeCycle: 29,
                HProjectNumber: '',
                HCusID: null,
                HMaterNumber: '',
                HMaterName: '',
                ColName1: '',
                ColName2: '',
                ColName: '',
                Comparator1: '',
                Comparator2: '',
                Comparator: '',
                ColContent1: '',
                ColContent2: '',
                ColContent: '',
            },
            // 显示搜索条件
            showSearch: true,
            // 选中数组
            ids: [],
            // 非单个禁用
            single: true,
            // 非多个禁用
            multiple: true,
            // 遮罩层
            loading: true,
            btResList: [],
            // 表单参数
            form: {},
            // 表单校验
            rules: {
                HCusName: [
                    { required: true, message: "客户不能为空", trigger: "blur" }
                ],
                HMaterNumber: [
                    { required: true, message: "物料信息不能为空", trigger: "blur" }
                ]
            }
        };
    },
    created() {
        this.getdata()
    },
    methods: {
        getdata() {
            this.formShow = false
            this.formLoading = true
            if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
                this.handleAdd()
            } else if (this.OperationType == 3 || this.copyType == 1) {
                this.handleUpdate()
            }
        },
        // 获取参数_传递的JSON格式参数
        getUrlVars_JSON() {
            var datajson;
            var str = this.propsData; //获取链接中传递的参数
            var arr = str.substring(str.lastIndexOf("=") + 1);
            datajson = JSON.parse(decodeURI(arr));
            return datajson;
        },
        //根据主内码与子内码获取源单销售订单数据
        getPushSourceBillInit(HSourceInterID, HSourceEntryID) {
            axios.get(this.baseURL + '/Xs_SeOrderBill/loadXs_SeOrderBill_Push', {
                params: {
                    "HInterID": HSourceInterID
                    , "HSubID": HSourceEntryID
                },
            }).then(response => {
                let result = response.data
                if (result.code == 1) { // 说明验证成功了,
                    this.temp = result.data[0];
                } else {
                    this.temp = result.data;
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        handleRowHide() {
            this.rowHideShow = true
            this.openRowHide = true
        },
        rowSetClose(val) {
            this.rowHideShow = false
            this.openRowHide = val
        },
        organizationChange(val) {
            // let options=undefined
            //  this.form=this.organizationList.find(option => option.ID === val)?.Name || '';
        },
        //部门弹窗赋值
        dbEmitData(deptRow, num) {
            // num=1部门 num=2出库仓库
            if (deptRow.HItemID||deptRow.hmainid) {
                if (num == 3) {
                    this.form.HMaterID = deptRow.HItemID;
                    this.form.HMaterNumber = deptRow.物料代码;
                    this.form.HMaterName = deptRow.物料名称;
                    this.form.HMaterModel = deptRow.规格型号
                    this.materialShow = false
                    this.openData = false
                } else if (num == 7) {
                    this.form.HCusName = deptRow.客户名称
                    this.form.HCusID = deptRow.HItemID
                    this.gyCustomerShow = false
                    this.openData = false
                } else if (num == 8) {
                    this.editData[this.zbIndex].HMouldID = deptRow.hmainid;
                    this.editData[this.zbIndex].HMouldNumber = deptRow.模具编号;
                    this.editData[this.zbIndex].HMouldName = deptRow.模具名称;
                    this.gyMouldShow = false
                    this.openData = false
                }
            } else {
                this.$modal.msgError("请选择单条数据!");
            }
        },
        emitData(deptRow, num) {
            this.dialogTypeNum = num
            this.deptform = deptRow
        },
        deptClickSub() {
            this.dbEmitData(this.deptform, this.dialogTypeNum)
            this.deptform = {}
        },
        deptClose() {
            this.deptform = {}
            this.openData = false
        },
        //销售出库单新增编辑表单初始化
        reset() {
            this.form = {
                HInterID: 0,
                HBillNo: '',
                HDate: moment(new Date()).format('YYYY-MM-DD'),
                HProjectName: '',
                HCusName: '',
                HCusID: 0,
                HMaterNumber: '',
                HMaterID: 0,
                HMaterName: '',
                HMaterModel: '',
                HOrgID: sessionStorage["OrganizationID"] - 0,
                HRemark: '',
                HMaker: sessionStorage["HSupName"],
                HChecker: '',
                HDeleteMan: '',
                HUpDater: '',
                HCloseMan: '',
                HMakerDate: moment(new Date()).format('YYYY-MM-DD'),
                HCheckDate: '',
                HCloseDate: '',
                HUpDateDate: '',
                HDeleteDate: '',
            }
            this.editData = []
            this.editBtData = []
            this.ids = []
            this.subDisabled = false
            this.addBtnShow = false
            // this.$refs.tableData.clearSelection()
            this.activeName = 'first'
            this.resetForm("form");
        },
        //退出
        close() {
            this.reset()
            if (!this.OperationType && !this.copyType) {
                const obj = { fullPath: this.$route.path, path: this.$route.path, name: this.$route.name, };
                this.$tab.closePage(obj).then(res => {
                    const latestView = res.visitedViews.slice(-1)[0]
                    if (latestView) {
                        this.$router.push(latestView.fullPath)
                    } else {
                        if (obj.name === 'Dashboard') {
                            this.$router.replace({ path: '/redirect' + obj.fullPath })
                        } else {
                            this.$router.push('/')
                        }
                    }
                });
            } else {
                this.formShow = false
                this.$emit('editClose', false)
            }
        },
        //根据用户获取对应职员、部门、销售主管
        getCzyglByUser() {
            axios.get(this.baseURL + '/Xs_SeOrderBill/getCzyglByUser', {
                params: { "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let dataForm = response.data.data[0]
                this.form.HDeptID = dataForm.HDeptID
                this.form.HDeptName = dataForm.HDeptName
                this.form.HEmpID = dataForm.HEmpID
                this.form.HEmpName = dataForm.HEmpName
                this.form.HManagerID = dataForm.HManagerID
                this.form.HManagerName = dataForm.HManagerName
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        /** 新增按钮操作 */
        handleAdd() {
            this.reset()
            //新增获取单据号
            this.getHBillNo()
            this.form.HDate = moment(new Date()).format('YYYY-MM-DDTHH:mm:ss')
            if (this.OperationType == 1) {
                this.handleAddSysZb()
            }
            this.$nextTick(() => {
                this.formShow = true
                this.formLoading = false
            })
        },
        getHBillNo() {
            axios.get(this.baseURL + "/Web/GetMAXNum", {
                params: {
                    HBillType: '3339'
                }
            }).then(response => {
                this.form.HMaker = sessionStorage["HUserName"]
                this.form.HBillNo = response.data.data[0].HBillNo
                this.form.HInterID = response.data.data[0].HInterID
                // this.copyType = 0
                // this.getCzyglByUser()
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        /** 修改按钮操作 */
        handleUpdate() {
            this.reset()
            let rowHmainid = this.linterid.toString()
            axios.get(this.baseURL + "/Gy_MaterialPackingRelation/Gy_MaterialPackingRelationEditList", {
                params: { 'HInterID': rowHmainid, "user": sessionStorage["HUserName"] }
            }).then(response => {
                if (response.data.count == 1) {
                    var result = response.data
                    var data = response.data.data[0]
                    this.allVal = data
                    this.form.BillType = data.HSourceBillType
                    if (this.copyType == 1) {
                        this.getHBillNo()
                    } else {
                        this.form.HInterID = data.HInterID
                        this.form.HBillNo = data.单据号
                        this.form.HDate = data.日期
                        this.form.HMaker = data.制单人
                        this.form.HUpDater = data.修改人
                        this.form.HChecker = data.审核人
                        this.form.HMakeDate = data.制单日期
                        this.form.HUpDateDate = data.修改日期
                        this.form.HCheckDate = data.审核日期
                        this.form.HCloseMan = data.关闭人
                        this.form.HDeleteMan = data.作废人
                        this.form.HCloseDate = data.关闭日期
                        this.form.HDeleteDate = data.作废日期
                        this.checkDisabled = false
                        this.abandoncheckDisabled = false
                    }
                    this.form.HCusID = data.HCusID
                    this.form.HCusName = data.客户
                    this.form.HProjectName = data.项目名称
                    this.form.HMaterID = data.HMaterID
                    this.form.HMaterNumber = data.物料代码
                    this.form.HMaterName = data.物料名称
                    this.form.HMaterModel = data.物料型号
                    this.form.HRemark = data.备注
                    this.form.HOrgID = data.HOrgID
                    this.editData = result.data
                }
                this.formShow = true
                this.formLoading = false
            }).catch(error => {
                console.log(error)
                this.$modal.msgError("接口请求失败!");
            });
        },
        /** 子表明细序号 */
        rowSysZbIndex({ row, rowIndex }) {
            row.index = rowIndex + 1;
        },
        /** 编辑页子表添加按钮操作 */
        handleAddSysZb(index, num) {
            if (num == 1 && !index) {
                this.$modal.msgError("请选择一行数据编辑!");
            } else {
                let obj = {
                    "HMouldID": 0,
                    "HMouldNumber": "",
                    "HMouldName": "",
                    "HMouldType": "",
                    "HMouldPurpose": "",
                    "HMouldLength": 0,
                    "HMouldWidth": 0,
                    "HMouldHeight": 0,
                    "HMouldFoldHeight": 0,
                    "HSNP": 0,
                    "HTransPackFlag": 0,
                    "HSendPackFlag": 0,
                    "HDefaultTransPackFlag": 0,
                    "HDefaultSendPackFlag": 0,
                    "HUseFlag": 0,
                    "HRemark": ""
                }
                if (index) {
                    this.editData.splice(index, 0, obj);
                    this.$set(this.editData, index, obj)
                } else {
                    this.editData.push(obj);
                }
            }
        },
        handleCopyZbRow() {
            if (!this.zbIndex) {
                this.$modal.msgError("请选择一行数据")
            } else {
                let copyRow = JSON.parse(JSON.stringify(this.zbSelForm))
                this.editData.push(copyRow);
            }
        },
        handleMoveRowUp(zbSelForm) {
            if (!this.zbIndex) {
                this.$modal.msgError("请选择一行数据")
            } else {
                if (zbSelForm.index == 1) {
                    this.$modal.msgError("第一行数据无法上移");
                } else { // 确保不是第一行
                    let num = zbSelForm.index - 1
                    const record = this.editData.splice(num, 1)[0];
                    this.editData.splice(num - 1, 0, record);
                }
            }
        },
        handleMoveRowDown(zbSelForm) {
            if (!this.zbIndex) {
                this.$modal.msgError("请选择一行数据")
            } else {
                if (zbSelForm.index == this.editData.length) {
                    this.$modal.msgError("最后一行数据无法下移");
                } else { // 确保不是第一行
                    let num = zbSelForm.index - 1
                    const record = this.editData.splice(num, 1)[0];
                    this.editData.splice(num + 1, 0, record);
                }
            }
        },
        /** 编辑页子表删除按钮操作 */
        handleDeleteSysZb(row) {
            this.checkedSysZb = []
            this.checkedSysZb.push(row.index)
            if (this.checkedSysZb.length == 0) {
                this.$modal.msgError("请先选择要删除的商品订单明细数据");
            } else {
                const editData = this.editData;
                const checkedSysZb = this.checkedSysZb;
                this.editData = editData.filter(function (item) {
                    return checkedSysZb.indexOf(item.index) == -1
                });
            }
        },
        /** 编辑页子表复选框选中数据 */
        handleTableZbEdit(selection) {
            this.checkedSysZb = selection.map(item => item.index)
            this.zbSelForm = selection[0]
            this.zbIndex = this.checkedSysZb[0]
            if (selection.length > 1) {
                const del_row = selection.shift()
                this.$refs.zbTable.toggleRowSelection(del_row, false) //设置这一行取消选中
            }
        },
        // 编辑提交保存
        submitForm() {
            this.$refs["form"].validate(valid => {
                if (valid) {
                    let fhck = false
                    this.editData.map((item, index) => {
                        if (!item.HMouldID) {
                            fhck = true
                            this.$modal.msgError("第" + (index + 1) + "行:包装容器不能为空!");
                        }
                    })
                    var refSav = "";
                    if (this.OperationType == 1 || this.OperationType == 2) {
                        refSav = "Add";
                    }
                    if (this.OperationType == 3) {
                        refSav = "Update";
                        this.form.HUpdater = sessionStorage["HUserName"];
                        this.form.HUpdaterDate = moment(new Date()).format('YYYY-MM-DD')
                    }
                    this.$nextTick(() => {
                        if (!fhck) {
                            var sMainStr = JSON.stringify(this.form);
                            var sSubStr = JSON.stringify(this.editData);
                            var sMainSub = sMainStr + ';' + sSubStr + ';' + refSav + ";" + sessionStorage["HUserName"];
                            axios({
                                method: 'post',
                                url: this.baseURL + "/Gy_MaterialPackingRelation/SaveGy_MaterialPackingRelation",
                                data: {
                                    'sMainSub': sMainSub
                                },
                            }).then(response => {
                                if (response.data.count == 1) {
                                    this.subDisabled = true//设置保存按钮不可用
                                    this.checkDisabled = false
                                    this.$modal.msgSuccess(response.data.Message);
                                    // this.close()
                                } else {
                                    this.$modal.msgError(response.data.Message);
                                }
                            }).catch(error => {
                                this.$modal.msgError("接口请求失败!");
                            });
                        }
                    })
                }
            });
        },
        // 反审核/审核数据
        set_CheckBill(num) {
            //逻辑审核方法
            axios.get(this.baseURL + "/Sc_MouldinventoryBill/CheckGy_MaterialMouldBillMain", {
                params: { "HInterID": this.form.HInterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
            }).then(response => {
                let result = response.data
                if (result.code == 1) {
                    this.checkDisabled = true
                    this.abandoncheckDisabled = false
                    this.$modal.msgSuccess('操作成功');
                }
                else {
                    this.$modal.msgError("错误:" + result.code + result.Message,);
                }
            }).catch(error => {
                this.$modal.msgError("接口请求失败!");
            });
        },
        showReset() {
            this.deptShow = false
            this.warehouseShow = false
            this.materialShow = false
            this.gyEmployeeShow = false
            this.gySupplierShow = false
            this.gyStockPlaceShow = false
            this.gyCustomerShow = false
            this.gyMouldShow = false
        },
        //  打开数据列表弹窗
        openDataDialog(num, row) {
            //num1部门,2出库仓库,3物料,4销售员
            if (row) {
                this.zbIndex = row.index - 1
            }
            this.showReset()
            if (num == 3) {
                this.dialogTitle = '物料列表'
                this.materialShow = true
                this.openData = true
            } else if (num == 7) {
                this.dialogTitle = '客户列表'
                this.gyCustomerShow = true
                this.openData = true
            } else if (num == 8) {
                this.dialogTitle = '器具列表'
                this.gyMouldShow = true
                this.openData = true
            }
        },
    }
};
</script>
<style>
.xsckdBox .el-date-editor.el-input {
    width: 100%;
}
</style>
src/views/warehouse/barcodeMaster/Gy_BarCodeBill copy.vue
File was deleted
src/views/warehouse/shipment/Kf_StockOutRequestBill.vue
@@ -733,9 +733,9 @@
                this.$modal.msgError("请选择一行数据编辑!");
            } else {
                let obj = {
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 1, "计量单位": "", "HWHID": "0", "仓库": "",
                    "HSPID": "0", "仓位": "", "HSecUnitID": "1", "库存辅单位": "", "HBASEUNITID": "1", "基本单位": "",
                    "HEXTAUXUNITID": "1", "辅单位": "", "HQtyMust": "0", "HQty": "0", "HPrice": "0", "HMoney": "0", "HRemark": ""
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "仓库": "",
                    "HSPID": 0, "仓位": "", "HSecUnitID": 0, "库存辅单位": "", "HBASEUNITID": 0, "基本单位": "",
                    "HEXTAUXUNITID": 0, "辅单位": "", "HQtyMust": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HRemark": ""
                }
                if (index) {
                    this.editData.splice(index, 0, obj);