| | |
| | | <div style=" margin-bottom: 10px; border-bottom: 1px solid #f6f6f6;"> |
| | | <el-button type="primary" @click="handleAdd(OperationType = 1)" v-if="addBtnShow">新增</el-button> |
| | | <el-button type="primary" @click="submitForm" :disabled="subDisabled">保 存</el-button> |
| | | <el-button type="primary" @click="set_CheckBill(1, form)">审 核</el-button> |
| | | <!-- <el-button type="primary" @click="set_CheckBill(1, form)">审 核</el-button> --> |
| | | <el-button type="primary" @click="close">退 出</el-button> |
| | | <!-- <el-button @click="cancel">取 消</el-button> --> |
| | | </div> |
| | |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="单据号" prop="HBillNo"> |
| | | <el-input v-model="form.HBillNo" placeholder="请输入单据号" /> |
| | | <el-input v-model="form.HBillNo" placeholder="请输入单据号" disabled/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="日期" prop="HDate"> |
| | | <el-date-picker v-model="form.HDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"> |
| | | <el-date-picker v-model="form.HDate" type="date" placeholder="选择日期" format="yyyy-MM-dd"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="往来类型" prop="HSupTypeID"> |
| | | <el-form-item v-show="false" label="往来类型" prop="HSupTypeID"> |
| | | <el-select v-model="form.HSupTypeID" placeholder="请选择往来类型" @change="form.HSupName='',form.HSupId=0"> |
| | | <el-option v-for="(item, index) in hSupTypeList" :key="index" :label="item.name" :value="item.id"> |
| | | </el-option> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="往来单位" prop="HSupName"> |
| | | <el-form-item v-show="false" label="往来单位" prop="HSupName"> |
| | | <el-input v-model="form.HSupName" placeholder="请选择往来单位" disabled> |
| | | <el-button slot="append" icon="el-icon-search" @click="openDataDialogChoose()"></el-button> |
| | | </el-input> |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-form-item label="子单据类型" prop="HBillSubType"> |
| | | <el-select v-model="form.HBillSubType" placeholder="请选择子单据类型"> |
| | | <el-option label="发货" value="发货"></el-option> |
| | | <el-option label="内部调拨" value="内部调拨"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="6"> |
| | |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <!-- <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="负责人" prop="HMangerName"> |
| | | <el-input v-model="form.HMangerName" placeholder="请选择" disabled> |
| | | <el-input v-model="form.HManagerName" placeholder="请选择" disabled> |
| | | <el-button slot="append" icon="el-icon-search" @click="openDataDialog(4,empType=2)"></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-col> --> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="验收员" prop="HSecManagerName"> |
| | | <el-input v-model="form.HSecManagerName" placeholder="请选择" disabled> |
| | |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="制单日期" prop="HMakeDate"> |
| | | <el-date-picker v-model="form.HMakeDate" type="date" placeholder="选择制单日期" disabled> |
| | | <el-date-picker v-model="form.HMakeDate" type="date" placeholder="选择制单日期" format="yyyy-MM-dd hh:mm:ss" disabled> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="修改日期" prop="HUpDateDate"> |
| | | <el-date-picker v-model="form.HUpDateDate" type="date" placeholder="选择审核日期" disabled> |
| | | <el-date-picker v-model="form.HUpDateDate" type="date" placeholder="选择审核日期" format="yyyy-MM-dd hh:mm:ss" disabled> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="审核日期" prop="HCheckDate"> |
| | | <el-date-picker v-model="form.HCheckDate" type="date" placeholder="选择审核日期" disabled> |
| | | <el-date-picker v-model="form.HCheckDate" type="date" placeholder="选择审核日期" format="yyyy-MM-dd hh:mm:ss" disabled> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="关闭日期" prop="HCloseDate"> |
| | | <el-date-picker v-model="form.HCloseDate" type="date" placeholder="选择关闭日期" disabled> |
| | | <el-date-picker v-model="form.HCloseDate" type="date" placeholder="选择关闭日期" format="yyyy-MM-dd hh:mm:ss" disabled> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item v-show="HIsShow" label="作废日期" prop="HDeleteDate"> |
| | | <el-date-picker v-model="form.HDeleteDate" type="date" placeholder="选择作废日期" disabled> |
| | | <el-date-picker v-model="form.HDeleteDate" type="date" placeholder="选择作废日期" format="yyyy-MM-dd hh:mm:ss" disabled> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | size="mini">上移</el-button> |
| | | <el-button type="success" plain icon="el-icon-arrow-down" @click="handleMoveRowDown(zbSelForm)" |
| | | size="mini">下移</el-button> |
| | | <el-button type="success" plain icon="el-icon-printer" @click="get_ICInventoryMould(zbSelForm)">容器库存</el-button> |
| | | <!-- <el-button type="success" plain icon="el-icon-printer" @click="get_ICInventoryMould(zbSelForm)">容器库存</el-button> --> |
| | | <el-button type="success" plain icon="el-icon-printer" @click="get_ContainerInstantStock(zbSelForm)">容器即时库存</el-button> |
| | | </div> |
| | | <el-table :data="editData" style="width: 100%" height="300" width="100%" ref="zbTable" |
| | | @selection-change="handleTableZbEdit" :row-class-name="rowSysZbIndex" show-summary border> |
| | |
| | | <span>{{ scope.row.HUnitName }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column align="center" label="库存数量" width="120"> |
| | | <template slot-scope="scope"> |
| | | {{ scope.row.KuHQty }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column align="center" label="应发数量" width="120"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ scope.row.HQtyMust }}</span> |
| | |
| | | zzSelDis: false, |
| | | rowHideShow: false, |
| | | openRowHide: false, |
| | | HBillSubType: '', |
| | | hSupTypeList: [{name:'供应商',id:1,},{name:'客户',id:2},{name:'车间部门',id:3}], |
| | | HSourceBillTypes:[], |
| | | addBtnShow: false, |
| | |
| | | HStockOutOrgID: [ |
| | | { required: true, message: "调出组织不能为空", trigger: "blur" } |
| | | ], |
| | | HSecManagerName: [ |
| | | { required: true, message: "验收员不能为空", trigger: "blur" } |
| | | HBillSubType: [ |
| | | { required: true, message: "子单据类型不能为空", trigger: "blur" } |
| | | ], |
| | | HEmpName: [ |
| | | { required: true, message: "业务员不能为空", trigger: "blur" } |
| | | ], |
| | | HKeeperName: [ |
| | | { required: true, message: "保管员不能为空", trigger: "blur" } |
| | | ] |
| | | // HSecManagerName: [ |
| | | // { required: true, message: "验收员不能为空", trigger: "blur" } |
| | | // ], |
| | | // HEmpName: [ |
| | | // { required: true, message: "业务员不能为空", trigger: "blur" } |
| | | // ], |
| | | // HKeeperName: [ |
| | | // { required: true, message: "保管员不能为空", trigger: "blur" } |
| | | // ] |
| | | } |
| | | }; |
| | | }, |
| | |
| | | this.fetchData() |
| | | this.SourceBillType() |
| | | this.getdata() |
| | | |
| | | }, |
| | | methods: { |
| | | fetchData() { |
| | |
| | | this.form.HDeptID = data.HDeptID |
| | | this.form.HDeptName = data.HDeptName |
| | | this.form.HStockOrgID = data.HStockOutOrgID |
| | | this.form.HBillSubType = data.HBillSubType |
| | | this.form.HStockInOrgID = data.HStockInOrgID == null ? 0 : data.HStockInOrgID |
| | | this.form.HStockOutOrgID = data.HStockOutOrgID == null ? 0 : data.HStockOutOrgID |
| | | this.form.HWHName = data.HWHName |
| | | this.form.HSCWHName = data.HSCWHName |
| | | this.ifOrganizationEdit = true |
| | | //子表 赋值 |
| | | var rowdata = []; |
| | |
| | | this.editData = rowdata |
| | | }, |
| | | //弹窗赋值 |
| | | |
| | | //#region 查看容器即时库存 |
| | | async get_ContainerInstantStock(zbSelForm) { |
| | | if (!this.zbIndex) { |
| | | this.$modal.msgError("请选择一行数据"); |
| | | return; |
| | | } |
| | | |
| | | var index = zbSelForm.index - 1; |
| | | const rowData = this.editData[index]; |
| | | |
| | | if (rowData.HMaterID==0) { |
| | | this.$modal.msgError("请先选择容器"); |
| | | return; |
| | | } |
| | | |
| | | const whId = rowData.HWHID || this.form.HWHID; |
| | | if (!whId || whId == 0) { |
| | | this.$modal.msgError("请先选择有效的仓库"); |
| | | return; |
| | | } |
| | | |
| | | try { |
| | | this.$modal.loading("正在查询库存..."); |
| | | |
| | | // 获取仓库名称 |
| | | const whResponse = await axios.get(this.$baseUrl + "/CommonModel/searchMethod", { |
| | | params: { |
| | | "sql": `select HName from Gy_Warehouse where HItemID = ${whId}`, |
| | | "user": sessionStorage["HUserName"], |
| | | "ModRightNameCheck": "" |
| | | } |
| | | }); |
| | | |
| | | const whName = whResponse.data.data[0]?.HName; |
| | | if (!whName) { |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgError("未找到仓库信息"); |
| | | return; |
| | | } |
| | | |
| | | // 获取所有库存数据 |
| | | var sql = "exec h_p_Kf_ICInventory_Mould ''"; |
| | | const response = await axios.get(this.$baseUrl + "/CommonModel/searchMethod", { |
| | | params: { |
| | | "sql": sql, |
| | | "user": sessionStorage["HUserName"], |
| | | "ModRightNameCheck": "" |
| | | } |
| | | }); |
| | | |
| | | let totalQty = 0; |
| | | |
| | | if (response.data.count == 1 && response.data.data) { |
| | | // 基础过滤:容器ID + 仓库名称 |
| | | let filteredData = response.data.data.filter(item => |
| | | item['HMaterID'] == rowData.HMaterID && item['仓库'] === whName |
| | | ); |
| | | |
| | | // 如果有库位,按库位过滤 |
| | | if (rowData.HSPName) { |
| | | filteredData = filteredData.filter(item => item['仓位'] === rowData.HSPName); |
| | | } |
| | | |
| | | // 计算总库存 |
| | | filteredData.forEach(item => { |
| | | totalQty += Number(item['库存数量'] || 0); |
| | | }); |
| | | } |
| | | |
| | | // 更新当前行的库存数量 |
| | | this.$set(this.editData, index, { |
| | | ...rowData, |
| | | KuHQty: totalQty |
| | | }); |
| | | |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgSuccess(`库存查询成功,当前库存:${totalQty}`); |
| | | |
| | | } catch (error) { |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgError("查询库存失败"); |
| | | } |
| | | }, |
| | | //#endregion |
| | | dbEmitData(deptRow, num) { |
| | | // num=1部门 num=2仓库 |
| | | console.log(33,deptRow) |
| | |
| | | this.form.HWHName = deptRow.仓库名称 |
| | | this.form.HWHID = deptRow.HItemID |
| | | this.form.HWHNumber = deptRow.仓库代码 |
| | | |
| | | for(i=0;i<this.editData.length;i++){ |
| | | this.editData[i].HWHID = deptRow.HItemID |
| | | this.editData[i].HWHNumber = deptRow.仓库代码 |
| | | this.editData[i].HWHName = deptRow.仓库名称 |
| | | } |
| | | }else if(this.eHWHType == 2){ |
| | | this.form.HSCWHName = deptRow.仓库名称 |
| | | this.form.HSCWHID = deptRow.HItemID |
| | | this.form.HSCWHNumber = deptRow.仓库代码 |
| | | for(i=0;i<this.editData.length;i++){ |
| | | this.editData[i].HSCWHID = deptRow.HItemID |
| | | this.editData[i].HSCWHNumber = deptRow.仓库代码 |
| | | this.editData[i].HSCWHName = deptRow.仓库名称 |
| | | } |
| | | }else if(this.eHWHType == 3){ |
| | | this.editData[this.zbIndex].HWHID = deptRow.HItemID |
| | | this.editData[this.zbIndex].HWHNumber = deptRow.仓库代码 |
| | |
| | | this.openData = false |
| | | } else if (num == 9){ |
| | | if(this.HSPType == 1){ |
| | | this.editData[this.zbIndex].HSPID = deptRow.HMainID |
| | | this.editData[this.zbIndex].HSPID = deptRow.HItemID || 0 |
| | | this.editData[this.zbIndex].HSPNumber = deptRow.仓位代码 |
| | | this.editData[this.zbIndex].HSPName = deptRow.仓位名称 |
| | | console.log( "仓位id",deptRow.HItemID) |
| | | }else{ |
| | | this.editData[this.zbIndex].HSCSPID = deptRow.HMainID |
| | | this.editData[this.zbIndex].HSCSPID = deptRow.HItemID || 0 |
| | | this.editData[this.zbIndex].HSCSPNumber = deptRow.仓位代码 |
| | | this.editData[this.zbIndex].HSCSPName = deptRow.仓位名称 |
| | | console.log( "仓位2id",deptRow.HItemID) |
| | | } |
| | | this.gyStockPlaceShow = false |
| | | this.openData = false |
| | |
| | | HSupName:'', |
| | | HSupID:0, |
| | | HStockOutOrgID:sessionStorage["OrganizationID"] - 0, |
| | | HBillSubType: '', |
| | | HDeptName: '', |
| | | HDeptID: 0, |
| | | HWHName:'', |
| | |
| | | HSCWHID:0, |
| | | HEmpName:'', |
| | | HEmpID:0, |
| | | HMangerName:'', |
| | | HMangerID:0, |
| | | HManagerName:'', |
| | | HManagerID:0, |
| | | HSecManagerName:'', |
| | | HSecManagerID:0, |
| | | HKeeperName:'', |
| | |
| | | //新增获取单据号 |
| | | this.getHBillNo() |
| | | let date = new Date() |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD') |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD HH:mm:ss') |
| | | if (this.OperationType == 1) { |
| | | this.handleAddSysZb() |
| | | } |
| | |
| | | //新增获取单据号 |
| | | this.getHBillNo() |
| | | let date = new Date() |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD') |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD HH:mm:ss') |
| | | |
| | | //设置源单类型 |
| | | this.form.HSourceBillType = this.HSouceBillType |
| | |
| | | if (this.copyType == 1) { |
| | | this.getHBillNo() |
| | | let date = new Date() |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD') |
| | | this.form.HDate = moment(date).format('YYYY-MM-DD HH:mm:ss') |
| | | } else { |
| | | if (data[0].HSourceInterID != "0") { |
| | | this.ifOrganizationEdit = true |
| | |
| | | , "HInnerBillNo": data[0].内部单据号 |
| | | , "HStockInOrgID": data[0].HStockInOrgID |
| | | , "HStockOutOrgID": data[0].HStockOutOrgID |
| | | , "HBillSubType": data[0].子单据类型 |
| | | , "HMaker": data[0].制单人 |
| | | , "HChecker": data[0].审核人 |
| | | , "HCloseMan": data[0].关闭人 |
| | |
| | | this.form.HStockInOrgID = data[0].HStockInOrgID == null ? 0 : data[0].HStockInOrgID; |
| | | this.form.HStockOutOrgID = data[0].HStockOutOrgID == null ? 0 : data[0].HStockOutOrgID; |
| | | //子表 赋值 |
| | | console.log(response.data.data) |
| | | this.editData = response.data.data[0]; |
| | | this.editData1 = response.data.data[1]; |
| | | } |
| | |
| | | } |
| | | }, |
| | | //#endregion |
| | | |
| | | |
| | | // 编辑提交保存 |
| | | submitForm() { |
| | | if (this.form.HDate) { |
| | | this.form.HDate = moment(this.form.HDate).format('YYYY-MM-DD'); |
| | | } |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | let fhck = false |
| | |
| | | }else if(!item.HSCWHID){ |
| | | fhck = true |
| | | this.$modal.msgError("第" + (index + 1) + "行:调出仓库未选择!"); |
| | | }else if(!item.HUnitID){ |
| | | fhck = true |
| | | this.$modal.msgError("第" + (index + 1) + "行:计量单位为空!"); |
| | | }else if(item.HQty == 0){ |
| | | } |
| | | // else if(!item.HUnitID){ |
| | | // fhck = true |
| | | // this.$modal.msgError("第" + (index + 1) + "行:计量单位为空!"); |
| | | // } |
| | | else if(item.HQty == 0){ |
| | | fhck = true |
| | | this.$modal.msgError("第" + (index + 1) + "行:数量不能为0!"); |
| | | } |
| | |
| | | var sMainStr = JSON.stringify(this.form); |
| | | var sSubStr = JSON.stringify(this.editData); |
| | | var sMainSub = sMainStr + ';' + sSubStr + ';' + Operation + ";" + sessionStorage["HUserName"]; |
| | | console.log(sSubStr) |
| | | axios({ |
| | | method: 'post', |
| | | url: this.$baseUrl + "/Sc_MouldProdMoveBillController/GetSc_MouldProdMoveBill_Save_Json", |