From ef535555e378c56fdc967d2be204e32a3a0bb08a Mon Sep 17 00:00:00 2001
From: wangyi <2946747746@qq.com>
Date: 星期三, 19 十一月 2025 09:31:28 +0800
Subject: [PATCH] 销售退货单
---
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue | 1267 ++++++++++++++++++++++++++
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue | 1606 +++++++++++++++++++++++++++++++++
2 files changed, 2,873 insertions(+), 0 deletions(-)
diff --git a/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue b/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue
new file mode 100644
index 0000000..a2290d0
--- /dev/null
+++ b/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue
@@ -0,0 +1,1606 @@
+<template>
+ <div style="padding: 10px">
+ <el-form
+ :model="queryParams"
+ ref="queryForm"
+ size="small"
+ :inline="true"
+ label-width="78px"
+ class="searchBox"
+ >
+ <el-row>
+ <el-form-item label="鏃ユ湡" style="margin-left: 100px">
+ <el-date-picker
+ v-model="dateRange"
+ value-format="yyyy-MM-dd"
+ type="daterange"
+ range-separator="-"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ ></el-date-picker>
+ </el-form-item>
+ <el-form-item label="鏃ユ湡闂撮殧">
+ <el-select
+ v-model="queryParams.HInitTimeCycle"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ >
+ <el-option
+ v-for="(item, index) in rqsgList"
+ :key="index"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍗曟嵁鍙�" prop="HBillNo">
+ <el-input
+ v-model="queryParams.HBillNo"
+ placeholder="璇疯緭鍏ュ崟鎹彿"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="缁勭粐">
+ <el-select
+ v-model="queryParams.HOrgID"
+ placeholder="璇烽�夋嫨"
+ class="ForFilteringSchemes"
+ >
+ <el-option
+ v-for="(item, index) in organizationList"
+ :key="item.ID"
+ :label="item.Name"
+ :value="item.ID"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍗曟嵁鍙�" prop="HBillNo2">
+ <el-input
+ v-model="form.HBillNo2"
+ placeholder="璇疯緭鍏ュ悓姝ュ崟鎹彿"
+ @keyup.enter.native="BillSync"
+ >
+ <el-button slot="append" @click="BillSync">閲嶆柊鍚屾</el-button>
+ </el-input>
+ </el-form-item>
+ </el-row>
+
+ <el-collapse v-model="activeSeach">
+ <el-collapse-item title="鏇村" name="1">
+ <el-form-item label="瀹㈡埛" prop="HCusID">
+ <el-input
+ v-model="queryParams.HCusID"
+ placeholder="璇疯緭鍏ュ鎴�"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="閮ㄩ棬" prop="HDeptID">
+ <el-input
+ v-model="queryParams.HDeptID"
+ placeholder="璇疯緭鍏ラ儴闂�"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="涓荤" prop="HMangerID">
+ <el-input
+ v-model="queryParams.HMangerID"
+ placeholder="璇疯緭鍏ヤ富绠�"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-card class="box-card">
+ <div slot="header" class="clearfix"><span>杩囨护</span></div>
+ <div>
+ <el-row>
+ <el-form-item label-width="0">
+ <el-col :span="7">
+ <el-select
+ v-model="queryParams.ColName1"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <span v-for="(item, index) in btList" :key="index">
+ <el-option
+ :label="item.field"
+ :value="item.field"
+ v-if="!item.hide"
+ ></el-option>
+ </span>
+ </el-select>
+ </el-col>
+ <el-col :span="6" style="padding: 0 10px">
+ <el-select
+ v-model="queryParams.Comparator1"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <el-option
+ v-for="(item, index) in comparatorList"
+ :key="index"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="11">
+ <el-input
+ v-model="queryParams.ColContent1"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-form-item>
+ </el-row>
+ <el-row>
+ <el-form-item label-width="0">
+ <el-col :span="7">
+ <el-select
+ v-model="queryParams.ColName2"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <span v-for="(item, index) in btList" :key="index">
+ <el-option
+ :label="item.field"
+ :value="item.field"
+ v-if="!item.hide"
+ ></el-option>
+ </span>
+ </el-select>
+ </el-col>
+ <el-col :span="6" style="padding: 0 10px">
+ <el-select
+ v-model="queryParams.Comparator1"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <el-option
+ v-for="(item, index) in comparatorList"
+ :key="index"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="11">
+ <el-input
+ v-model="queryParams.ColContent2"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-form-item>
+ </el-row>
+ <el-row>
+ <el-form-item label-width="0">
+ <el-col :span="7">
+ <el-select
+ v-model="queryParams.ColName"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <el-option
+ v-for="(item, index) in btList"
+ :key="index"
+ :label="item.field"
+ :value="item.field"
+ ></el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="6" style="padding: 0 10px">
+ <el-select
+ v-model="queryParams.Comparator"
+ placeholder="璇烽�夋嫨"
+ @change="riqiChange"
+ class="ForFilteringSchemes"
+ >
+ <el-option
+ v-for="(item, index) in comparatorList"
+ :key="index"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="11">
+ <el-input
+ v-model="queryParams.ColContent"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-form-item>
+ </el-row>
+ </div>
+ </el-card>
+ </el-collapse-item>
+ </el-collapse>
+
+ <el-form-item label-width="78px">
+ <el-button type="primary" size="small" icon="el-icon-search" @click="handleQuery">
+ 鎼� 绱�</el-button
+ >
+ <el-button icon="el-icon-circle-close" size="small" @click="searchOpen = false"
+ >鍙� 娑�</el-button
+ >
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <!-- <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleImport"
+ >瀵煎叆</el-button
+ >
+ </el-col> -->
+ <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 :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleEdit((row = rowForm), (OperationType = 3))"
+ >缂栬緫</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleEdit((row = rowForm), (OperationType = 2))"
+ >澶嶅埗</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="single"
+ @click="handleDelete((form = rowForm))"
+ >鍒犻櫎
+ </el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CheckBill(0,(form = rowForm))"
+ >瀹℃牳</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CheckBill(1, (form = rowForm))"
+ >鍙嶅鏍�</el-button
+ >
+ </el-col>
+ <!-- <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_De_Stop(0, (form = rowForm))"
+ >绂佺敤</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_De_Stop(1, (form = rowForm))"
+ >鍙嶇鐢�</el-button
+ >
+ </el-col> -->
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CloseBill(1, (form = rowForm))"
+ >鍏抽棴</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CloseBill(2, (form = rowForm))"
+ >鍙嶅叧闂�</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_DropBill(1, (form = rowForm))"
+ >浣滃簾</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_DropBill(2, (form = rowForm))"
+ >鍙嶄綔搴�</el-button
+ >
+ </el-col>
+
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ >瀵煎嚭</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-download"
+ size="mini"
+ @click="handleRowHide"
+ >闅愯棌鍒楄缃�</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button type="primary" icon="el-icon-help" size="mini" @click="handleSearch"
+ >鎼� 绱�</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery"
+ >閲� 缃�</el-button
+ >
+ </el-col>
+ <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
+ </el-row>
+ <div class="tableBox" v-loading="loading">
+ <el-table
+ :data="tableData"
+ ref="tableData"
+ max-height="750"
+ :summary-method="getSummaries"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ v-if="tableShow"
+ >
+ <template v-for="(item, index) in btList">
+ <el-table-column
+ type="selection"
+ width="55"
+ align="center"
+ :fixed="item.fixed"
+ v-if="item.type == 'checkbox'"
+ :key="index"
+ />
+ <el-table-column
+ :align="item.align"
+ :prop="item.field"
+ :label="item.title"
+ :width="item.width"
+ :key="item.sorderid"
+ v-else-if="!item.hide && item.type != 'checkbox'"
+ :sortable="item.sort"
+ show-overflow-tooltip
+ :fixed="item.fixed"
+ >
+ <template slot-scope="{ row, column }">
+ <el-checkbox v-model="checked" v-if="item.type == 'checkbox'"></el-checkbox>
+ <div :style="item.style">
+ <span v-if="column.property.includes('鏃ユ湡')">{{
+ parseTime(row[column.property], "{y}-{m}-{d}")
+ }}</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>
+ </div>
+ </template>
+ </el-table-column>
+ </template>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ :pageSizes="pageSizes"
+ @pagination="getList"
+ />
+ <el-dialog
+ title="闅愯棌鍒楄缃�"
+ :visible.sync="openRowHide"
+ width="816px"
+ append-to-body
+ >
+ <RowSettings
+ :colName="btResList"
+ :HModName="HModName"
+ @rowEditClose="rowSetClose"
+ v-if="rowHideShow"
+ />
+ </el-dialog>
+ <!-- 缂栬緫 -->
+ <el-dialog
+ title="缂栬緫閿�鍞��璐у崟"
+ :visible.sync="openEdit"
+ width="1480px"
+ append-to-body
+ class="xsckdBox"
+ :before-close="close"
+ >
+ <edit
+ :OperationType="OperationType"
+ :linterid="this.rowForm.HItemID"
+ :HSouceBillType="this.rowForm.HSourceBillType"
+ :HOrgID="this.queryParams.HOrgID"
+ :copyType="copyType"
+ @editCloseGy="editGyClose"
+ v-if="editShow"
+ />
+ </el-dialog>
+ <el-dialog
+ :title="upload.title"
+ :visible.sync="upload.open"
+ width="1500px"
+ append-to-body
+ >
+ <div style="margin-top: -20px">
+ <el-button type="primary" @click="set_AddNew">瀵煎叆鏁版嵁</el-button>
+ <el-button type="primary" @click="upload.open = false">閫� 鍑�</el-button>
+ <el-upload
+ ref="upload"
+ :limit="1"
+ accept=".xlsx, .xls"
+ style="display: inline-block; margin-left: 10px"
+ :action="upload.url + '?updateSupport=' + upload.updateSupport"
+ :disabled="upload.isUploading"
+ :on-progress="handleFileUploadProgress"
+ :on-success="handleFileSuccess"
+ >
+ <el-button type="primary">鏂囦欢涓婁紶</el-button>
+ </el-upload>
+ </div>
+ <el-table
+ :data="uploadData"
+ v-loading="uploadTableLoading"
+ :row-class-name="uploadDataIndex"
+ border
+ height="550"
+ >
+ <el-table-column type="index" label="搴忓彿" width="55" align="center" />
+ <el-table-column label="缁勭粐浠g爜" prop="缁勭粐浠g爜" align="center" width="120" />
+ <el-table-column label="缁勭粐鍚嶇О" prop="缁勭粐鍚嶇О" align="center" width="120" />
+ <el-table-column
+ label="鐢熶骇璧勬簮鍚嶇О"
+ prop="鐢熶骇璧勬簮鍚嶇О"
+ align="center"
+ width="120"
+ />
+ <el-table-column
+ label="鐢熶骇璧勬簮浠g爜"
+ prop="鐢熶骇璧勬簮浠g爜"
+ align="center"
+ width="120"
+ />
+ <el-table-column label="閮ㄩ棬浠g爜" prop="閮ㄩ棬浠g爜" align="center" width="120" />
+ <el-table-column label="閮ㄩ棬鍚嶇О" prop="閮ㄩ棬鍚嶇О" align="center" width="120" />
+ <el-table-column
+ label="璐熻矗浜轰唬鐮�"
+ prop="璐熻矗浜轰唬鐮�"
+ align="center"
+ width="120"
+ />
+ <el-table-column label="璐熻矗浜�" prop="璐熻矗浜�" align="center" width="120" />
+ <el-table-column
+ label="宸ヤ綔涓績浠g爜"
+ prop="宸ヤ綔涓績浠g爜"
+ align="center"
+ width="120"
+ />
+ <el-table-column
+ label="宸ヤ綔涓績鍚嶇О"
+ prop="宸ヤ綔涓績鍚嶇О"
+ align="center"
+ width="120"
+ />
+ <el-table-column label="鍗曠彮宸ユ椂" prop="鍗曠彮宸ユ椂" align="center" width="120" />
+ <el-table-column label="鎿嶄綔" align="center">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="uploadDataDelete(scope.row)"
+ >鍒犻櫎</el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="uploadTotal > 0"
+ :total="uploadTotal"
+ :page.sync="uploadPage"
+ :limit.sync="uploadPageSize"
+ :pageSizes="uploadPageSizes"
+ @pagination="currentPage"
+ />
+ </el-dialog>
+ </div>
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+import RowSettings from "@/views/component/rowSettings";
+import Edit from '@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit'
+import dayjs from "dayjs";
+
+export default {
+ name: "GySource",
+ components: { RowSettings,Edit},
+ props: {
+ openPage: { type: String },
+ },
+ data() {
+ return {
+ activeSeach: "",
+ HModName: "Cg_POOrderBillList",
+ editShow: false,
+ openEdit: false,
+ totalNameList: [],
+ dateRange: [],
+ tableShow: true,
+ openPrintList: false,
+ printListShow: false,
+ HClassTag: "ForFilteringSchemes", //杩囨护鏉′欢鐨刢lass绫�
+ HBillType: "1202",
+ openBtnHide: false,
+ btnHideShow: false,
+ rowHideShow: false,
+ openRowHide: false,
+ copyType: 0,
+ comparatorList: [
+ { label: "=", value: "=" },
+ { label: ">=", value: ">=" },
+ { label: ">", value: ">" },
+ { label: "<=", value: "<=" },
+ { label: "<", value: "<" },
+ { label: "<>", value: "<>" },
+ { label: "鍖呭惈", value: "7" },
+ { label: "宸﹀寘鍚�", value: "8" },
+ { label: "鍙冲寘鍚�", value: "9" },
+ { label: "涓嶅寘鍚�", value: "10" },
+ ],
+ sWhere: "",
+ sTime: "",
+ eTime: "",
+ rqsgList: [
+ { label: "浠婂ぉ", value: 0 },
+ { label: "杩戜袱澶�", value: 1 },
+ { label: "杩戜笁澶�", value: 2 },
+ { label: "杩戝洓澶�", value: 3 },
+ { label: "杩戜簲澶�", value: 4 },
+ { label: "杩戝叚澶�", value: 5 },
+ { label: "杩戜竷澶�", value: 6 },
+ { label: "杩�30澶�", value: 29 },
+ { label: "杩戝崐骞�", value: 180 },
+ { label: "杩戜竴骞�", value: 365 },
+ ],
+ hPriceTypeList: ["鎴愭湰浠�", "缁撶畻浠�"],
+ addBtnShow: false,
+ zbIndex: null,
+ zbSelForm: {}, //瀛愯〃閫変腑鏁版嵁
+ dialogTypeNum: null, //閮ㄩ棬寮圭獥1锛屼粨搴撳脊绐�2
+ deptShow: false, //閮ㄩ棬鏁版嵁缁勪欢
+ warehouseShow: false, //浠撳簱鏁版嵁缁勪欢
+ materialShow: false, //鐗╂枡鏁版嵁缁勪欢
+ deptform: {}, //寮圭獥閫変腑鏁版嵁
+ openData: false, //鏁版嵁寮圭獥
+ dialogTitle: "",
+ zuzhiId: "",
+ organizationList: JSON.parse(sessionStorage.getItem("organizationList")), //缁勭粐鍒楄〃
+ subDisabled: false, //缂栬緫椤甸潰淇濆瓨鎸夐挳鏄惁绂佺敤(true绂佺敤锛宖alse鍙敤)
+ OperationType: null, //淇濆瓨绫诲瀷锛堟柊澧�1淇敼3锛�
+ HInterID: null,
+ baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
+ user: "admin",
+ currentRow: [],
+ lastSelectedRowIndex: null, // 鐢ㄤ簬璁板綍涓婃鐐瑰嚮鐨勮绱㈠紩
+ lastSelectedRow: null, // 涓婁竴娆¢�変腑鐨勮
+ selectedRow: null, // 褰撳墠閫変腑鐨勮
+ rowForm: {},
+ checkedSysZb: [],
+ editData: [], //鐢熶骇璧勬枡瀛愯〃
+ editBtData: [], //瀛愯〃琛ㄥご
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ HOrgID: sessionStorage["OrganizationID"],
+ HName: null,
+ HNumber: null,
+ Comparator1: "",
+ Comparator2: "",
+ Comparator: "",
+ ColContent1: "",
+ ColContent2: "",
+ ColContent: "",
+ HInitTimeCycle: 29,
+ HBeginDate: dayjs(new Date()).subtract(29, "d").format("YYYY-MM-DDTHH:mm:ss"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss"),
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ // 绂佺敤鏃ユ湡閫夋嫨
+ disableDataPicker: true,
+ tyResList: [], //鏀舵枡閫氱煡鍗曞垪琛紙鎺ュ彛鏁版嵁锛�
+ btList: [], //鏀舵枡閫氱煡鍗曞垪琛ㄦ樉绀�
+ btResList: [],
+ tableData: [], //鏀舵枡閫氱煡鍗曞垪琛�(鍒嗛〉鏄剧ず)
+ dataList: [],
+ titleData: ["HItemID", "Hprocid", "HUSEORGID", "HCREATEORGID", "HParentID"], //涓嶉渶瑕佹樉绀虹殑瀛楁 鍙墿灞�
+ pageSizes: [50, 100, 500, 5000, 50000],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ HSupName: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ HDate: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ HExRate: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+ upload: {
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁绂佺敤涓婁紶
+ isUploading: false,
+ // 鏄惁鏇存柊宸茬粡瀛樺湪鐨勬暟鎹�
+ updateSupport: 0,
+ // 璁剧疆涓婁紶鐨勮姹傚ご閮�
+ // headers: { Authorization: "Bearer " + getToken() },
+ // 涓婁紶鐨勫湴鍧�
+ url: "http://47.96.97.237/API/Gy_Source/Gy_Source_Excel",
+ },
+ uploadData: [],
+ alluploadList: [],
+ uploadTableLoading: false,
+ uploadPageSizes: [50, 100, 500, 5000, 50000],
+ uploadPage: 1,
+ uploadPageSize: 50,
+ uploadTotal: 0,
+ };
+ },
+ mounted() {},
+ created() {
+ this.riqiChange();
+ this.getList();
+ },
+ methods: {
+ BillSync() {
+ axios.get(`${this.baseURL}/Kf_ICStockBillMain/GetCStockBillList`, {
+ params: { BillNo: this.form.HBillno2, BillType: 1403 },
+ });
+ },
+ onDateScanOptionChangerHandler(e) {
+ this.queryParams.timeSpan = e;
+ if (e == -1) {
+ this.disableDataPicker = true;
+ return;
+ }
+
+ this.disableDataPicker = false;
+ },
+ getSummaries(param) {
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = "鍚堣";
+ return;
+ }
+ const values = data.map((item) => Number(item[column.property]));
+ if (this.totalNameList[index].totalRow) {
+ if (!values.every((value) => isNaN(value))) {
+ sums[index] = values.reduce((prev, curr) => {
+ const value = Number(curr);
+ if (!isNaN(value)) {
+ return prev + curr;
+ } else {
+ return prev;
+ }
+ }, 0);
+ } else {
+ sums[index] = "";
+ }
+ }
+ }, 1000);
+ return sums;
+ },
+
+ //#region 鑾峰彇鍏徃鍚嶏紝鏍规嵁鍏徃杩涜瀹氬埗鍖栧紑鍙�
+ defaintOperationByCompanyName() {
+ var result = false;
+ axios
+ .get(this.baseURL + "/Xt_getInfo/getCompanyName")
+ .then((res) => {
+ var data1 = res.data;
+ if (data1.count == 1) {
+ if (data1.data == "姘村姟") {
+ result = true;
+ }
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ return result;
+ },
+ handleSellOpen() {
+ this.$router.push("/sellBill");
+ },
+ handleSellOutOpen() {
+ this.$router.push("/sellOutBill");
+ },
+ handleBtnHide() {
+ this.btnHideShow = true;
+ this.openBtnHide = true;
+ },
+ handleRowHide() {
+ this.rowHideShow = true;
+ this.openRowHide = true;
+ },
+ rowSetClose(val) {
+ this.rowHideShow = false;
+ this.tableShow = true;
+ this.openRowHide = val;
+ this.getList();
+ },
+ riqiChange() {
+ const end = dayjs(new Date()).format("YYYY-MM-DD");
+ const start = dayjs(new Date())
+ .subtract(this.queryParams.HInitTimeCycle, "d")
+ .format("YYYY-MM-DD");
+ // start.setTime(start.getTime() - 3600 * 1000 * 24 * this.queryParams.HInitTimeCycle);
+ // const yyyyS = start.getFullYear();
+ // const mmS = String(start.getMonth() + 1).padStart(2, "0"); // 鏈堜唤鏄粠0寮�濮嬬殑
+ // const ddS = String(start.getDate()).padStart(2, "0");
+ // const yyyyE = end.getFullYear();
+ // const mmE = String(end.getMonth() + 1).padStart(2, "0"); // 鏈堜唤鏄粠0寮�濮嬬殑
+ // const ddE = String(end.getDate()).padStart(2, "0");
+ this.sTime = start;
+ this.eTime = end;
+ this.dateRange = [this.sTime, this.eTime];
+ },
+ organizationChange(val) {
+ // let options=undefined
+ // this.form=this.organizationList.find(option => option.ID === val)?.Name || '';
+ },
+ //閮ㄩ棬寮圭獥璧嬪��
+ dbEmitData(deptRow, num) {
+ // num=1閮ㄩ棬 num=2鍑哄簱浠撳簱
+ if (num == 1) {
+ this.form.HDeptName = deptRow.閮ㄩ棬鍚嶇О;
+ this.form.HDeptID = deptRow.HItemID;
+ this.form.HEmpID = deptRow.HEmpID;
+ this.form.HManagerName = deptRow.璐熻矗浜�;
+ this.openData = false;
+ } else if (num == 2) {
+ this.editData[this.zbIndex].HWHID = deptRow.HItemID;
+ this.editData[this.zbIndex].鍙戣揣浠撳簱 = deptRow.浠撳簱鍚嶇О;
+ 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.openData = false;
+ }
+ },
+ emitData(deptRow, num) {
+ this.dialogTypeNum = num;
+ this.deptform = deptRow;
+ },
+ deptClickSub() {
+ this.dbEmitData(this.deptform, this.dialogTypeNum);
+ this.deptform = {};
+ },
+ async getList() {
+ this.tableShow = false;
+ this.loading = true;
+ if (this.pageSize == 0) {
+ this.pageSize = 50;
+ }
+ this.queryParams.HOrgID = sessionStorage["OrganizationID"] - 0;
+ console.log(this.organizationList);
+ let HOrgName = this.organizationList.find((e) => e.ID == this.queryParams.HOrgID)
+ ?.Name;
+
+ // this.queryParams.HOrgID = 100038
+ // this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '2020-01-01' and CONVERT(varchar(100),鏃ユ湡, 23) <= '2030-01-01'`;
+ // 鏀舵枡閫氱煡鍗曞垪琛�
+
+ if (this.dateRange.length > 0) {
+ this.sWhere +=
+ " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.dateRange[0] + "'";
+ this.sWhere +=
+ " and CONVERT(varchar(100),鏃ユ湡, 23) <= '" + this.dateRange[1] + "'";
+ }
+
+ try {
+ let res = await axios.get(this.baseURL + "/Kf_ICStockBillMain/GetCStockBillList", {
+ params: {
+ sWhere: this.sWhere,
+ user: this.user,
+ Organization: HOrgName,
+ page: this.page,
+ size: this.pageSize,
+ },
+ });
+ this.tyResList = [...JSON.parse(JSON.stringify(res.data.data))]; //鎬绘暟鎹�
+ let data1 = res.data;
+ let option = [];
+ if (data1.code == 1) {
+ this.btResList = data1.list; //鐢熶骇璧勬枡鎺ュ彛琛ㄥご鏁版嵁
+ this.total = data1.count;
+ var data = []; //鍒楀瓧娈垫暟鎹�
+ var col = [];
+ var totalArray = [];
+ //缁欑┖鐨勬暟缁勮祴鍊�
+ for (var key in data1.list) {
+ //寰簭閬嶅巻鏁扮粍
+ data.push({
+ id: data1.list[key].ColmCols,
+ name: data1.list[key].ColmCols,
+ Type: data1.list[key].ColmType,
+ }); //浠庢瘡涓璞′腑鎻愬彇鏁版嵁
+ }
+ //鍦ㄥ垪琛ㄥ乏杈规坊鍔犲嬀閫夋
+ col.push({ type: "checkbox", fixed: "left", totalRowText: "鍚堣" });
+ for (var i = 0; i < data.length; i++) {
+ //閬嶅巻data鏁扮粍閲嶇殑鏁版嵁
+ if (this.titleData.indexOf(data[i].name) > -1) {
+ //妫�鏌ata銆恑銆�.name鏄惁鍦ㄦ暟缁勪腑 //璁$畻鍒�
+ col.push({
+ field: data[i].id,
+ title: data[i].name,
+ align: "center",
+ hide: true,
+ }); //闅愯棌id鍒�
+ } else if (
+ totalArray.indexOf(data[i].name) > -1 ||
+ data[i].Type == "Decimal" ||
+ data[i].Type == "Int32"
+ ) {
+ //璁$畻鍒�
+ col.push({
+ field: data[i].id,
+ title: data[i].name,
+ align: "center",
+ sort: true,
+ totalRow: true,
+ width: 120,
+ });
+ } else {
+ col.push({
+ field: data[i].id,
+ title: data[i].name,
+ align: "center",
+ sort: true,
+ width: 200,
+ });
+ }
+ }
+ option.cols = [col];
+ this.dataList = option;
+ option.data = data1.data;
+ var result = data1.data;
+ var temp = "";
+ for (var i = 0; i < result.length; i++) {
+ if (temp != result[i]["hmainid"]) {
+ temp = result[i]["hmainid"];
+ } else {
+ result[i].鏃ユ湡 = null;
+ result[i].鍗曟嵁鍙� = "";
+ /*result[i].鐘舵�� = "";*/
+ result[i].绾㈣摑鍗曟爣璁� = "";
+ result[i].hsupid = "";
+ result[i].瀹㈡埛 = "";
+ result[i].HEmpID = "";
+ result[i].涓氬姟鍛� = "";
+ result[i].hmanagerid = "";
+ result[i].涓荤 = "";
+ result[i].hsecmanagerid = "";
+ result[i].鍙戣揣浜� = "";
+ result[i].hkeeperid = "";
+ result[i].淇濈鍛� = "";
+ result[i].HDeptID = "";
+ result[i].閮ㄩ棬 = "";
+ result[i].閿�鍞柟寮� = "";
+ }
+ }
+ option.data = result;
+ this.DisPlay_HideColumn(this.HModName, this.user, option, this.dataList);
+ }
+ } catch (err) {
+ this.$modal.msgError(`鑾峰彇鏀舵枡閫氱煡鍗曢敊璇�: ${err}`);
+ }
+ },
+ DisPlay_HideColumn(HModName, user, option, dataOption) {
+ this.totalNameList = [];
+ axios
+ .get(this.baseURL + "/Xt_grdAlignment_WMES/grdAlignmentWMESList", {
+ params: {
+ HModName: HModName,
+ user: user,
+ },
+ })
+ .then((res) => {
+ let data1 = res.data;
+ if (data1.data.length != 0) {
+ var dataCol = []; //鏁版嵁搴撴煡璇㈠嚭鐨勫垪鏁版嵁
+ var newCols = [[]]; //瀵瑰簲鏁版嵁搴撳垪椤哄簭col
+ newCols[0].push(option.cols[0][0]); //鏀惧叆绗竴涓猚heckbox
+ dataCol = data1.data[0].HGridString.split(",");
+ //鍒楄缃垪鏁颁笌椤甸潰鍒楁暟鏄惁涓�鑷�
+ if (dataCol.length == option.cols[0].length - 1) {
+ //閬嶅巻瀵绘壘鍒楄缃搴斿垪鎸夐『搴忔彃鍏�
+ for (var j = 0; j < option.cols[0].length - 1; j++) {
+ for (var i = 0; i < option.cols[0].length - 1; i++) {
+ var dataCols = dataCol[j].split("|");
+ //閫夋嫨涓巇atacols鐩稿簲鍒楄繘琛屼慨鏀�
+ if (option.cols[0][i + 1]["field"] == dataCols[5]) {
+ //闅愯棌鍒�
+ if (dataCols[1] == 1) {
+ option.cols[0][i + 1]["hide"] = true;
+ }
+ //璁剧疆鍒楀
+ if (dataCols[3] > 0) {
+ option.cols[0][i + 1]["width"] = dataCols[3];
+ }
+ //璁剧疆鍐呭瀛椾綋澶у皬
+ if (data1.data[0].HFontSize != 0) {
+ option.cols[0][i + 1]["style"] =
+ "font-size:" + data1.data[0].HFontSize + "px;";
+ } else {
+ option.cols[0][i + 1]["style"] = "font-size:100%";
+ }
+ //鏄剧ず鍒�
+ if (
+ dataCols[1] == 0 &&
+ this.titleData.indexOf(option.cols[0][i + 1]["title"]) == -1
+ ) {
+ option.cols[0][i + 1]["hide"] = false;
+ }
+ //缁熻鍒�
+ if (dataCols[6] == 1) {
+ option.cols[0][i + 1]["totalRow"] = true;
+ } else {
+ option.cols[0][i + 1]["totalRow"] = false;
+ }
+ //瀛椾綋鎵�鍦ㄤ綅缃�(宸� 灞呬腑 鍙�)
+ switch (dataCols[2]) {
+ case "L":
+ option.cols[0][i + 1]["align"] = "left";
+ break;
+ case "M":
+ option.cols[0][i + 1]["align"] = "center";
+ break;
+ case "R":
+ option.cols[0][i + 1]["align"] = "right";
+ break;
+ }
+ //璁剧疆琛ㄦ牸title灞炴�ф樉绀哄埆鍚�
+ if (dataCols[4] != null && dataCols[4] != "") {
+ option.cols[0][i + 1]["title"] = dataCols[4];
+ }
+ newCols[0].push(option.cols[0][i + 1]);
+ break;
+ }
+ }
+ }
+ //閬嶅巻寰幆鍚庡垽鏂搴斿垪鏁版槸鍚︿竴鑷�
+ if (dataCol.length == newCols[0].length - 1) {
+ option.cols = newCols;
+ //鍙栨秷鍐荤粨鍒�
+ for (var i = 1; i < option.cols[0].length - 1; i++) {
+ if (option.cols[0][i + 1]["fixed"] != null) {
+ option.cols[0][i + 1]["fixed"] = null;
+ } else {
+ break;
+ }
+ }
+ //鍐荤粨鍒�
+ if (data1.data[0].HFixCols != 0) {
+ for (var i = 0; i < data1.data[0].HFixCols; i++) {
+ if (
+ dataOption.cols[0].indexOf(option.cols[0][i + 1]["title"]) != -1
+ ) {
+ data1.data[0].HFixCols += 1;
+ }
+
+ option.cols[0][i + 1]["fixed"] = "left";
+ }
+ }
+ //璁剧疆鍒楁帓搴�
+ for (var i = 1; i < option.cols[0].length; i++) {
+ if (data1.data[0].HSortFlag == "鏄�") {
+ option.cols[0][i]["sort"] = true;
+ } else {
+ option.cols[0][i]["sort"] = false;
+ }
+ }
+ }
+ }
+ this.btList = option.cols[0];
+ this.btList.map((item) => {
+ if (!item.hide) {
+ this.totalNameList.push(item);
+ }
+ });
+ if (data1.data[0].HPageSize == 0) {
+ this.pageSize = 50;
+ } else {
+ this.pageSize = data1.data[0].HPageSize;
+ }
+ this.tableData = option.data;
+ this.tableShow = true;
+ this.loading = false;
+ } else {
+ this.btList = dataOption.cols[0];
+ this.btList.map((item) => {
+ if (!item.hide) {
+ this.totalNameList.push(item);
+ }
+ });
+ this.tableData = dataOption.data;
+ this.tableShow = true;
+ this.loading = false;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ renderHeader(h, { column, $index }) {
+ // 鏂板缓涓�涓� span
+ let span = document.createElement(span); // 璁剧疆琛ㄥご鍚嶇О
+ span.innerText = column.label;
+ //涓存椂鎻掑叆 document
+ document.body.appendChild(span); // 閲嶇偣:鑾峰彇 span 鏈�灏忓搴︼紝璁剧疆褰撳墠鍒楋紝娉ㄦ剰杩欓噷鍔犱簡 20锛屽瓧娈佃緝澶氭椂column.minWidth=span.getBoundingClientRect().width + 50.//绉婚櫎 document 涓复鏃剁殑 span
+ document.body.removeChild(span);
+ return h(span, column.label);
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.tableData.toggleRowSelection(row);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.OperationType = 3;
+ this.handleEdit();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ // this.rowForm = {}
+ this.ids = selection.map((item) => item.HItemID);
+ this.single = selection.length != 1;
+ this.multiple = !selection.length;
+ if (!this.single) {
+ this.rowForm = selection[0];
+ }
+ },
+ //鎵撳紑渚ц竟鎼滅储寮圭獥
+ handleSearch() {
+ this.searchOpen = true;
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.sWhere = "";
+ if (this.queryParams.ColName && this.queryParams.Comparator) {
+ var com = "";
+ switch (this.queryParams.Comparator) {
+ case "7":
+ com = "like'%" + this.queryParams.ColContent + "%'";
+ break;
+ case "8":
+ com = "like'%" + this.queryParams.ColContent + "'";
+ break;
+ case "9":
+ com = "like'" + this.queryParams.ColContent + "%'";
+ break;
+ case "10":
+ com = "not like'%" + this.queryParams.ColContent + "%'";
+ break;
+ default:
+ com =
+ "" + this.queryParams.Comparator + "'" + this.queryParams.ColContent + "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName + " " + com;
+ }
+ if (this.queryParams.ColName1 && this.queryParams.Comparator1) {
+ var com1 = "";
+ switch (this.queryParams.Comparator1) {
+ case "7":
+ com1 = "like'%" + this.queryParams.ColContent1 + "%'";
+ break;
+ case "8":
+ com1 = "like'%" + this.queryParams.ColContent1 + "'";
+ break;
+ case "9":
+ com1 = "like'" + this.queryParams.ColContent1 + "%'";
+ break;
+ case "10":
+ com1 = "not like'%" + this.queryParams.ColContent1 + "%'";
+ break;
+ default:
+ com1 =
+ "" +
+ this.queryParams.Comparator1 +
+ "'" +
+ this.queryParams.ColContent1 +
+ "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName1 + " " + com1;
+ }
+ if (this.queryParams.ColName2 && this.queryParams.Comparator2) {
+ var com2 = "";
+ switch (this.queryParams.Comparator2) {
+ case "7":
+ com2 = "like'%" + this.queryParams.ColContent2 + "%'";
+ break;
+ case "8":
+ com2 = "like'%" + this.queryParams.ColContent2 + "'";
+ break;
+ case "9":
+ com2 = "like'" + this.queryParams.ColContent2 + "%'";
+ break;
+ case "10":
+ com2 = "not like'%" + this.queryParams.ColContent2 + "%'";
+ break;
+ default:
+ com2 =
+ "" + this.queryParams.Comparator2 + "'" + this.queryParams.ColContent + "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
+ }
+ if (this.queryParams.HBillNo) {
+ this.sWhere += " and 鍗曟嵁鍙� like '%" + this.queryParams.HBillNo + "%'";
+ }
+ if (this.queryParams.HCusID) {
+ this.sWhere += " and 瀹㈡埛 like '%" + this.queryParams.HCusID + "%'";
+ }
+ if (this.queryParams.HDeptID) {
+ this.sWhere += " and 閮ㄩ棬 like '%" + this.queryParams.HDeptID + "%'";
+ }
+ if (this.queryParams.HMangerID) {
+ this.sWhere += " and 涓荤 like '%" + this.queryParams.HMangerID + "%'";
+ }
+
+ this.sWhere += this.addSWhereByOpenType();
+ // this.sWhere += this.getOrgIDByUser();
+ this.searchOpen = false;
+ this.getList();
+ },
+ // 鍒ゆ柇鏄洿鎺ユ墦寮�椤甸潰杩樻槸鍏跺畠椤甸潰閫氳繃閫夋嫨鎸夐挳鎵撳紑锛屽苟鏄剧ず鐩稿簲鏁版嵁
+ addSWhereByOpenType() {
+ //鑾峰彇鍙傛暟
+ var sWhere = "";
+ //this.openPage鍒ゆ柇鏄惁鏈夊�硷紝鏈変唬琛ㄥ叾瀹冮〉闈㈤�氳繃閫夋嫨鎸夐挳鎵撳紑
+ if (this.openPage) {
+ sWhere += " and 绂佺敤鏍囪 != 'Y' and ISNULL(瀹℃牳浜�,'') != ''";
+ return sWhere;
+ }
+ return sWhere;
+ },
+ //鏍规嵁鐢ㄦ埛鑾峰彇鐢ㄦ埛鍏宠仈缁勭粐鐨勮繃婊ゆ潯浠�
+ getOrgIDByUser() {
+ var res = "";
+ axios
+ .get(this.baseURL + "/Xt_User/getOrgIDListByUser", {
+ params: {
+ HModName: this.HModName,
+ user: this.user,
+ HOrgID: this.zuzhiId,
+ },
+ })
+ .then((res) => {
+ let result = res.data;
+ if (result.count == 1) {
+ if (result.data[0].sWhere == "1") {
+ res = " and HUSEORGID = '" + this.zuzhiId + "'";
+ } else {
+ res = result.data[0].sWhere;
+ }
+ }
+ })
+ .catch((error) => {
+ res = " and 1 = 0";
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ return res;
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.dateRange = [];
+ this.sWhere = "";
+ Object.assign(this.Parameters, {
+ HBillNo: "",
+ HInitTimeCycle: 29,
+ HProjectNumber: "",
+ HCusID: null,
+ HMaterNumber: "",
+ HMaterName: "",
+ ColName1: "",
+ ColName2: "",
+ ColName: "",
+ Comparator1: "",
+ Comparator2: "",
+ Comparator: "",
+ ColContent1: "",
+ ColContent2: "",
+ ColContent: "",
+ });
+ this.riqiChange();
+ this.resetForm("queryForm");
+ this.getList();
+ },
+
+ //閫�鍑�
+ close() {
+ this.tableShow = true;
+ this.openEdit = false;
+ this.getList();
+ },
+ //鎵撳紑鏂板缁勪欢寮圭獥
+ handleAddEdit() {
+ this.rowForm.hmainid = 0
+ this.editShow = true
+ this.openEdit = true
+ },
+ //鎵撳紑淇敼缁勪欢寮圭獥
+ handleEdit() {
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鍏抽棴缂栬緫椤甸潰
+ editGyClose(val) {
+ this.editShow = false;
+ this.openEdit = false;
+ (this.multiple = true), this.getList();
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(form) {
+ console.log(form);
+ this.$modal
+ .confirm("纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠")
+ .then(() => {
+ if (!this.rowForm.瀹℃牳浜�) {
+ axios
+ .get(this.baseURL + "Kf_ICStockBackBill/DropKf_ICStockBackBill", {
+ params: {
+ HInterID: form.hmainid.toString(),
+ HsupId: form.hsubid,
+ HQty: form["鏁伴噺"],
+ HSourceInterID: form["婧愬崟涓诲唴鐮�"],
+ HSourceEntryID: form["婧愬崟瀛愬唴鐮�"],
+ user: this.user,
+ },
+ })
+ .then((res) => {
+ if (res.data.count == 1) {
+ this.handleQuery();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ } else {
+ this.$modal.msgError("閿欒:" + result.code + result.Message);
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ } else {
+ this.$modal.msgError("姝ゆ潯鏁版嵁涓嶆槸鍒涘缓鐘舵��,鏃犳硶鍒犻櫎!");
+ }
+ })
+ .catch(() => {});
+ },
+ // 鍙嶅鏍�/瀹℃牳鏁版嵁
+ set_CheckBill(num, form) {
+ var InterID = form.HItemID || form.HInterID || form.hmainid;
+ //閫昏緫瀹℃牳鏂规硶
+ axios
+ .get(this.baseURL + "/Kf_ICStockBackBill/AuditKf_ICStockBackBill", {
+ params: { HInterID: InterID, IsAudit: num, CurUserName: this.user },
+ })
+ .then((res) => {
+ let result = res.data;
+ if (result.code == 1) {
+ this.$modal.msgSuccess("鎿嶄綔鎴愬姛");
+ this.getList();
+ } else {
+ this.$modal.msgError("閿欒:" + result.code + result.Message);
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ // 鍏抽棴/鍙嶅叧闂暟鎹�
+ async set_CloseBill(num, form) {
+ let HInterID = form.HItemID || form.HInterID || form.hmainid;
+ try {
+ let res = await axios.get(
+ this.baseURL+"/Kf_ICStockBackBill/CloseKf_ICStockBackBill",
+ {
+ params: {
+ HInterID: HInterID, IsAudit: num, CurUserName: this.user
+ },
+ }
+ );
+
+ let { data, Message, count } = res.data;
+
+ if (count == 1) {
+ this.handleQuery();
+ } else {
+ this.$modal.msgError(`${Message}`);
+ }
+ } catch (err) {
+ this.$modal.msgError(`鎺ュ彛璇锋眰澶辫触: ${err}`);
+ }
+ },
+
+ // 浣滃簾/鍙嶄綔搴熸暟鎹�
+ async set_DropBill(num, form) {
+ let HInterID = form.HItemID || form.HInterID || form.hmainid;
+ try {
+ let res = await axios.get(
+ this.baseURL+"Kf_ICStockBackBill/DeleteKf_ICStockBackBill",
+ {
+ params: {
+ HInterID: HInterID, IsAudit: num, CurUserName: this.user
+ },
+ }
+ );
+
+ let { data, Message, count } = res.data;
+
+ if (count == 1) {
+ this.handleQuery();
+ } else {
+ this.$modal.msgError(`${Message}`);
+ }
+ } catch (err) {
+ this.$modal.msgError(`鎺ュ彛璇锋眰澶辫触: ${err}`);
+ }
+ },
+ // 鍙嶇鐢�/绂佺敤鏁版嵁
+ set_De_Stop(num, form) {
+ var InterID = form.HItemID || form.HInterID;
+ //閫昏緫瀹℃牳鏂规硶
+ axios
+ .get(this.baseURL + "/Gy_Employee/StopGy_Employee", {
+ params: { HInterID: InterID, IsAudit: num, CurUserName: this.user },
+ })
+ .then((res) => {
+ let result = res.data;
+ if (result.code == 1) {
+ this.$modal.msgSuccess("鎿嶄綔鎴愬姛");
+ this.getList();
+ } else {
+ this.$modal.msgError("閿欒:" + result.code + result.Message);
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //瀵煎嚭
+ handleExport() {
+ const ws = this.$XLSX.utils.json_to_sheet(this.tyResList); // 灏嗘暟鎹浆鎹负宸ヤ綔琛�
+ const wb = this.$XLSX.utils.book_new(); // 鍒涘缓涓�涓柊鐨勫伐浣滅翱
+ this.$XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); // 灏嗗伐浣滆〃娣诲姞鍒板伐浣滅翱涓紝骞跺懡鍚嶄负"Sheet1"
+ this.$XLSX.writeFile(wb, `gySource_${new Date().getTime()}.xlsx`); // 瀵煎嚭鏂囦欢
+ },
+ handleImport() {
+ this.uploadData = [];
+ this.upload.isUploading = false;
+ this.upload.title = "瀵煎叆";
+ this.upload.open = true;
+ },
+ // 鏂囦欢涓婁紶涓鐞�
+ handleFileUploadProgress(event, file, fileList) {
+ this.upload.isUploading = true;
+ this.uploadTableLoading = true;
+ },
+ // 鏂囦欢涓婁紶鎴愬姛澶勭悊
+ handleFileSuccess(res, file, fileList) {
+ // this.upload.open = false;
+ this.upload.isUploading = true;
+ this.$refs.upload.clearFiles();
+ if (res.code == 1) {
+ this.alluploadList = res.data;
+ this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
+ this.uploadTotal = this.alluploadList.length;
+ this.uploadTableLoading = false;
+ // this.set_AddNew(res.data)
+ } else {
+ this.$alert(
+ "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
+ res.Message +
+ "</div>",
+ "瀵煎叆缁撴灉",
+ { dangerouslyUseHTMLString: true }
+ );
+ }
+ },
+ // 鎻愪氦涓婁紶鏂囦欢
+ submitFileForm() {
+ this.$refs.upload.submit();
+ },
+ set_AddNew() {
+ var num = [];
+ for (var i = 0; i < this.uploadData.length; i++) {
+ if (this.uploadData[i] != "") {
+ num.push(this.uploadData[i]);
+ }
+ }
+ var sSubStr = JSON.stringify(num);
+ var sMainSub = sSubStr + "&鍜�" + this.user;
+ axios({
+ method: "post",
+ url: this.baseURL + "/Gy_Source/Gy_Source_btnSave",
+ data: {
+ sMainSub: sMainSub,
+ },
+ })
+ .then((res) => {
+ this.$alert(
+ "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
+ res.data.Message +
+ "</div>",
+ "瀵煎叆缁撴灉",
+ { dangerouslyUseHTMLString: true }
+ );
+ this.upload.open = false;
+ this.getList();
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ uploadDataIndex({ row, rowIndex }) {
+ row.index = rowIndex + 1;
+ },
+ uploadDataDelete(row) {
+ this.$modal
+ .confirm("纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠")
+ .then(() => {
+ const deleteList = [row.index];
+ const data = this.uploadData;
+ this.uploadData = data.filter((item) => {
+ return deleteList.indexOf(item.index) == -1;
+ });
+ })
+ .catch(() => {});
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.uploadPageSize;
+ let eindex = parseInt(page) * this.uploadPageSize;
+ let newList = list.slice(sindex, eindex);
+ console.log(newList);
+ return newList;
+ },
+ currentPage(val) {
+ this.uploadPage = val.page;
+ setTimeout(() => {
+ this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
+ }, 100);
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+
+.form-item-inline > .el-form-item__content {
+ display: flex;
+ flex-direction: row;
+ width: 60%;
+}
+</style>
diff --git a/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue b/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue
new file mode 100644
index 0000000..d31148e
--- /dev/null
+++ b/src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue
@@ -0,0 +1,1267 @@
+<template>
+ <div v-loading="formLoading" v-if="formShow">
+ <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(0, form)">瀹� 鏍�</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="璇疯緭鍏ュ崟鎹紪鍙�" />
+ </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="BillType">
+ <el-select v-model="form.BillType" placeholder="璇烽�夋嫨">
+ <el-option label="閿�鍞鍗�" value="1401" />
+ <el-option label="鍙戣揣閫氱煡鍗�" value="1402" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="婧愬崟鍙�" prop="HMainSourceBillNo">
+ <el-input v-model="form.HMainSourceBillNo" placeholder="璇疯緭鍏ユ簮鍗曞彿" disabled>
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <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"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <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="HManagerName">
+ <el-input v-model="form.HManagerName" placeholder="璇疯緭鍏ヤ富绠�" disabled>
+ <el-button slot="append" icon="el-icon-search"></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"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="甯佸埆" prop="HCurName">
+ <el-input v-model="form.HCurName" placeholder="璇疯緭鍏ュ竵鍒�" disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="姹囩巼" prop="HExRate">
+ <el-input v-model="form.HExRate" placeholder="璇疯緭鍏ユ眹鐜�" disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鑱旂郴浜�" prop="HLinkMan">
+ <el-input v-model="form.HLinkMan" placeholder="璇疯緭鍏ヨ仈绯讳汉">
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鑱旂郴鐢佃瘽" prop="HLinkPhone">
+ <el-input v-model="form.HLinkPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�">
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="閿�鍞柟寮�" prop="HSellSName">
+ <el-input v-model="form.HSellSName" placeholder="璇疯緭鍏ラ攢鍞柟寮�" disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍙戣揣浜�" prop="HSecManagerName">
+ <el-input v-model="form.HSecManagerName" placeholder="璇疯緭鍏ュ彂璐т汉" disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="浠撶" prop="HKeeperName">
+ <el-input v-model="form.HKeeperName" placeholder="璇疯緭鍏ヤ粨绠�">
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍏ュ簱浠撳簱" prop="鍙戣揣浠撳簱">
+ <el-input v-model="form.HWHName" placeholder="璇疯緭鍏ュ叆搴撲粨搴�">
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="澶囨敞" prop="HRemark">
+ <el-input v-model="form.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+ </el-form-item>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="瀹㈡埛浣欓" prop="HCusBalance">
+ <el-input v-model="form.HCusBalance" >
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="淇$敤棰濆害" prop="HCreditRating_Now">
+ <el-input v-model="form.HCreditRating_Now"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍙敤棰濆害" prop="HAvailableBalance">
+ <el-input v-model="form.HAvailableBalance" >
+ <el-button slot="append" icon="el-icon-search"></el-button>
+ </el-input>
+ </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">
+ <span>{{ scope.row.璁¢噺鍗曚綅 }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="搴旀敹鏁伴噺" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.HQtyMust }}</span>
+ </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="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-input-number v-model="scope.row.HTaxRate" :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-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.HPrice * (1 + scope.row.HTaxRate*0.01) }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="閲戦" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.HPrice * scope.row.HQty }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="鍚◣閲戦" width="120">
+ <template slot-scope="scope">
+ <span>{{ (scope.row.HPrice * (1 + scope.row.HTaxRate*0.01)) * scope.row.HQty }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="閲囪喘閲戦" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.HPrice * scope.row.HQty }}</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)"
+ @dblclick.native="openDataDialog(2, 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(2, scope.row)"
+ @dblclick.native="openDataDialog(2, scope.row)" />
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="澶囨敞" width="120">
+ <template slot-scope="scope">
+ <el-input v-model="scope.row.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="閲囪喘鏁伴噺" width="120">
+ <template slot-scope="scope">
+ <span>{{ scope.row.HReqBuyQty }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" label="鎵规" width="120">
+ <template slot-scope="scope">
+ <el-input v-model="scope.row.HBatchNo" placeholder="璇疯緭鍏ユ壒娆�" />
+ </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" v-if="deptShow" />
+ <!-- 浠撳簱 -->
+ <Warehouse @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="warehouseShow" />
+ <!-- 鐗╂枡 -->
+ <Material @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="materialShow" />
+ <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="Kf_SellOutBillList" @rowEditClose="rowSetClose" v-if="rowHideShow" />
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { nextTick } from 'vue'
+import axios from 'axios'
+import moment from 'moment';
+import RowSettings from '@/views/component/rowSettings'
+import Dept from '@/views/component/dept'
+import Warehouse from '@/views/component/warehouse'
+import Material from '@/views/component/material'
+
+export default {
+ name: 'SellOutBill',
+ components: { Dept, Warehouse, Material, RowSettings },
+ props: {
+ OperationType: { type: Number, },
+ linterid: { type: Number, },
+ HSouceBillType: { type: String, },
+ propsData: { type: String, },
+ copyType: { type: Number, },
+ },
+ data() {
+ return {
+ baseURL: process.env.VUE_APP_BASE_API, //鍚庣鎺ュ彛鍓嶇紑(鍚庣鏈嶅姟鍣↖P)
+
+ organizationList: [], //椤甸潰鍒濆鍖栫粍缁囧垪琛�
+
+ loading: true, // 閬僵灞�
+
+ addBtnShow: false, //鏂板鎸夐挳鏄剧ず鏍囪
+ subDisabled: false, //淇濆瓨鎸夐挳绂佺敤鏍囪
+
+ formShow: false, //琛ㄥ崟鏄惁鏄剧ず鏍囪
+ formLoading: true, //琛ㄥ崟鍔犺浇閬僵
+ zzSelDis: false, //缁勭粐涓嬫媺鍒楄〃绂佺敤鏍囪
+
+ rowHideShow: false, //鍒楄缃粍浠跺鍣ㄦ樉绀烘爣璁�
+ openRowHide: false, //鍒楄缃粍浠舵樉绀烘爣璁�
+
+ dialogTitle: '', //寮圭獥鏍囬
+ openData: false, //鏁版嵁寮圭獥
+ dialogTypeNum: null, //閮ㄩ棬寮圭獥1锛屼粨搴撳脊绐�2
+ deptShow: false, //閮ㄩ棬鏁版嵁缁勪欢鏄剧ず鏍囪
+ warehouseShow: false, //浠撳簱鏁版嵁缁勪欢鏄剧ず鏍囪
+ materialShow: false, //鐗╂枡鏁版嵁缁勪欢鏄剧ず鏍囪
+ stockPlaceShow: false, //浠撲綅鏁版嵁缁勪欢鏄剧ず鏍囪
+ deptform: {}, //寮圭獥閫変腑鏁版嵁
+
+ temp: undefined, //涓存椂鍙橀噺
+ btResList: [], // 鍒楄缃�
+ form: {}, // 琛ㄥ崟鍙傛暟
+ rules: { // 琛ㄥ崟鏍¢獙
+ HSupName: [
+ { required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ HDate: [
+ { required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ HExRate: [
+ { required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }
+ ]
+ },
+
+ checkedSysZb: [],
+ editData: [], //瀛愯〃鏁版嵁
+ editBtData: [], //瀛愯〃琛ㄥご
+ activeName: 'first',
+ zbIndex: null,
+ zbSelForm: {}, //瀛愯〃閫変腑鏁版嵁,鐢ㄤ簬瀛愯〃澶嶅埗銆佷笂绉汇�佷笅绉荤瓑鎿嶄綔
+
+ HInterID: null,
+ hPriceTypeList: ['鎴愭湰浠�', '缁撶畻浠�'],
+ 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, // 闈炲涓鐢�
+
+
+ };
+ },
+ created() {
+ this.fetchData()
+ this.getdata()
+ },
+ beforeDestroy() {
+ this.$destroy()
+ },
+ methods: {
+ //#region 琛ㄥ崟鏁版嵁鍒濆鍖�
+ 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()
+ }
+ else if (this.OperationType == 4) {
+ this.zzSelDis = true
+ this.handleAdd()
+ var data = this.getUrlVars_JSON();
+ var dataArray = [];
+ for (var i = 0; i < data.length; i++) {
+ // this.getPushSourceBillInit(data[i].hmainid, data[i].hsubid);
+ axios.get(this.baseURL + '/Xs_SeOrderBill/loadXs_SeOrderBill_Push', {
+ params: {
+ "HInterID": data[i].hmainid
+ , "HSubID": data[i].hsubid
+ },
+ }).then(response => {
+ let result = response.data
+ if (result.code == 1) { // 璇存槑楠岃瘉鎴愬姛浜嗭紝
+ this.temp = result.data[0];
+ } else {
+ this.temp = result.data;
+ }
+ if (this.temp) {
+ dataArray.push(this.temp);
+ this.form.HDeptID = dataArray[0].HDeptID
+ this.form.HDeptName = dataArray[0].閮ㄩ棬
+ this.form.HEmpID = dataArray[0].HEmpID
+ this.form.HEmpName = dataArray[0].涓氬姟鍛�
+ this.form.HManagerID = dataArray[0].HManagerID
+ this.form.HManagerName = dataArray[0].涓荤
+ this.form.HMainSourceInterID = "0"
+ this.form.HMainSourceEntryID = "0"
+ this.form.HMainSourceBillNo = ""
+ this.form.HMainSourceBillType = dataArray[0].HBillType
+ this.form.HSupID = dataArray[0].HCusID
+ this.form.HSupName = dataArray[0].瀹㈡埛
+ this.form.HLinkMan = dataArray[0].鑱旂郴浜�
+ this.form.HLinkPhone = dataArray[0].鑱旂郴鐢佃瘽
+ this.form.HSellSID = dataArray[0].HSellSID
+ this.form.HSellSName = dataArray[0].閿�鍞柟寮�
+ this.form.HCurID = dataArray[0].HCurID
+ this.form.HCurName = dataArray[0].甯佸埆
+ this.form.HExRate = dataArray[0].姹囩巼
+ for (var i = 0; i < dataArray.length; i++) {
+ this.editData.push(
+ {
+ "HMaterID": dataArray[i].HMaterID
+ , "鐗╂枡浠g爜": dataArray[i].鐗╂枡浠g爜
+ , "鐗╂枡鍚嶇О": dataArray[i].鐗╂枡鍚嶇О
+ , "瑙勬牸鍨嬪彿": dataArray[i].瑙勬牸鍨嬪彿
+ , "HUnitID": dataArray[i].HUnitID
+ , "璁¢噺鍗曚綅": dataArray[i].璁¢噺鍗曚綅
+ , "HQtyMust": dataArray[i].鏁伴噺.toFixed(6)
+ , "HQty": dataArray[i].鏁伴噺.toFixed(6)
+ , "HPieceQty": "0"
+ , "HPrice": dataArray[i].鍗曚环.toFixed(4)
+ , "HTaxPrice": dataArray[i].瀹為檯鍚◣鍗曚环.toFixed(4)
+ , "HTaxRate": dataArray[i].绋庣巼
+ , "HMoney": dataArray[i].閲戦.toFixed(2)
+ , "HTaxMoney": dataArray[i].浠风◣鍚堣.toFixed(2)
+ , "HWHID": dataArray[i].HWHID
+ , "鍙戣揣浠撳簱": dataArray[i].HWHName
+ , "HRemark": ""
+ , "HQty_Full": "0"
+ , "HQty_Empty": "0"
+ , "HQty_Back": "0"
+ , "HCostPrice": "0"
+ , "HCostMoney": "0"
+ , "HSalePrice": "0"
+ , "HSeOrderInterID": dataArray[i].hmainid
+ , "HSeOrderEntryID": dataArray[i].hsubid
+ , "HSeOrderBillNo": dataArray[i].鍗曟嵁鍙�
+ , "HSourceInterID": dataArray[i].hmainid
+ , "HSourceEntryID": dataArray[i].hsubid
+ , "HSourceBillNo": dataArray[i].鍗曟嵁鍙�
+ , "HSourceBillType": dataArray[i].HBillType
+ , "HRelationQty": "0"
+ , "HRelationMoney": "0"
+ , 'HSPID': "0"
+ , 'HSPName': ""
+ , 'HSPGroupID': "0"
+ , "HSPGroupName": ""
+ , 'HSCWHID': "0"
+ , 'HSCWHName': ""
+ , 'HSCSPID': "0"
+ , 'HSCSPName': ""
+ , 'HBatchNo': ""
+ , 'HPOOrderInterID': "0"
+ , 'HPOOrderEntryID': "0"
+ , 'HPOOrderBillNo': ""
+ , 'HPropertyID': "0"
+ , 'HPropertyName': ""
+ , 'HSecUnitID': "0"
+ , 'HSecUnitName': ""
+ , 'HSecUnitRate': "0"
+ , 'HEngineNum': ""
+ , 'HUnderPanNum': ""
+ , 'HLeaveFactCard': ""
+ , 'HReqBuyQty': "0"
+ , 'HReqOutQty': "0"
+ , 'HCurrentInventory': "0"
+ }
+ );
+ }
+ }
+ this.$nextTick(() => {
+ this.formShow = true
+ this.formLoading = false
+ })
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ }
+ }
+ },
+ //#endregion
+
+ //#region 椤甸潰鏁版嵁鍒濆鍖�
+ reset() {
+ this.form = {
+ HInterID: 0,
+ HBillNo: "",
+ HDate: new Date(),
+ HEmpID: 0,
+ HEmpName: "",
+ HDeptID: 0,
+ HDeptName: "",
+ HSupID: 0,
+ HSupName: "",
+ HInvoiceBillNo: "",
+ HWHID: 0,
+ HWHName: "",
+ HSecManagerID: 0,
+ HSecManagerName: "",
+ HRemark: "",
+ HOrgID: sessionStorage["OrganizationID"] - 0,
+ HMaker: sessionStorage["HUserName"],
+ HChecker: "",
+ HCloseMan: "",
+ HUpDater: "",
+ HDeleteMan: "",
+ HMakeDate: "",//new Date().format("yyyy-MM-dd hh:mm:ss"),
+ HCheckDate: "",
+ HCloseDate: "",
+ HUpDateDate: "",
+ HDeleteDate: "",
+ BillType: '1402',
+ HBillSubType: '1205',
+ HSTOCKORGID: sessionStorage["OrganizationID"] - 0,//缁勭粐id
+ HOWNERID: sessionStorage["OrganizationID"] - 0,
+
+
+ HManagerID: 0,
+ HManagerName:"",
+ HKeeperID: 0,
+ HKeeperName: "",
+ HProjectID: 0,
+ HProjectNumber: "",
+ HProjectName: "",
+
+
+ HCurID: 0,
+ HCurName: '',
+ HExRate: 1,
+ HSourceBillType: "",
+ HMainSourceInterID: 0,
+ HMainSourceEntryID: 0,
+ HMainSourceBillType: '',
+ HMainSourceBillNo: '',
+ HExplanation :"",
+ HInnerBillNo: "",
+ }
+ this.editData = []
+ this.editBtData = []
+ this.ids = []
+ this.subDisabled = false
+ this.addBtnShow = false
+ // this.$refs.tableData.clearSelection()
+ this.activeName = 'first'
+ this.resetForm("form");
+ },
+ //#endregion
+
+ //#region 鏂板鎸夐挳鎿嶄綔
+ handleAdd() {
+ this.reset()
+ //鏂板鑾峰彇鍗曟嵁鍙�
+ this.getHBillNo()
+ if (this.OperationType == 1) {
+ this.handleAddSysZb()
+ }
+ this.$nextTick(() => {
+ this.formShow = true
+ this.formLoading = false
+ })
+ },
+ //#endregion
+
+ //#region 缂栬緫椤甸潰鍒濆鍖�
+ handleUpdate() {
+ this.reset()
+ let rowHmainid = this.linterid
+ axios.get(this.baseURL + "Kf_ICStockBackBill/getEditInitData", {
+ params: { 'HInterID': rowHmainid }
+ }).then(response => {
+ if (response.data.count == 1) {
+ var result = response.data
+ var data = response.data.data[0]
+ this.form.BillType = data.HSourceBillType
+ if (this.copyType == 1) {
+ this.getHBillNo()
+ }
+ else {
+ this.form.HInterID = data.hmainid
+ 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.form.HEmpID= data.HEmpID
+ this.form.HEmpName= data.涓氬姟鍛�
+ this.form.HDeptID= data.HDeptID
+ this.form.HDeptName= data.閮ㄩ棬
+ this.form.HSupID= data.HSupID
+ this.form.HSupName= data.渚涘簲鍟�
+ this.form.HInvoiceBillNo= data.鍙戠エ缂栧彿
+ this.form.HWHID= data.涓昏〃浠撳簱ID
+ this.form.HWHName= data.涓昏〃浠撳簱
+ this.form.HSecManagerID= data.HSecManagerID
+ this.form.HSecManagerName= data.楠屾敹鍛�
+ this.form.HRemark= data.琛ㄥご澶囨敞
+ this.form.HOrgID = data.HOrgID
+ this.form.HSTOCKORGID = data.HOrgID
+ this.form.HOWNERID = data.HOrgID
+
+ this.form.HKeeperID= data.HKeeperID
+ this.form.HKeeperName= data.淇濈鍛�
+ this.form.HSourceBillType= data.婧愬崟绫诲瀷
+ this.form.HManagerID= data.HManagerID
+ this.form.HManagerName= data.璐熻矗浜�
+ this.form.HExRate= data.姹囩巼
+ this.form.HProjectID= data.HProjectID
+ this.form.HProjectNumber= data.椤圭洰浠g爜
+ this.form.HProjectName= data.椤圭洰鍚嶇О
+ this.form.HCurID = data.HCurID
+ this.form.HCurName = data.甯佸埆
+ this.form.HExRate = data.姹囩巼
+ this.form.HBillSubType = data.HBillSubType
+ this.form.HMainSourceInterID = data.HMainSourceInterID
+ this.form.HMainSourceEntryID = data.HMainSourceEntryID
+ this.form.HMainSourceBillType = data.HMainSourceBillType
+ this.form.HMainSourceBillNo = data.HMainSourceBillNo
+ this.form.HExplanation =data.鎽樿
+ this.form.HInnerBillNo= 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].璁¢噺鍗曚綅
+ // , "HQtyMust": result.data[i].搴旀敹鏁伴噺
+ // , "HQty": 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].婧愬崟瀛愬唴鐮� //婧愬崟瀛愬唴鐮�
+ // , "HTaxRate": result.data[i].绋庣巼
+ // , "HTaxPrice": result.data[i].鍚◣鍗曚环
+ // , "HlineTotal": result.data[i].鍚◣閲戦
+ // }
+ // )
+ // }
+
+ if (data.鐘舵�� != '鍒涘缓' && this.copyType != 1) {
+ this.$modal.msgError("姝ゆ潯鏁版嵁涓嶆槸鍒涘缓鐘舵�侊紝涓嶈兘淇敼");
+ this.subDisabled = true
+ }
+ this.formShow = true
+ this.formLoading = false
+
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鍒楄缃�
+ handleRowHide() {
+ this.rowHideShow = true
+ this.openRowHide = true
+ },
+ rowSetClose(val) {
+
+ this.rowHideShow = false
+ this.openRowHide = val
+ this.$destroy()
+ },
+ //#endregion
+
+ //#region 缁勭粐鍊煎彉鏇翠簨浠�
+ organizationChange(val) {
+ // let options=undefined
+ // this.form=this.organizationList.find(option => option.ID === val)?.Name || '';
+ },
+ //#endregion
+
+ //#region 鏁版嵁寮圭獥
+ //#region 鎵撳紑鏁版嵁鍒楄〃寮圭獥
+ openDataDialog(num, row) {
+ 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.stockPlaceShow = true
+ this.openData = true
+ }
+ },
+ //#region 灏嗘暟鎹脊绐楀叏閮ㄥ彇娑堝姞杞�
+ showReset() {
+ this.deptShow = false
+ this.warehouseShow = false
+ this.materialShow = false
+ },
+ //#endregion
+ //#endregion
+
+ //#region 寮圭獥鏁版嵁鍙屽嚮杩斿洖琛ㄥ崟璧嬪�间簨浠�
+ dbEmitData(deptRow, num) {
+ if (num == 1) {
+ this.form.HDeptName = deptRow.閮ㄩ棬鍚嶇О //閮ㄩ棬
+ this.form.HDeptID = deptRow.HItemID
+ this.form.HEmpID = deptRow.HEmpID
+ this.form.HManagerName = deptRow.璐熻矗浜�
+ this.openData = false
+ }
+ else if (num == 2) { //鏀舵枡浠撳簱
+ this.editData[this.zbIndex].HWHID = deptRow.HItemID;
+ this.editData[this.zbIndex].鏀舵枡浠撳簱 = deptRow.浠撳簱鍚嶇О;
+ this.openData = false
+ }
+ else if (num == 4) { //浠撲綅
+ this.editData[this.zbIndex].HSPID = deptRow.HItemID;
+ this.editData[this.zbIndex].浠撲綅鍚嶇О = deptRow.浠撲綅鍚嶇О;
+ 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.openData = false
+ }
+ },
+ //#endregion
+
+ //#region 寮圭獥鏁版嵁鍗曞嚮浜嬩欢
+ emitData(deptRow, num) {
+ this.dialogTypeNum = num
+ this.deptform = deptRow
+ },
+ //#endregion
+
+ //#region 寮圭獥纭畾浜嬩欢
+ deptClickSub() {
+ this.dbEmitData(this.deptform, this.dialogTypeNum)
+ this.deptform = {}
+ },
+ //#endregion
+
+ //#region 寮圭獥鍙栨秷浜嬩欢
+ deptClose() {
+ this.deptform = {}
+ this.openData = false
+ },
+ //#endregion
+ //#endregion
+
+ //#region 宸ュ叿鏍忔寜閽搷浣�
+ //#region 缂栬緫鎻愪氦淇濆瓨
+ 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 sMainSub = sMainStr + ';' + sSubStr + ';' + sessionStorage["HUserName"] + ';' + this.OperationType;
+ axios({
+ method: 'post',
+ url: this.baseURL + "/Kf_SellOutBill/SaveSellOutBillList",
+ data: {
+ 'msg': sMainSub
+ },
+ }).then(response => {
+ if (response.data.count == 1) {
+ this.subDisabled = true//璁剧疆淇濆瓨鎸夐挳涓嶅彲鐢�
+ this.$modal.msgSuccess(response.data.Message);
+ this.get_MAXNum_Task(1);//璁剧疆娴佹按鍙峰鍔�
+ if (response.data.Verify == "Y") //鑷姩瀹℃牳
+ {
+ this.set_CheckBill(0, this.form); //瀹℃牳
+ }
+ this.addBtnShow = true
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ }
+ })
+ }
+ });
+ },
+ //#endregion
+
+ //#region 鍙嶅鏍�/瀹℃牳鏁版嵁
+ 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("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 閫�鍑烘寜閽搷浣�
+ close() {
+ this.reset()
+
+ if (!this.OperationType && !this.copyType) {
+ // this.$router.back()
+ window.close()
+ } else {
+ this.formShow = false
+ this.$emit('editClose', false)
+ }
+ },
+ //#endregion
+ //#endregion
+
+ //#region 瀛愯〃鎿嶄綔
+ //#region 璁剧疆瀛愯〃搴忓彿鍒�
+ rowSysZbIndex({ row, rowIndex }) {
+ row.index = rowIndex + 1;
+ },
+ //#endregion
+
+ //#region 瀛愯〃鏂板銆佹彃鍏ユ寜閽搷浣�
+ handleAddSysZb(index, num) {
+ if (num == 1 && !index) {
+ this.$modal.msgError("璇烽�夋嫨涓�琛屾暟鎹紪杈�!");
+ } else {
+ let obj = {
+ HMaterID: 0,
+ 鐗╂枡浠g爜: '',
+ 鐗╂枡鍚嶇О: '',
+ 瑙勬牸鍨嬪彿: '',
+ HUnitID: 0,
+ 璁¢噺鍗曚綅: '',
+ HQtyMust: 1,
+ HQty: 1,
+ HPieceQty: 0,
+ HPrice: 0,
+ HTaxPrice: 0,
+ HTaxRate: 0,
+ HMoney: 0,
+ HTaxMoney: 0,
+ HWHID: 0,
+ 鍙戣揣浠撳簱: '',
+ HRemark: '',
+ HQty_Full: 0,
+ HQty_Empty: 0,
+ HQty_Back: 0,
+ HCostPrice: 0,
+ HCostMoney: 0,
+ HSalePrice: 0,
+ HSeOrderInterID: 741,
+ HSeOrderEntryID: 18,
+ HSeOrderBillNo: 'XSFH00000747',
+ HSourceInterID: 741,
+ HSourceEntryID: 18,
+ HSourceBillNo: 'XSFH00000747',
+ HSourceBillType: 1402,
+ HRelationQty: 0,
+ HRelationMoney: 0,
+ HSPID: 0,
+ HSPName: '',
+ HSPGroupID: 0,
+ HSPGroupName: '',
+ HSCWHID: 0,
+ HSCWHName: '',
+ HSCSPID: 0,
+ HSCSPName: '',
+ HBatchNo: '',
+ HPOOrderInterID: 0,
+ HPOOrderEntryID: 0,
+ HPOOrderBillNo: '',
+ HPropertyID: 0,
+ HPropertyName: '',
+ HSecUnitID: 0,
+ HSecUnitName: '',
+ HSecUnitRate: 0,
+ HEngineNum: '',
+ HUnderPanNum: '',
+ HLeaveFactCard: '',
+ HReqBuyQty: 0,
+ HReqOutQty: 0,
+ HCurrentInventory: 0,
+ }
+ if (index) {
+ this.editData.splice(index, 0, obj);
+ this.$set(this.editData, index, obj)
+ } else {
+ this.editData.push(obj);
+ }
+ }
+ },
+ //#endregion
+
+ //#region 瀛愯〃澶嶅埗鎸夐挳
+ handleCopyZbRow() {
+ if (!this.zbIndex) {
+ this.$modal.msgError("璇烽�夋嫨涓�琛屾暟鎹�")
+ } else {
+ let copyRow = JSON.parse(JSON.stringify(this.zbSelForm))
+ this.editData.push(copyRow);
+ }
+ },
+ //#endregion
+
+ //#region 瀛愯〃涓婄Щ鎸夐挳
+ 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);
+ }
+ }
+ },
+ //#endregion
+
+ //#region 瀛愯〃涓嬬Щ鎸夐挳
+ 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);
+ }
+ }
+ },
+ //#endregion
+
+ //#region 瀛愯〃鍒犻櫎鎸夐挳
+ 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
+ });
+ }
+ },
+ //#endregion
+
+ //#region 瀛愯〃澶嶉�夋閫変腑鏁版嵁
+ 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) //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ },
+ //#endregion
+ //#endregion
+
+ //#region 閫氱敤鏂规硶銆�
+ //#region 鑾峰彇鍙傛暟_浼犻�掔殑JSON鏍煎紡鍙傛暟
+ getUrlVars_JSON() {
+ var datajson;
+ var str = this.propsData; //鑾峰彇閾炬帴涓紶閫掔殑鍙傛暟
+ var arr = str.substring(str.lastIndexOf("=") + 1);
+ datajson = JSON.parse(decodeURI(arr));
+ return datajson;
+ },
+ //#endregion
+
+ //#region 缁勭粐涓嬫媺鍒楄〃鏁版嵁鍒濆鍖�
+ fetchData() {
+ axios.get(this.baseURL + "/Web/GetOrganizations", {
+ }).then(response => {
+ if (response.data.count == 1) {
+ this.organizationList = response.data.data;//缁勭粐鍒楄〃
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鑾峰彇鍐呯爜銆佸崟鎹彿
+ getHBillNo() {
+ axios.get(this.baseURL + "/WEBSController/GetMaxBillNoAndID_Json", {
+ params: {
+ HBillType: '1201'
+ }
+ }).then(response => {
+ this.form.HBillNo = response.data.data[0].HBillNo
+ this.form.HInterID = response.data.data[0].HInterID
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鑾峰彇鏈�澶у崟鎹彿
+ get_MAXNum_Task(Type) {
+ var sql = `exec h_p_Xt_GetMaxBillNo_SubType '1201','${this.form.HDate}',0,0,0,'${Type}','${this.form.HDeptID}'`;
+ axios({
+ method: 'get',
+ url: this.baseURL + "/CommonModel/searchMethod",
+ params: { "sql": sql, "user": sessionStorage["HUserName"], "ModRightNameCheck": "" },
+ }).then(response => {
+ if (response.data.count == 1) {
+ this.form.HBillNo = response.data.data[0].HBillNo;
+ } else {
+ this.$modal.msgError(response.data.code + response.data.Message);
+ }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鏍规嵁鐢ㄦ埛鑾峰彇瀵瑰簲鑱屽憳銆侀儴闂ㄣ�侀攢鍞富绠�
+ 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("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鏍规嵁瀹㈡埛鑾峰彇瀹㈡埛浣欓
+ getCustomerBalance(HCusID) {
+ axios.get(this.baseURL + '/Xs_CusRatingChangeBill/getCustomerBalance', {
+ params: { "HCusID": HCusID, 'CurUserName': sessionStorage["HUserName"] }
+ }).then(response => {
+ var data = response.data.data[0];
+ this.form.HCusBalance = data.HCusBalance
+ this.form.HCreditRating_Now = data.HCreditRating_Now
+ this.form.HAvailableBalance = data.HAvailableBalance
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鏍规嵁瀹㈡埛甯﹀嚭鑱旂郴浜恒�佽仈绯荤數璇�
+ getCustomerByCusID(HCusID) {
+ axios.get(this.baseURL + "/Xs_SeOrderBill/getCustomerByCusID", {
+ params: {
+ HCusID: HCusID
+ }
+ }).then(response => {
+ this.form.鑱旂郴浜� = response.data.data[0].HLinkMan
+ this.form.鑱旂郴鐢佃瘽 = response.data.data[0].HLinkPhone
+ // this.form = response.data.data[0]
+
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鑾峰彇閿�鍞嚭搴撳崟瀵瑰簲鐨勬潯鐮佹槑缁�
+ getBarCodeNoteBySellOutBill(rowHmainid) {
+ axios.get(this.baseURL + '/Kf_SellOutBill/BarCodeNote', {
+ params: { "HInterID": rowHmainid }
+ }).then(response => {
+ if (response.data.count == 1) {
+ if (response.data.data[2].length > 0) {
+ this.$modal.msgError("褰撳墠鍗曟嵁鐢辨壂鐮佺敓鎴愶紝涓嶅彲浠ョ紪杈戯紒");
+ this.subDisabled = true
+ }
+ } else { }
+ }).catch(error => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+
+ //#region 鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栨簮鍗曢攢鍞鍗曟暟鎹�
+ 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("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ //#endregion
+ //#endregion
+
+
+
+
+
+ }
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
--
Gitblit v1.9.1