<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>
|