From bd7f9985d283a7950c2a29f4d8a2d027f8b45b9d Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期三, 26 十一月 2025 14:09:44 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-VUEUI
---
src/views/warehouse/shipment/Kf_StockOutRequestBill.vue | 914 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 913 insertions(+), 1 deletions(-)
diff --git a/src/views/warehouse/shipment/Kf_StockOutRequestBill.vue b/src/views/warehouse/shipment/Kf_StockOutRequestBill.vue
index 41a40c8..3fbe2ac 100644
--- a/src/views/warehouse/shipment/Kf_StockOutRequestBill.vue
+++ b/src/views/warehouse/shipment/Kf_StockOutRequestBill.vue
@@ -1 +1,913 @@
-<template></template>
\ No newline at end of file
+<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 @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-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="HInnerBillNo">
+ <el-input v-model="form.HInnerBillNo" placeholder="璇疯緭鍏ヨ緟鍔╁瓧娈�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="涓氬姟鍛�" prop="HEmpName">
+ <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>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="閮ㄩ棬" prop="HDeptName">
+ <el-input v-model="form.HDeptName" placeholder="璇疯緭鍏ラ儴闂�" disabled>
+ <el-button slot="append" icon="el-icon-search"
+ @click="openDataDialog(1)"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <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="12">
+ <el-form-item label="澶囨敞" prop="HRemark">
+ <el-input v-model="form.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+ </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="鐗╂枡浠g爜" width="120">
+ <template slot-scope="scope">
+ <el-input v-model="scope.row.鐗╂枡浠g爜" placeholder="璇疯緭鍏ョ墿鏂欎唬鐮�"
+ @keyup.native.f7="openDataDialog(3, scope.row)"
+ @dblclick.native="openDataDialog(3, scope.row)" />
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="鐗╂枡鍚嶇О" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.鐗╂枡鍚嶇О }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="瑙勬牸鍨嬪彿" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.瑙勬牸鍨嬪彿 }}</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('鍗曚綅椤甸潰杩樻病鏈�', scope.row, dwType = 'jldw')"
+ @dblclick.native="openDataDialog('鍗曚綅椤甸潰杩樻病鏈�', scope.row, dwType = 'jldw')" />
+ </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.搴撳瓨杈呭崟浣�" 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;"
+ controls-position="right"></el-input-number>
+ </template>
+ </el-table-column>
+ <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;"
+ controls-position="right"></el-input-number>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="鍗曚环" width="120">
+ <template slot-scope="scope">
+ <el-input-number v-model="scope.row.HPrice" :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">
+ <span>{{ scope.row.HMoney }}</span>
+ </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" />
+ <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 moment from 'moment';
+
+export default {
+ name: 'Kf_StockOutRequestBill',
+ components: { Dept, Warehouse, Material, RowSettings, GyEmployee, GySupplier, GyStockPlace },
+ props: {
+ OperationType: { type: Number, },
+ linterid: { type: Number, },
+ HSouceBillType: { type: String, },
+ propsData: { type: String, },
+ copyType: { type: Number, },
+ },
+ data() {
+ return {
+ HModName: "Kf_StockOutRequestBill",
+ 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,
+ deptform: {},//寮圭獥閫変腑鏁版嵁
+ openData: false,//鏁版嵁寮圭獥
+ dialogTitle: '',
+ organizationList: [],//缁勭粐鍒楄〃
+ subDisabled: false,//缂栬緫椤甸潰淇濆瓨鎸夐挳鏄惁绂佺敤(true绂佺敤锛宖alse鍙敤)
+ // 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: {
+
+ HDate: [
+ { required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ HExRate: [
+ { required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }
+ ]
+ }
+ };
+ },
+ created() {
+ this.fetchData()
+ this.getdata()
+ },
+ methods: {
+ fetchData() {
+ axios.get(this.baseURL + "/Web/GetOrganizations", {
+ }).then(response => {
+ if (response.data.count == 1) {
+ this.organizationList = response.data.data;//缁勭粐鍒楄〃
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ 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) {
+ if (num == 1) {
+ this.form.HDeptName = deptRow.閮ㄩ棬鍚嶇О
+ this.form.HDeptID = deptRow.HItemID
+ this.deptShow = false
+ this.openData = false
+ } else if (num == 2) {
+ if (this.ckType == 'form') {
+ this.form.HWHID = deptRow.HItemID;
+ this.form.HWHName = deptRow.浠撳簱鍚嶇О;
+ } else if (this.ckType == 'zb') {
+ this.editData[this.zbIndex].HWHID = deptRow.HItemID;
+ this.editData[this.zbIndex].浠撳簱 = deptRow.浠撳簱鍚嶇О;
+ }
+ this.warehouseShow = false
+ this.openData = false
+ } else if (num == 3) {
+ this.editData[this.zbIndex].HMaterID = deptRow.HItemID;
+ this.editData[this.zbIndex].鐗╂枡浠g爜 = deptRow.鐗╂枡浠g爜;
+ this.editData[this.zbIndex].鐗╂枡鍚嶇О = deptRow.鐗╂枡鍚嶇О;
+ this.editData[this.zbIndex].HUnitID = deptRow.HUnitID;
+ this.editData[this.zbIndex].瑙勬牸鍨嬪彿 = deptRow.瑙勬牸鍨嬪彿
+ 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) {
+ if (this.zhiyuanType == 'yewuyuan') {
+ this.form.HEmpName = deptRow.鑱屽憳鍚嶇О
+ this.form.HEmpID = deptRow.HItemID
+ } else if (this.zhiyuanType == 'baoguanyuan') {
+ 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.HSecManagerName = deptRow.鑱屽憳鍚嶇О
+ this.form.HSecManagerID = deptRow.HItemID
+ }
+ this.gyEmployeeShow = false
+ this.openData = false
+ } else if (num == 6) {
+ this.form.HSupName = deptRow.渚涘簲鍟嗗悕绉�
+ this.form.HSupID = deptRow.HItemID
+ this.gySupplierShow = false
+ this.openData = false
+ } else if (num == 9) {
+ this.editData[this.zbIndex].HSPID = deptRow.HMainID;
+ this.editData[this.zbIndex].浠撲綅 = deptRow.浠撲綅鍚嶇О;
+ this.gyStockPlaceShow = 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 = {
+ 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:'',
+
+ }
+ 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: '1242'
+ }
+ }).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
+ axios.get(this.baseURL + "/Kf_StockOutRequestBill/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.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.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.HRemark = data.琛ㄥご澶囨敞
+ for (var i = 0; i < result.data.length; i++) {
+ this.editData.push(
+ {
+ "HMaterID": result.data[i].HMaterID,
+ "鐗╂枡浠g爜": result.data[i].鐗╂枡浠g爜,
+ "鐗╂枡鍚嶇О": 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')
+ }
+ );
+ }
+ this.formShow = true
+ this.formLoading = false
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ /** 瀛愯〃鏄庣粏搴忓彿 */
+ rowSysZbIndex({ row, rowIndex }) {
+ row.index = rowIndex + 1;
+ },
+ /** 缂栬緫椤靛瓙琛ㄦ坊鍔犳寜閽搷浣� */
+ handleAddSysZb(index, num) {
+ if (num == 1 && !index) {
+ this.$modal.msgError("璇烽�夋嫨涓�琛屾暟鎹紪杈�!");
+ } else {
+ let obj = {
+ "HMaterID": 0, "鐗╂枡浠g爜": "", "鐗╂枡鍚嶇О": "", "瑙勬牸鍨嬪彿": "", "HUnitID": 1, "璁¢噺鍗曚綅": "", "HWHID": "0", "浠撳簱": "",
+ "HSPID": "0", "浠撲綅": "", "HSecUnitID": "1", "搴撳瓨杈呭崟浣�": "", "HBASEUNITID": "1", "鍩烘湰鍗曚綅": "",
+ "HEXTAUXUNITID": "1", "杈呭崟浣�": "", "HQtyMust": "0", "HQty": "0", "HPrice": "0", "HMoney": "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.浠撳簱) {
+ fhck = true
+ this.$modal.msgError("绗�" + (index + 1) + "琛岋細浠撳簱鏈�夋嫨锛�");
+ }
+ })
+ this.$nextTick(() => {
+ if (!fhck) {
+ var sMainStr = JSON.stringify(this.form);
+ var sSubStr = JSON.stringify(this.editData);
+ var sAllStr = JSON.stringify(this.allVal)
+ var sMainSub = sMainStr + ';' + sSubStr + ';' + this.OperationType + ";" + sessionStorage["HUserName"] + ';' + sAllStr;
+ axios({
+ method: 'post',
+ url: this.baseURL + "/Kf_StockOutRequestBill/StockOutRequestBillEdit",
+ data: {
+ 'sMainSub': sMainSub
+ },
+ }).then(response => {
+ if (response.data.count == 1) {
+ this.subDisabled = true//璁剧疆淇濆瓨鎸夐挳涓嶅彲鐢�
+ this.$modal.msgSuccess(response.data.Message);
+ this.close()
+ } else {
+ this.$modal.msgError(response.data.Message);
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ }
+ })
+ }
+ });
+ },
+ // 鍙嶅鏍�/瀹℃牳鏁版嵁
+ set_CheckBill(num, form) {
+ var InterID = form.hmainid || form.HInterID
+ //閫昏緫瀹℃牳鏂规硶
+ axios.get(this.baseURL + "/Kf_SellOutBill/AuditKf_SellOutBill", {
+ params: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
+ }).then(response => {
+ let result = response.data
+ if (result.code == 1) {
+ 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
+ },
+ // 鎵撳紑鏁版嵁鍒楄〃寮圭獥
+ openDataDialog(num, row) {
+ //num1閮ㄩ棬锛�2鍑哄簱浠撳簱锛�3鐗╂枡锛�4閿�鍞憳
+ if (row) {
+ this.zbIndex = row.index - 1
+ }
+ this.showReset()
+ if (num == 1) {
+ this.dialogTitle = '閮ㄩ棬鍒楄〃'
+ this.deptShow = true
+ this.openData = true
+ } else if (num == 2) {
+ this.dialogTitle = '鍑哄簱浠撳簱鍒楄〃'
+ this.warehouseShow = true
+ this.openData = true
+ } else if (num == 3) {
+ this.dialogTitle = '鐗╂枡鍒楄〃'
+ this.materialShow = true
+ this.openData = true
+ } else if (num == 4) {
+ this.dialogTitle = '鑱屽憳鍒楄〃'
+ this.gyEmployeeShow = true
+ this.openData = true
+ } else if (num == 6) {
+ this.dialogTitle = '寰�鏉ュ崟浣嶅垪琛�'
+ this.gySupplierShow = true
+ this.openData = true
+ } else if (num == 9) {
+ this.dialogTitle = '寰�鏉ュ崟浣嶅垪琛�'
+ this.gyStockPlaceShow = true
+ this.openData = true
+ }
+
+ },
+ }
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
--
Gitblit v1.9.1