From 85a507a7dc9312b68754c13c4a970d6854e2009b Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期二, 11 十一月 2025 09:23:58 +0800
Subject: [PATCH] 合并前保存
---
.gitignore | 1
src/views/cgPoOrderBill/index.vue | 1705 ++++++++++++
src/views/component/gyWorkType/index.vue | 235 +
src/views/gyEmployee/index.vue | 13
src/router/index.js | 26
src/views/component/gyDuty/index.vue | 270 +
src/views/component/gyDorm/index.vue | 241 +
src/views/xsSeOrderBill/index.vue | 1717 ++++++++++++
.env.development | 2
src/views/gyEmployee/edit/index.vue | 1575 +++++++----
src/views/gyStockPlace/edit/index.vue | 2
src/views/cgPoInStockBill/index.vue | 1717 ++++++++++++
src/views/gyWarehouse/edit/index.vue | 2
src/views/component/gyPost/index.vue | 236 +
src/views/component/gyClassTimePrj/index.vue | 235 +
src/views/component/gyGroup/index.vue | 232 +
16 files changed, 7,629 insertions(+), 580 deletions(-)
diff --git a/.env.development b/.env.development
index e3a8c4e..1fc5b38 100644
--- a/.env.development
+++ b/.env.development
@@ -5,7 +5,7 @@
ENV = 'development'
# 鏅轰簯杩堟�滾-MOM绠$悊绯荤粺/寮�鍙戠幆澧�
-VUE_APP_BASE_API = 'http://47.96.97.237/API/'
+VUE_APP_BASE_API = 'http://localhost:81/API/'
# 璺敱鎳掑姞杞�
VUE_CLI_BABEL_TRANSPILE_MODULES = true
diff --git a/.gitignore b/.gitignore
index 78a752d..aed7921 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,4 @@
package-lock.json
yarn.lock
+pnpm-lock.yaml
diff --git a/src/router/index.js b/src/router/index.js
index 201d4f4..c98489b 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -179,24 +179,42 @@
component: () => import("@/views/component/printList/hBarPlanPrint"),
hidden: true,
},
- // 浠撳簱
+ // 浠撳簱
{
- path: "/gyWarehouse",
+ path: '/gyWarehouse',
component: () => import("@/views/gyWarehouse/index"),
hidden: true,
},
// 浠撲綅
{
- path: "/gyStockPlace",
+ path: '/gyStockPlace',
component: () => import("@/views/gyStockPlace/index"),
hidden: true,
},
// 鑱屽憳
{
- path: "/gyEmployee",
+ path: '/gyEmployee',
component: () => import("@/views/gyEmployee/index"),
hidden: true,
},
+ // 閲囪喘璁㈠崟
+ {
+ path: '/cgPoOrderBillList',
+ component: () => import("@/views/cgPoOrderBill/index"),
+ hidden: true
+ },
+ // 鏀舵枡閫氱煡鍗�
+ {
+ path: '/cgPoInStockBillList',
+ component: () => import("@/views/cgPoInStockBill/index"),
+ hidden: true
+ },
+ // 閿�鍞鍗�
+ {
+ path: "/xsSeOrderBillList",
+ component: () => import("@/views/xsSeOrderBill/index"),
+ hidden: true
+ }
];
// 鍔ㄦ�佽矾鐢憋紝鍩轰簬鐢ㄦ埛鏉冮檺鍔ㄦ�佸幓鍔犺浇
diff --git a/src/views/cgPoInStockBill/index.vue b/src/views/cgPoInStockBill/index.vue
new file mode 100644
index 0000000..e057ad3
--- /dev/null
+++ b/src/views/cgPoInStockBill/index.vue
@@ -0,0 +1,1717 @@
+<template>
+ <div style="padding: 10px">
+ <el-drawer title="鏌ヨ" :visible.sync="searchOpen" :with-header="false" size="650px">
+ <div style="padding: 50px; width: 630px">
+ <div class="searchText">
+ <div style="font-size: 18px">QUICK SEARCH</div>
+ <div>蹇�熸悳绱�</div>
+ <div class="searchImg"></div>
+ </div>
+ <el-form :model="queryParams" ref="queryForm" label-width="98px">
+ <el-row>
+ <el-form-item label="鑱屽憳浠g爜" prop="HNumber">
+ <el-input
+ v-model="queryParams.HNumber"
+ placeholder="璇疯緭鍏ヨ亴鍛樹唬鐮�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-form-item>
+ <el-form-item label="鑱屽憳鍚嶇О" prop="HName">
+ <el-input
+ v-model="queryParams.HName"
+ placeholder="璇疯緭鍏ヨ亴鍛樺悕绉�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </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="index"
+ :label="item.Name"
+ :value="item.ID"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-row>
+ <el-card class="box-card">
+ <div slot="header" class="clearfix"><span>杩囨护</span></div>
+ <div>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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.Comparator2"
+ 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="11">
+ <el-input
+ v-model="queryParams.ColContent2"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ </div>
+ </el-card>
+ <el-form-item label-width="78px" style="margin-top: 50px">
+ <el-button type="primary" icon="el-icon-search" @click="handleQuery">
+ 鎼� 绱�</el-button
+ >
+ <el-button icon="el-icon-circle-close" @click="searchOpen = false"
+ >鍙� 娑�</el-button
+ >
+ </el-form-item>
+ </el-form>
+ </div>
+ </el-drawer>
+ <el-row>
+ <el-form>
+ <el-col :span="4" class="inline">
+ <el-form-item label="鏃ユ湡闂撮殧" class="form-item-inline">
+ <el-select
+ v-model="queryParams.timeSpan"
+ placeholder="璇烽�夋嫨鏃ユ湡闂撮殧"
+ @change="onDateScanOptionChangerHandler"
+ >
+ <el-option
+ v-for="(item, index) in [
+ {
+ label: '浠绘剰闂撮殧',
+ value: -1,
+ },
+ {
+ 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: 182,
+ },
+ {
+ label: '杩戜竴骞�',
+ value: 365,
+ },
+ ]"
+ :key="item.id"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="寮�濮嬫棩鏈�" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HBeginDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="缁撴潫鏃ユ湡" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HEndDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <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"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="single"
+ @click="handleDelete"
+ >鍒犻櫎
+ </el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CloseRow(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_CloseRow(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_DropBill(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_DropBill(2, (form = rowForm))"
+ >鍙嶄綔搴�</el-button
+ >
+ </el-col>
+
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ >瀵煎嚭</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ 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 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/gyEmployee/edit";
+import gySource from "@/views/gySource";
+import dayjs from "dayjs";
+
+export default {
+ name: "GySource",
+ components: { RowSettings, Edit, gySource },
+ props: {
+ openPage: { type: String },
+ },
+ data() {
+ return {
+ HModName: "Cg_POOrderBillList",
+ editShow: false,
+ openEdit: false,
+ totalNameList: [],
+ 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: [], //缁勭粐鍒楄〃
+ 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: null,
+ HName: null,
+ HNumber: null,
+ Comparator1: "",
+ Comparator2: "",
+ Comparator: "",
+ ColContent1: "",
+ ColContent2: "",
+ ColContent: "",
+ timeSpan: 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() {
+ this.queryParams.HBeginDate = dayjs(new Date())
+ .subtract(29, "d")
+ .format("YYYY-MM-DDTHH:mm:ss");
+ this.queryParams.HEndDate = dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss");
+ this.fetchData();
+ this.riqiChange();
+ },
+ created() {},
+ methods: {
+ 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 = new Date();
+ const start = new Date();
+ 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 = yyyyS + "-" + mmS + "-" + ddS;
+ this.eTime = yyyyE + "-" + mmE + "-" + ddE;
+ 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 = {};
+ },
+ fetchData() {
+ //鐧诲綍鐢ㄦ埛淇℃伅
+ axios
+ .get(
+ "http://47.96.97.237/API/Web/GetUser?UserName=001&PassWord=123456&HOrgName=100038"
+ )
+ .then((res) => {
+ let data = res.data.data[0];
+ this.zuzhiId = data.HUSEORGID; //鏍规嵁鐧诲綍鐢ㄦ埛鑾峰彇榛樿鐨勭粍缁嘔D
+ this.queryParams.HOrgID = data.HUSEORGID;
+ this.user = data.Czymc;
+ axios
+ .get(this.baseURL + "/Web/GetOrganizations", {})
+ .then((res) => {
+ if (res.data.count == 1) {
+ this.organizationList = res.data.data; //缁勭粐鍒楄〃
+ }
+
+ this.handleQuery();
+ // this.getList();
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ async getList() {
+ this.tableShow = false;
+ this.loading = true;
+ if (this.pageSize == 0) {
+ this.pageSize = 50;
+ }
+ // this.queryParams.HOrgID = 100038
+ // this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '2020-01-01' and CONVERT(varchar(100),鏃ユ湡, 23) <= '2030-01-01'`;
+ // 鏀舵枡閫氱煡鍗曞垪琛�
+ try {
+ let res = await axios.get(this.baseURL + "Cg_POInStockBill/page", {
+ params: {
+ sWhere: this.sWhere,
+ user: this.user,
+ 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.Comparator + "'" + this.queryParams.ColContent + "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
+ }
+ if (this.queryParams.HNumber) {
+ this.sWhere += " and 鐢熶骇璧勬簮浠g爜 like '%" + this.queryParams.HNumber + "%'";
+ }
+ if (this.queryParams.HName) {
+ this.sWhere += " and 鐢熶骇璧勬簮鍚嶇О like '%" + this.queryParams.HName + "%'";
+ }
+
+ if (this.queryParams.HBeginDate && this.queryParams.HEndDate) {
+ console.log(this.queryParams.HBeginDate, this.queryParams.HEndDate);
+ this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '${this.queryParams.HBeginDate}' and CONVERT(varchar(100),鏃ユ湡, 23) <= '${this.queryParams.HEndDate}'`;
+ }
+ if (this.queryParams.HOrgID) {
+ this.sWhere += " and HOrgID = '" + this.queryParams.HOrgID + "'";
+ }
+ 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.HItemID = 0;
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鎵撳紑淇敼缁勪欢寮圭獥
+ handleEdit() {
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鍏抽棴缂栬緫椤甸潰
+ editGyClose(val) {
+ this.editShow = false;
+ this.openEdit = false;
+ (this.multiple = true), this.getList();
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete() {
+ this.$modal
+ .confirm("纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠")
+ .then(() => {
+ if (!this.rowForm.瀹℃牳浜�) {
+ axios
+ .get(this.baseURL + "Cg_POInStockBill/DeltetPOInStockBill", {
+ params: {
+ HInter: this.rowForm.hmainid.toString(),
+ HsupId: this.rowForm.HsupId,
+ HQty: this.rowForm.HQty,
+ HSourceInterID: this.rowForm.HSourceInterID,
+ HSourceEntryID: this.rowForm.HSourceEntryID,
+ 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 + "/Cg_POInStockBill/AuditCg_POInStockBill", {
+ 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}/Cg_POInStockBill/CloseCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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_CloseRow(num, form) {
+ let HInterID = form.HItemID || form.HInterID || form.hmainid;
+ let HEntryID = form.HEntryID || form.hsubid;
+ try {
+ let res = await axios.get(
+ `${this.baseURL}/Cg_POInStockBill/CloseRowCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ HEntryID: HEntryID,
+ 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}/Cg_POInStockBill/DropCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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, IsStop: 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/cgPoOrderBill/index.vue b/src/views/cgPoOrderBill/index.vue
new file mode 100644
index 0000000..b27aeb3
--- /dev/null
+++ b/src/views/cgPoOrderBill/index.vue
@@ -0,0 +1,1705 @@
+<template>
+ <div style="padding: 10px">
+ <el-drawer title="鏌ヨ" :visible.sync="searchOpen" :with-header="false" size="650px">
+ <div style="padding: 50px; width: 630px">
+ <div class="searchText">
+ <div style="font-size: 18px">QUICK SEARCH</div>
+ <div>蹇�熸悳绱�</div>
+ <div class="searchImg"></div>
+ </div>
+ <el-form :model="queryParams" ref="queryForm" label-width="98px">
+ <el-row>
+ <el-form-item label="鑱屽憳浠g爜" prop="HNumber">
+ <el-input
+ v-model="queryParams.HNumber"
+ placeholder="璇疯緭鍏ヨ亴鍛樹唬鐮�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-form-item>
+ <el-form-item label="鑱屽憳鍚嶇О" prop="HName">
+ <el-input
+ v-model="queryParams.HName"
+ placeholder="璇疯緭鍏ヨ亴鍛樺悕绉�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </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="index"
+ :label="item.Name"
+ :value="item.ID"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-row>
+ <el-card class="box-card">
+ <div slot="header" class="clearfix"><span>杩囨护</span></div>
+ <div>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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.Comparator2"
+ 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="11">
+ <el-input
+ v-model="queryParams.ColContent2"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ </div>
+ </el-card>
+ <el-form-item label-width="78px" style="margin-top: 50px">
+ <el-button type="primary" icon="el-icon-search" @click="handleQuery">
+ 鎼� 绱�</el-button
+ >
+ <el-button icon="el-icon-circle-close" @click="searchOpen = false"
+ >鍙� 娑�</el-button
+ >
+ </el-form-item>
+ </el-form>
+ </div>
+ </el-drawer>
+ <el-row>
+ <el-form>
+ <el-col :span="4" class="inline">
+ <el-form-item label="鏃ユ湡闂撮殧" class="form-item-inline">
+ <el-select
+ v-model="queryParams.timeSpan"
+ placeholder="璇烽�夋嫨鏃ユ湡闂撮殧"
+ @change="onDateScanOptionChangerHandler"
+ >
+ <el-option
+ v-for="(item, index) in [
+ {
+ label: '浠绘剰闂撮殧',
+ value: -1,
+ },
+ {
+ 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: 182,
+ },
+ {
+ label: '杩戜竴骞�',
+ value: 365,
+ },
+ ]"
+ :key="item.id"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="寮�濮嬫棩鏈�" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HBeginDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="缁撴潫鏃ユ湡" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HEndDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <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"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="single"
+ @click="handleDelete"
+ >鍒犻櫎
+ </el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CloseRow(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_CloseRow(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_DropBill(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_DropBill(2, (form = rowForm))"
+ >鍙嶄綔搴�</el-button
+ >
+ </el-col>
+
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ >瀵煎嚭</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ 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 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/gyEmployee/edit";
+import gySource from "@/views/gySource";
+import dayjs from "dayjs";
+
+export default {
+ name: "GySource",
+ components: { RowSettings, Edit, gySource },
+ props: {
+ openPage: { type: String },
+ },
+ data() {
+ return {
+ HModName: "Cg_POOrderBillList",
+ editShow: false,
+ openEdit: false,
+ totalNameList: [],
+ 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: [], //缁勭粐鍒楄〃
+ 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: null,
+ HName: null,
+ HNumber: null,
+ Comparator1: "",
+ Comparator2: "",
+ Comparator: "",
+ ColContent1: "",
+ ColContent2: "",
+ ColContent: "",
+ timeSpan: 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() {
+ this.queryParams.HBeginDate = dayjs(new Date())
+ .subtract(29, "d")
+ .format("YYYY-MM-DDTHH:mm:ss");
+ this.queryParams.HEndDate = dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss");
+ this.fetchData();
+ this.riqiChange();
+ },
+ created() {},
+ methods: {
+ onDateScanOptionChangerHandler(e) {
+ this.queryParams.timeSpan = e;
+ if (e == -1) {
+ this.disableDataPicker = true;
+ }
+
+ 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((response) => {
+ var data1 = response.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 = new Date();
+ const start = new Date();
+ 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 = yyyyS + "-" + mmS + "-" + ddS;
+ this.eTime = yyyyE + "-" + mmE + "-" + ddE;
+ 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 = {};
+ },
+ fetchData() {
+ //鐧诲綍鐢ㄦ埛淇℃伅
+ axios
+ .get(
+ "http://47.96.97.237/API/Web/GetUser?UserName=001&PassWord=123456&HOrgName=100038"
+ )
+ .then((response) => {
+ let data = response.data.data[0];
+ this.zuzhiId = data.HUSEORGID; //鏍规嵁鐧诲綍鐢ㄦ埛鑾峰彇榛樿鐨勭粍缁嘔D
+ this.queryParams.HOrgID = data.HUSEORGID;
+ this.user = data.Czymc;
+ axios
+ .get(this.baseURL + "/Web/GetOrganizations", {})
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.organizationList = response.data.data; //缁勭粐鍒楄〃
+ }
+
+ this.handleQuery();
+ // this.getList();
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ getList() {
+ this.tableShow = false;
+ this.loading = true;
+ if (this.pageSize == 0) {
+ this.pageSize = 50;
+ }
+ // this.queryParams.HOrgID = 100038
+ // this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '2020-01-01' and CONVERT(varchar(100),鏃ユ湡, 23) <= '2030-01-01'`;
+ //鐢熶骇璧勬枡鍒楄〃
+ axios
+ .get(this.baseURL + "/Cg_POOrderBill/page", {
+ params: {
+ sWhere: this.sWhere,
+ user: this.user,
+ page: this.page,
+ size: this.pageSize,
+ },
+ })
+ .then((response) => {
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ let data1 = response.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]["HItemID"]) {
+ temp = result[i]["HItemID"];
+ } 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((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ 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.Comparator + "'" + this.queryParams.ColContent + "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
+ }
+ if (this.queryParams.HNumber) {
+ this.sWhere += " and 鐢熶骇璧勬簮浠g爜 like '%" + this.queryParams.HNumber + "%'";
+ }
+ if (this.queryParams.HName) {
+ this.sWhere += " and 鐢熶骇璧勬簮鍚嶇О like '%" + this.queryParams.HName + "%'";
+ }
+
+ if (this.queryParams.HBeginDate && this.queryParams.HEndDate) {
+ console.log(this.queryParams.HBeginDate, this.queryParams.HEndDate);
+ this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '${this.queryParams.HBeginDate}' and CONVERT(varchar(100),鏃ユ湡, 23) <= '${this.queryParams.HEndDate}'`;
+ }
+ // if (this.queryParams.HOrgID) {
+ // this.sWhere += " and HUSEORGID = '" + this.queryParams.HOrgID + "'";
+ // }
+ // 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((response) => {
+ let result = response.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.HItemID = 0;
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鎵撳紑淇敼缁勪欢寮圭獥
+ handleEdit() {
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鍏抽棴缂栬緫椤甸潰
+ editGyClose(val) {
+ this.editShow = false;
+ this.openEdit = false;
+ (this.multiple = true), this.getList();
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete() {
+ this.$modal
+ .confirm("纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠")
+ .then(() => {
+ if (!this.rowForm.瀹℃牳浜�) {
+ axios
+ .get(this.baseURL + "Cg_POOrderBill/DeltetCg_POOrderBill", {
+ params: { HInter: this.rowForm.HInterID.toString(), user: this.user },
+ })
+ .then((response) => {
+ if (response.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 + "/Cg_POOrderBill/AuditCg_POOrderBill", {
+ params: { HInterID: InterID, IsAudit: num, CurUserName: this.user },
+ })
+ .then((response) => {
+ let result = response.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}/Cg_POOrderBill/CloseCg_POOrderBill`, {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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_CloseRow(num, form) {
+ let HInterID = form.HItemID || form.HInterID || form.hmainid;
+ let HEntryID = form.HEntryID || form.hsubid;
+ try {
+ let res = await axios.get(
+ `${this.baseURL}Cg_POOrderBill/CloseRowCg_POOrderBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ HEntryID: HEntryID,
+ 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}/Cg_POOrderBill/DropCg_POOrderBil`, {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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, IsStop: num, CurUserName: this.user },
+ })
+ .then((response) => {
+ let result = response.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(response, file, fileList) {
+ // this.upload.open = false;
+ this.upload.isUploading = true;
+ this.$refs.upload.clearFiles();
+ if (response.code == 1) {
+ this.alluploadList = response.data;
+ this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
+ this.uploadTotal = this.alluploadList.length;
+ this.uploadTableLoading = false;
+ // this.set_AddNew(response.data)
+ } else {
+ this.$alert(
+ "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
+ response.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/component/gyClassTimePrj/index.vue b/src/views/component/gyClassTimePrj/index.vue
new file mode 100644
index 0000000..65784a8
--- /dev/null
+++ b/src/views/component/gyClassTimePrj/index.vue
@@ -0,0 +1,235 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in btList"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmCols"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ if (this.openType == 2) {
+ sWhere += `绂佺敤鏍囪='' and 瀹℃牳浜�<>''`;
+ }
+ this.loading = true;
+ axios
+ .get(this.baseURL + "/Gy_ClassTimePrjController/GetGy_ClassTimePrjList_Json", {
+ params: { sWhere: sWhere, HMaker: this.user, OperationType: 1 },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ this.loading = false;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "CTPrj");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/component/gyDorm/index.vue b/src/views/component/gyDorm/index.vue
new file mode 100644
index 0000000..fbbcf91
--- /dev/null
+++ b/src/views/component/gyDorm/index.vue
@@ -0,0 +1,241 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in tableColumns"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmColsLabel"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+
+ tableColumns: [
+ { ColmCols: "HItemID", ColmType: "INT32", ColmColsLabel: "瀹胯垗ID" },
+ { ColmCols: "HNumber", ColmType: "INT32", ColmColsLabel: "瀹胯垗浠g爜" },
+ { ColmCols: "HName", ColmType: "INT32", ColmColsLabel: "瀹胯垗鍚嶇О" },
+ ],
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ this.loading = true;
+ let Value = "";
+ axios
+ .get(this.baseURL + "/Web/GetDormList_Json", {
+ params: { Dorm: Value },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ })
+ .finally(() => {
+ this.loading = false;
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "Dorm");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/component/gyDuty/index.vue b/src/views/component/gyDuty/index.vue
new file mode 100644
index 0000000..299ae42
--- /dev/null
+++ b/src/views/component/gyDuty/index.vue
@@ -0,0 +1,270 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in tableColumns"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmCols"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+
+ tableColumns: [
+ { ColmCols: "HItemID", ColmType: "INT32" },
+ {
+ ColmCols: "缁勭粐鏋舵瀯浠g爜",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鑱屽姟",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鐢ㄦ埛缂栫爜",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鐢ㄦ埛鍚嶇О",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鍔╄鐮�",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鐭唬鐮�",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "鏈骇鏍囧織",
+ ColmType: "VARCHAR",
+ },
+ {
+ ColmCols: "绂佺敤鏍囧織",
+ ColmType: "VARCHAR",
+ },
+ ],
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ this.loading = true;
+ axios
+ .get(this.baseURL + "/Gy_DutyBill/Gy_DutyBillList", {
+ params: { sWhere: sWhere, user: this.user },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ })
+ .finally(() => {
+ this.loading = false;
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "Duty");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/component/gyGroup/index.vue b/src/views/component/gyGroup/index.vue
new file mode 100644
index 0000000..b17d906
--- /dev/null
+++ b/src/views/component/gyGroup/index.vue
@@ -0,0 +1,232 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in btList"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmCols"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ this.loading = true;
+ axios
+ .get(this.baseURL + "/Gy_Group/list", {
+ params: { sWhere: sWhere, user: this.user },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ this.loading = false;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "Group");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/component/gyPost/index.vue b/src/views/component/gyPost/index.vue
new file mode 100644
index 0000000..031dac6
--- /dev/null
+++ b/src/views/component/gyPost/index.vue
@@ -0,0 +1,236 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <!--
+ @selection-change="handleSelectionChange"
+ show-summary -->
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in btList"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmCols"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ if (this.openType == 2) {
+ sWhere += `绂佺敤鏍囪='' and 瀹℃牳浜�<>''`;
+ }
+ this.loading = true;
+ axios
+ .get(this.baseURL + "/Gy_BadReason/Gy_PostList", {
+ params: { sWhere: sWhere, user: this.user },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ this.loading = false;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "post");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/component/gyWorkType/index.vue b/src/views/component/gyWorkType/index.vue
new file mode 100644
index 0000000..00a4eb7
--- /dev/null
+++ b/src/views/component/gyWorkType/index.vue
@@ -0,0 +1,235 @@
+<template>
+ <div style="padding: 10px">
+ <el-table
+ v-loading="loading"
+ :data="tableData"
+ ref="workTypeTable"
+ max-height="550"
+ @selection-change="handleSelectionChange"
+ show-summary
+ border
+ @row-click="handleRowClick"
+ :row-style="rowStyle"
+ @cell-dblclick="handleDblclick"
+ >
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column align="center" label="sorderid" type="index" sortable width="80" />
+ <el-table-column
+ align="center"
+ v-for="(item, index) in btList"
+ :key="index"
+ :prop="item.ColmCols"
+ :label="item.ColmCols"
+ :width="flexWidth(item.ColmCols, tableData, item.ColmCols)"
+ sortable
+ >
+ <template slot-scope="{ row, column }">
+ <span>{{ row[column.label] }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="page"
+ :limit.sync="pageSize"
+ @pagination="currentPage"
+ />
+ </div>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+ name: "Dept",
+ components: {},
+ data() {
+ return {
+ 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: [],
+ activeName: "first",
+ searchOpen: false,
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ 鍗曟嵁鍙�: undefined,
+ },
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 閬僵灞�
+ loading: true,
+ tyResList: [],
+ btList: [],
+ tableData: [],
+ page: 1,
+ pageSize: 50,
+ total: 0,
+ scollHeight: document.body.clientHeight * (38.056 / 100),
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ 瀹㈡埛: [{ required: true, message: "瀹㈡埛涓嶈兘涓虹┖", trigger: "blur" }],
+ 鏃ユ湡: [{ required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }],
+ hl: [{ required: true, message: "姹囩巼涓嶈兘涓虹┖", trigger: "blur" }],
+ },
+ };
+ },
+ created() {
+ this.getList();
+ },
+ props: {
+ openType: {
+ Type: Number,
+ default: 1,
+ },
+ },
+ methods: {
+ // 宸ョ
+ getList() {
+ let sWhere = "";
+ if (this.openType == 2) {
+ sWhere += `绂佺敤鏍囪='' and 瀹℃牳浜�<>''`;
+ }
+ this.loading = true;
+ axios
+ .get(this.baseURL + "/Gy_WorkTypeController/GetGy_WorkTypeList_Json", {
+ params: { sWhere: sWhere, HMaker: this.user, OperationType: 1 },
+ })
+ .then((response) => {
+ if (response.data.count == 1) {
+ this.btList = response.data.list;
+ this.tyResList = response.data.data; //鎬绘暟鎹�
+ this.tableData = this.getPage(this.page, this.tyResList); //鏁版嵁鍒嗛〉
+ this.total = response.data.data.length;
+ this.loading = false;
+ }
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * this.pageSize;
+ let eindex = parseInt(page) * this.pageSize;
+ let newList = list.slice(sindex, eindex);
+ return newList;
+ },
+ currentPage(val) {
+ this.loading = true;
+ this.page = val.page;
+ setTimeout(() => {
+ this.tableData = this.getPage(this.page, this.tyResList);
+ this.loading = false;
+ }, 100);
+ },
+ 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);
+ },
+ flexWidth(prop, tableData, title, num = 0) {
+ if (tableData.length === 0) {
+ //琛ㄦ牸娌℃暟鎹笉鍋氬鐞�
+ return;
+ }
+ let flexWidth = 0; //鍒濆鍖栬〃鏍煎垪瀹�
+ let columnContent = ""; //鍗犱綅鏈�瀹界殑鍐呭
+ if (prop.includes("鏃ユ湡")) {
+ flexWidth = 110;
+ } else {
+ let canvas = document.createElement("canvas");
+ let context = canvas.getContext("2d");
+ context.font = "14px Microsoft YaHei";
+ if (prop === "" && title) {
+ //鏍囬闀垮唴瀹瑰皯鐨勶紝鍙栨爣棰樼殑鍊�,
+ columnContent = title;
+ } else {
+ // 鑾峰彇璇ュ垪涓崰浣嶆渶瀹界殑鍐呭
+ let index = 0;
+ for (let i = 0; i < tableData.length; i++) {
+ const now_temp = tableData[i][prop] + "";
+ const max_temp = tableData[index][prop] + "";
+ const now_temp_w = context.measureText(now_temp).width;
+ const max_temp_w = context.measureText(max_temp).width;
+ if (now_temp_w > max_temp_w) {
+ index = i;
+ }
+ }
+ columnContent = tableData[index][prop];
+ //姣旇緝鍗犱綅鏈�瀹界殑鍊艰窡鏍囬銆佹爣棰樹负绌虹殑鐣欏嚭鍥涗釜浣嶇疆
+ const column_w = context.measureText(columnContent).width;
+ const title_w = context.measureText(title).width;
+ if (column_w < title_w) {
+ columnContent = title || "鐣欏洓涓瓧";
+ }
+ }
+ // 璁$畻鏈�瀹藉唴瀹圭殑鍒楀
+ let width = context.measureText(columnContent);
+ flexWidth = width.width + 50 + num;
+ }
+ return flexWidth + "px";
+ },
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.tableData.indexOf(row);
+ this.$refs.deptTable.toggleRowSelection(row);
+ this.$emit("deptEmit", row, 1);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+ //鍙屽嚮琛�
+ handleDblclick(row, column, cell, event) {
+ this.$emit("deptEmitDb", row, "workType");
+ // this.handleUpdate(row)
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ //鍗曢��
+ if (selection.length > 1) {
+ const del_row = selection.shift();
+ this.$refs.deptTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+ }
+ this.rowForm = {};
+ this.ids = selection.map((item) => item.HItemID);
+ this.rowForm = selection[0];
+ },
+ },
+};
+</script>
+<style>
+.xsckdBox .el-date-editor.el-input {
+ width: 100%;
+}
+</style>
diff --git a/src/views/gyEmployee/edit/index.vue b/src/views/gyEmployee/edit/index.vue
index 6cb0bb3..5b88abe 100644
--- a/src/views/gyEmployee/edit/index.vue
+++ b/src/views/gyEmployee/edit/index.vue
@@ -23,7 +23,11 @@
</el-col>
<el-col :span="8">
<el-form-item label="鑱屽憳鍚嶇О" prop="HName">
- <el-input v-model="form.HName" placeholder="璇疯緭鍏ヨ亴鍛樺悕绉�" />
+ <el-input
+ v-model="form.HName"
+ @change="HNameChange"
+ placeholder="璇疯緭鍏ヨ亴鍛樺悕绉�"
+ />
</el-form-item>
</el-col>
<el-col :span="8">
@@ -32,7 +36,7 @@
<el-button
slot="append"
icon="el-icon-search"
- @click="openDataDialog(4)"
+ @click="openDataDialog(1)"
></el-button>
</el-input>
</el-form-item>
@@ -45,7 +49,7 @@
<el-button
slot="append"
icon="el-icon-search"
- @click="openDataDialog(4)"
+ @click="openDataDialog(2)"
></el-button>
</el-input>
</el-form-item>
@@ -56,7 +60,7 @@
<el-button
slot="append"
icon="el-icon-search"
- @click="openDataDialog(4)"
+ @click="openDataDialog(3)"
></el-button>
</el-input>
</el-form-item>
@@ -85,7 +89,7 @@
<el-button
slot="append"
icon="el-icon-search"
- @click="openDataDialog(4)"
+ @click="openDataDialog(f5)"
></el-button>
</el-input>
</el-form-item>
@@ -96,7 +100,7 @@
<el-button
slot="append"
icon="el-icon-search"
- @click="openDataDialog(4)"
+ @click="openDataDialog(6)"
></el-button>
</el-input>
</el-form-item>
@@ -113,6 +117,68 @@
</el-form-item>
</el-col>
</el-row>
+ <el-tabs value="sub_first" type="card">
+ <el-tab-pane label="宀椾綅淇℃伅" name="sub_first">
+ <el-row>
+ <el-col :span="2">
+ <el-button type="primary" @click="AddALine">澧炲姞涓�琛�</el-button>
+ </el-col>
+ <el-col :span="2">
+ <el-button type="primary" @click="CopyALine">澶嶅埗涓�琛�</el-button>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-table
+ :data="PostDataCache"
+ ref="HPostData"
+ max-height="750"
+ border
+ :row-style="rowStyle"
+ @row-click="handleRowClick"
+ >
+ <el-table-column type="selection" width="55"> </el-table-column>
+ <el-table-column
+ label="鑱屽憳鍚嶇О"
+ prop="HEmpName"
+ align="left"
+ width="120"
+ />
+ <el-table-column
+ label="宀椾綅鍚嶇О"
+ prop="HPostName"
+ align="left"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <el-input
+ v-model:value="scope.row.HPostName"
+ @keyup.native="HPostKeyUpHandler(scope.$index, $event)"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column label="澶囨敞" prop="HRemark" align="left" width="200">
+ <template slot-scope="scope">
+ <el-input
+ v-model:value="scope.row.HRemark"
+ @blur="tableHRemarkBlur(scope.$index, scope.row)"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" prop="鎿嶄綔" align="left" width="120">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="uploadPostDelete(scope.row, scope.$index)"
+ >鍒犻櫎</el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+ </el-row>
+ </el-tab-pane>
+ </el-tabs>
</el-tab-pane>
<el-tab-pane label="浜轰簨淇℃伅" name="second">
<el-row>
@@ -190,142 +256,172 @@
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="瀹胯垗" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="瀹胯垗" prop="HDormName">
+ <el-input type="text" v-model="form.HDormName">
+ <el-button
+ slot="append"
+ icon="el-icon-search"
+ @click="openDataDialog(8)"
+ ></el-button>
+ </el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="澶栬姘村钩" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="澶栬姘村钩" prop="HEngLev">
+ <el-select v-model="form.HEngLev">
+ <el-option
+ v-for="item in HEngLevList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="璁$畻鏈烘按骞�" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="璁$畻鏈烘按骞�" prop="HCompLev">
+ <el-select v-model="form.HCompLev">
+ <el-option
+ v-for="item in HCompLevList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="涓撲笟" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="涓撲笟" prop="HSpec">
+ <el-input type="text" v-model="form.HSpec"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="15">
- <el-form-item label="鐜板湪鍦板潃" prop="HMakeTime">
- <el-input></el-input>
+ <el-form-item label="鐜板湪鍦板潃" prop="HNowAdd">
+ <el-input type="text" v-model="form.HNowAdd"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鐢靛瓙閭" prop="HCheckTime">
- <el-input></el-input>
+ <el-form-item label="鐢靛瓙閭" prop="HEmail">
+ <el-input type="email" v-model="form.HEmail"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="15">
- <el-form-item label="瀹跺涵鍦板潃" prop="HMakeTime">
- <el-input></el-input>
+ <el-form-item label="瀹跺涵鍦板潃" prop="HHomeAdd">
+ <el-input type="text" v-model="form.HHomeAdd"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="閭斂缂栫爜" prop="HCheckTime">
- <el-input></el-input>
+ <el-form-item label="閭斂缂栫爜" prop="HPostalCode">
+ <el-input type="text" v-model="form.HPostalCode"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="15">
- <el-form-item label="鍘熷叕鍙�" prop="HMakeTime">
- <el-input></el-input>
+ <el-form-item label="鍘熷叕鍙�" prop="HOldCompany">
+ <el-input type="text" v-model="form.HOldCompany"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鑱旂郴鐢佃瘽" prop="HCheckTime">
- <el-input></el-input>
+ <el-form-item label="鑱旂郴鐢佃瘽" prop="HLinkPhone">
+ <el-input type="text" v-model="form.HLinkPhone"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="鎵嬫満鍙风爜" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鎵嬫満鍙风爜" prop="HMobilePhone">
+ <el-input type="text" v-model="form.HMobilePhone"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鐢ㄥ伐绫诲瀷" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鐢ㄥ伐绫诲瀷" prop="HWorkType">
+ <el-select v-model="form.HWorkType">
+ <el-option
+ v-for="item in HWorkTypeList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="杩涘巶鏃ユ湡" prop="HMakeTime">
+ <el-form-item label="杩涘巶鏃ユ湡" prop="HInComDate">
<el-date-picker
- v-model="form.HMakeTime"
+ v-model="form.HInComDate"
type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
+ placeholder="閫夋嫨杩涘巶鏃ユ湡"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="杞鏃ユ湡" prop="HStopTime">
+ <el-form-item label="杞鏃ユ湡" prop="HRelDate">
<el-date-picker
- v-model="form.HStopTime"
+ v-model="form.HRelDate"
type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
+ placeholder="閫夋嫨杞鏃ユ湡"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="淇濋櫓璇佺紪鍙�" prop="HCheckTime">
+ <el-form-item label="淇濋櫓璇佺紪鍙�" prop="HInsuranceNo">
+ <el-input type="text" v-model="form.HInsuranceNo"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="鍙備繚" prop="HInsuranceStatus">
+ <el-select v-model="form.HInsuranceStatus">
+ <el-option
+ v-for="item in [
+ {
+ label: '鏄�',
+ value: 'true',
+ },
+ {
+ label: '鍚�',
+ value: 'false',
+ },
+ ]"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鍙備繚鏃ユ湡" prop="HInsuranceDate">
+ <el-date-picker
+ v-model="form.HInsuranceDate"
+ type="date"
+ placeholder="閫夋嫨鍙備繚鏃ユ湡"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鍚堝悓鍒版湡鏃ユ湡" prop="HContractEDate">
<el-date-picker
v-model="form.HCheckTime"
type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
+ placeholder="閫夋嫨鍚堝悓鍒版湡鏃ユ湡"
>
</el-date-picker>
</el-form-item>
@@ -333,34 +429,26 @@
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="鍙備繚" prop="HMakeTime">
+ <el-form-item label="鍚堝悓寮�濮嬫棩鏈�" prop="HContractBDate">
<el-date-picker
- v-model="form.HMakeTime"
+ v-model="form.HContractBDate"
type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
+ placeholder="閫夋嫨鍚堝悓寮�濮嬫棩鏈�"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鍙備繚鏃ユ湡" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鍚堝悓鏈熼檺" prop="HContractYear">
+ <el-input type="text" v-model="form.HContractYear"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鍚堝悓鍒版湡鏃ユ湡" prop="HCheckTime">
+ <el-form-item label="绂昏亴鏃ユ湡" prop="HDimissionDate">
<el-date-picker
- v-model="form.HCheckTime"
+ v-model="form.HDimissionDate"
type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
+ placeholder="閫夋嫨绂昏亴鏃ユ湡"
>
</el-date-picker>
</el-form-item>
@@ -368,47 +456,11 @@
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="鍚堝悓寮�濮嬫棩鏈�" prop="HMakeTime">
+ <el-form-item label="鏆備綇璇佸埌鏈熸棩" prop="HStayCardEDate">
<el-date-picker
- v-model="form.HMakeTime"
+ v-model="form.HStayCardEDate"
type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="鍚堝悓鏈熼檺" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="绂昏亴鏃ユ湡" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="8">
- <el-form-item label="鏆備綇璇佸埌鏈熸棩" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
+ placeholder="閫夋嫨鏆備綇璇佸埌鏈熸棩鏈�"
>
</el-date-picker>
</el-form-item>
@@ -416,425 +468,332 @@
</el-row>
<el-row>
<el-col :span="14">
- <el-form-item label="绂昏亴鍘熷洜" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="绂昏亴鍘熷洜" prop="HDimissionReason">
+ <el-input type="text" v-model="form.HDimissionReason"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="浼犵湡鍙风爜" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="浼犵湡鍙风爜" prop="HFax">
+ <el-input type="text" v-model="form.HFax"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="绛剧害" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="绛剧害" prop="HSignStatus">
+ <el-select v-model="form.HSignStatus" placeholder="鏄惁绛剧害">
+ <el-option
+ v-for="item in [
+ {
+ label: '鏄�',
+ value: 'true',
+ },
+ {
+ label: '鍚�',
+ value: 'false',
+ },
+ ]"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="鎬у埆" prop="HMakeTime">
+ <el-form-item label="鎬у埆" prop="HSex">
+ <el-select v-model="form.HSex" placeholder="璇烽�夋嫨鎬у埆">
+ <el-option
+ v-for="item in [
+ {
+ label: '鐢�',
+ value: '鐢�',
+ },
+ {
+ label: '濂�',
+ value: '濂�',
+ },
+ ]"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鍑虹敓骞存湀" prop="HBirthDay">
<el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
+ v-model="form.HBirthDay"
+ type="month"
+ placeholder="閫夋嫨鍑虹敓骞存湀"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鍑虹敓骞存湀" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="骞撮緞" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="骞撮緞" prop="HAge">
+ <el-input type="number" v-model="form.HAge"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="绫嶈疮" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="绫嶈疮" prop="HBlighty">
+ <el-input type="number" v-model="form.HBlighty"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="姘戞棌" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="姘戞棌" prop="HNation">
+ <el-input type="text" v-model="form.HNation"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鎴风睄绫诲埆" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鎴风睄绫诲埆" prop="HBlightyType">
+ <el-select v-model="form.HBlightyType" placeholder="璇烽�夋嫨鎴风睄绫诲瀷">
+ <el-option
+ v-for="item in [
+ {
+ value: '鏈湴',
+ label: '鏈湴',
+ },
+ {
+ value: '澶栧湴',
+ label: '澶栧湴',
+ },
+ ]"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
</el-tab-pane>
<el-tab-pane label="鍏朵粬淇℃伅" name="third">
+ <div class="maintitle">鍏朵粬璧勬枡</div>
<el-row>
<el-col :span="16">
- <el-form-item label="韬唤璇�" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="韬唤璇�" prop="HIDCard">
+ <el-input type="text" v-model="form.HIDCard"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="涓嶆墦鍗�" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-checkbox v-model="form.HNoBrushFlag">鏄惁鎵撳崱</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="绂佺敤鏍囧織" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="绂佺敤鏍囧織" prop="HStopflag">
+ <el-checkbox v-model="form.HStopflag">绂佺敤鏍囧織</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="璋冧紤鏍囧織" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="璋冧紤鏍囧織" prop="HOverType">
+ <el-checkbox v-model="form.HOverType">鏄惁璋冧紤</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
- <el-form-item label="宸ヨ祫绫诲瀷" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="宸ヨ祫绫诲瀷" prop="HEmpType">
+ <el-select v-model="form.HEmpType" placeholder="璇烽�夋嫨宸ヨ祫绫诲瀷">
+ <el-option
+ v-for="item in HEmpTypeList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="杞紤璋冧紤鏍囧織" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="杞紤璋冧紤鏍囧織" prop="checkboxHShiftFlag">
+ <el-checkbox v-model="form.checkboxHShiftFlag">鏄惁杞紤璋冧紤</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鍋滃彂宸ヨ祫" prop="HCheckTime">
- <el-date-picker
- v-model="form.HCheckTime"
- type="date"
- placeholder="閫夋嫨瀹℃牳鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鍋滃彂宸ヨ祫" prop="checkboxHStopwagesFlag">
+ <el-checkbox v-model="form.checkboxHStopwagesFlag">鏄惁鍋滃彂</el-checkbox>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="閾惰璐︽埛" prop="HBankAccount">
+ <el-input type="text" v-model="form.HBankAccount"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="淇濋櫓琛ヨ创" prop="HInsuranceSubsidy">
+ <el-input type="text" v-model="form.HInsuranceSubsidy"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="鍩烘湰宸ヨ祫" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鍏朵粬鎵f3" prop="HOtherDeduct3">
+ <el-input type="text" v-model="form.HOtherDeduct3"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鑱屽姟鑰冩牳宸ヨ祫" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鍖荤枟淇濋櫓" prop="HMedicare">
+ <el-input type="text" v-model="form.HMedicare"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="甯︾彮绯绘暟" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鍏昏�佷繚闄�" prop="HInsurance">
+ <el-input type="text" v-model="form.HInsurance"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鏀粯绫诲瀷" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="澶变笟淇濋櫓" prop="HDrydock">
+ <el-input type="text" v-model="form.HDrydock"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div class="maintitle">鍏朵粬璧勬枡</div>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鍩烘湰宸ヨ祫" prop="HBasePay">
+ <el-input type="text" v-model="form.HBasePay"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱屽姟鑰冩牳宸ヨ祫" prop="HExamLevPostMoney">
+ <el-input type="text" v-model="form.HExamLevPostMoney"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="鏈�楂樺伐璧�" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="甯︾彮绯绘暟" prop="HExamRate">
+ <el-input type="text" v-model="form.HExamRate"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="瓒呴姣旂巼" prop="HStopTime">
- <el-date-picker
- v-model="form.HStopTime"
- type="date"
- placeholder="閫夋嫨绂佺敤鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鏀粯绫诲瀷" prop="HPayType">
+ <el-select v-model="form.HPayType" placeholder="璇烽�夋嫨鏀粯绫诲瀷">
+ <el-option
+ v-for="item in [
+ {
+ label: '鐜伴噾',
+ value: '鐜伴噾',
+ },
+ {
+ label: '閾惰鍗�',
+ value: '閾惰鍗�',
+ },
+ ]"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="鍓╀綑宸ヨ祫" prop="HMakeTime">
- <el-date-picker
- v-model="form.HMakeTime"
- type="date"
- placeholder="閫夋嫨鍒涘缓鏃ユ湡"
- disabled
- >
- </el-date-picker>
+ <el-form-item label="鏈�楂樺伐璧�" prop="HHighestPay">
+ <el-input type="text" v-model="form.HHighestPay"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瓒呴姣旂巼" prop="HOverPayRate">
+ <el-input type="text" v-model="form.HOverPayRate"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鍓╀綑宸ヨ祫" prop="HLeftMoneyRate">
+ <el-input type="text" v-model="form.HLeftMoneyRate"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-tab-pane>
<el-tab-pane label="闄勪欢淇℃伅" name="forth">
<el-row>
- <el-col :span="8">
- <el-form-item label="鍗曠彮宸ユ椂" prop="HWorkTimes">
- <el-input-number
- v-model="form.HWorkTimes"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="绫诲瀷" prop="HType">
- <el-select
- v-model="form.HType"
- placeholder="璇烽�夋嫨绫诲瀷"
- :disabled="zzSelDis"
- >
- <el-option value="鐢熶骇绾�">鐢熶骇绾�</el-option>
- <el-option value="浜�">浜�</el-option>
- <el-option value="璁惧">璁惧</el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="鍏宠仈ID" prop="HRelationID">
- <el-input-number
- v-model="form.HRelationID"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
+ <el-upload
+ class="upload-employee"
+ ref="upload"
+ action=""
+ :on-preview="handlePreview"
+ :on-remove="handleRemove"
+ :file-list="fileList"
+ :auto-upload="false"
+ :show-file-list="false"
+ style="display: inline-block; margin-left: 10px"
+ :on-change="fileChangeHandler"
+ >
+ <el-button
+ slot="trigger"
+ size="small"
+ type="primary"
+ @click.capture="handleBeforeUpload"
+ >涓婁紶鏂囦欢</el-button
+ >
+ </el-upload>
</el-row>
<el-row>
- <el-col :span="8">
- <el-form-item label="鍗曠彮鏈�澶у伐鏃�" prop="HMaxWorkTimes">
- <el-input-number
- v-model="form.HMaxWorkTimes"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="鏈�灏忚繘闃�" prop="HMinAdd">
- <el-input-number
- v-model="form.HMinAdd"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="姣忔棩鐝" prop="HClassCount">
- <el-input-number
- v-model="form.HClassCount"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="8">
- <el-form-item label="鍔犵彮宸ユ椂" prop="HOverTimes">
- <el-input-number
- v-model="form.HOverTimes"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="閮ㄩ棬" prop="HDeptName">
- <el-input v-model="form.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" disabled>
+ <el-table :data="fileListPreUpload" ref="tableData" max-height="750" border>
+ <el-table-column type="index" label="搴忓彿" width="55" align="left" />
+ <el-table-column label="鏂囦欢鍚�" prop="fileName" align="left" width="120" />
+ <el-table-column label="鍥剧墖" prop="url" align="left" width="120">
+ <template slot-scope="scope">
+ <el-image
+ :src="scope.row.url || ''"
+ fit="cover"
+ style="width: 100px; height: 80px"
+ :preview-src-list="[scope.row.url] || []"
+ fallback="鍥剧墖鍔犺浇澶辫触"
+ ></el-image>
+ </template>
+ </el-table-column>
+ <el-table-column label="澶у皬" prop="size" align="left" width="120" />
+ <el-table-column label="鐘舵��" prop="fileStatus" align="left" width="120" />
+ <el-table-column label="鎿嶄綔" prop="鎿嶄綔" align="left" width="120">
+ <template slot-scope="scope">
<el-button
- slot="append"
- icon="el-icon-search"
- @click="openDataDialog(1)"
- ></el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="宸ュ簭" prop="HProcName">
- <el-input v-model="form.HProcName" placeholder="璇烽�夋嫨閮ㄩ棬" disabled>
+ size="mini"
+ type="text"
+ icon="el-icon-upload"
+ @click="uploadDataUpload(scope.row, scope.$index)"
+ v-if="scope.row.fileStatus != '宸蹭笂浼�'"
+ >涓婁紶</el-button
+ >
<el-button
- slot="append"
- icon="el-icon-search"
- @click="openDataDialog(1)"
- ></el-button>
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="8">
- <el-form-item label="榛樿鐢熶骇鐝粍" prop="HGroup">
- <el-input v-model="form.HGroup" placeholder="璇烽�夋嫨榛樿鐢熶骇鐝粍" disabled>
+ size="mini"
+ type="text"
+ icon="el-icon-download"
+ @click="downloadDataUpload(scope.row, scope.$index)"
+ v-if="scope.row.fileStatus == '宸蹭笂浼�'"
+ >涓嬭浇</el-button
+ >
<el-button
- slot="append"
- icon="el-icon-search"
- @click="openDataDialog(1)"
- ></el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="涓昏祫婧�" prop="HPrimarySourceName">
- <el-input
- v-model="form.HPrimarySourceName"
- 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="8">
- <el-form-item label="宸ヤ綅鏁伴噺" prop="HCubicleQty">
- <el-input-number
- v-model="form.HCubicleQty"
- controls-position="right"
- :min="1"
- ></el-input-number>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="8">
- <el-form-item label="浜х嚎浜烘暟" prop="HProdLinePeopleNum">
- <el-input-number
- v-model="form.HProdLinePeopleNum"
- controls-position="right"
- :min="0"
- ></el-input-number>
- </el-form-item>
- </el-col>
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="uploadDataDelete(scope.row, scope.$index)"
+ >鍒犻櫎</el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
</el-row>
</el-tab-pane>
</el-tabs>
@@ -847,9 +806,23 @@
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" />
- <GyWorkCenter @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="workCenterShow" />
+ <GyWorkType
+ @deptEmitDb="dbEmitData"
+ @deptEmit="emitData"
+ v-if="workTypeShow"
+ :openType="2"
+ />
+ <GyClassTimePrj
+ @deptEmitDb="dbEmitData"
+ @deptEmit="emitData"
+ v-if="classTimePrjShow"
+ :openType="2"
+ />
+ <GyPost @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="postShow" />
+ <GyDuty @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="dutyShow" />
+ <GyGroup @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="groupShow" />
+ <GyPost @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="post2Show" />
+ <GyDorm @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="dormShow" />
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="deptClickSub">纭� 瀹�</el-button>
<el-button @click="deptClose">鍙� 娑�</el-button>
@@ -866,15 +839,35 @@
import RowSettings from "@/views/component/rowSettings";
import GyWorkCenter from "@/views/component/gyWorkCenter";
import moment from "moment";
+import GyWorkType from "@/views/component/gyWorkType";
+import GyClassTimePrj from "@/views/component/gyClassTimePrj";
+import GyPost from "@/views/component/gyPost";
+import GyDuty from "@/views/component/gyDuty";
+import GyGroup from "@/views/component/gyGroup";
+import GyDorm from "@/views/component/gyDorm";
+import dayjs from "dayjs";
export default {
name: "SellOutBill",
- components: { Dept, Warehouse, Material, RowSettings, GyWorkCenter },
+ components: {
+ Dept,
+ Warehouse,
+ Material,
+ RowSettings,
+ GyWorkCenter,
+ GyWorkType,
+ GyClassTimePrj,
+ GyPost,
+ GyDuty,
+ GyGroup,
+ GyDorm,
+ },
props: {
OperationType: { type: Number },
linterid: { type: Number },
HSouceBillType: { type: String },
copyType: { type: Number },
+ HOrgID: { type: Number },
},
data() {
return {
@@ -885,6 +878,14 @@
rowHideShow: false,
openRowHide: false,
workCenterShow: false,
+ workTypeShow: false,
+ classTimePrjShow: false,
+ postShow: false,
+ post2Show: false,
+ postIndex: 0,
+ postMode: 1, // 1 琛ㄧず 涓昏〃鏇存柊锛�2琛ㄧず瀛愯〃鏇存柊
+ dutyShow: false,
+ groupShow: false,
sWhere: "",
sTime: "",
eTime: "",
@@ -893,6 +894,7 @@
deptShow: false, //閮ㄩ棬鏁版嵁缁勪欢
warehouseShow: false, //浠撳簱鏁版嵁缁勪欢
materialShow: false, //鐗╂枡鏁版嵁缁勪欢
+ dormShow: false, // 瀹胯垗鍩虹璧勬枡
deptform: {}, //寮圭獥閫変腑鏁版嵁
openData: false, //鏁版嵁寮圭獥
dialogTitle: "",
@@ -902,7 +904,7 @@
CheckBillDisabled: true,
// OperationType: this.$route.query.OperationType,//淇濆瓨绫诲瀷锛堟柊澧�1淇敼3锛�
HInterID: null,
- baseURL: process.env.VUE_APP_BASE_URL || "http://47.96.97.237/API/",
+ baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
user: "admin",
currentRow: [],
lastSelectedRowIndex: null, // 鐢ㄤ簬璁板綍涓婃鐐瑰嚮鐨勮绱㈠紩
@@ -922,14 +924,17 @@
showSearch: true,
// 閫変腑鏁扮粍
ids: [],
-
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
// 琛ㄥ崟鍙傛暟
form: {},
// 琛ㄥ崟鏍¢獙
rules: {
- HNumber: [{ required: true, message: "鐢熶骇璧勬簮浠g爜涓嶈兘涓虹┖", trigger: "blur" }],
- HName: [{ required: true, message: "鐢熶骇璧勬簮鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }],
- HCenter: [{ required: true, message: "宸ヤ綔涓績涓嶈兘涓虹┖", trigger: "blur" }],
+ HNumber: [{ required: true, message: "鑱屽憳浠g爜涓嶈兘涓虹┖", trigger: "blur" }],
+ HName: [{ required: true, message: "鑱屽憳鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }],
+ HDeptName: [{ required: true, message: "閮ㄩ棬涓嶈兘涓虹┖", trigger: "blur" }],
},
HGovStatusList: [
@@ -956,6 +961,42 @@
{ label: "鏈", value: "鏈" },
{ label: "绂诲紓", value: "绂诲紓" },
],
+
+ HEngLevList: [
+ { label: "鏃�", value: "鏃�" },
+ { label: "涓�鑸�", value: "涓�鑸�" },
+ { label: "鐔熸倝", value: "鐔熸倝" },
+ { label: "绮鹃��", value: "绮鹃��" },
+ ],
+
+ HCompLevList: [
+ { label: "鏃�", value: "鏃�" },
+ { label: "涓�鑸�", value: "涓�鑸�" },
+ { label: "鐔熸倝", value: "鐔熸倝" },
+ { label: "绮鹃��", value: "绮鹃��" },
+ ],
+
+ HWorkTypeList: [
+ { label: "涓存椂宸�", value: "涓存椂宸�" },
+ { label: "鍚堝悓宸�", value: "鍚堝悓宸�" },
+ { label: "椤跺矖宸�", value: "椤跺矖宸�" },
+ { label: "鍏朵粬", value: "鍏朵粬" },
+ ],
+
+ HEmpTypeList: [
+ { label: "鍥哄畾宸ヨ祫", value: "鍥哄畾宸ヨ祫" },
+ { label: "娴姩宸ヨ祫", value: "娴姩宸ヨ祫" },
+ { label: "绯绘暟宸ヨ祫", value: "绯绘暟宸ヨ祫" },
+ { label: "鏈堝害宸ヨ祫", value: "鏈堝害宸ヨ祫" },
+ ],
+ // 涓婁紶鏂囦欢鍒楄〃
+ fileList: [],
+
+ // 涓婁紶鏂囦欢 灞曠ず鍒楄〃
+ fileListPreUpload: [],
+
+ // 宀椾綅淇℃伅缂撳瓨
+ PostDataCache: [],
};
},
created() {
@@ -966,7 +1007,100 @@
this.reset();
this.fetchData();
},
+ mounted() {
+ console.log(this.row);
+ console.log(this.OperationType);
+ console.log(this.HOrgID);
+ },
methods: {
+ getFile() {
+ axios
+ .get(`${this.baseURL}/Gy_Employee_Filelist?HBillNO=${this.form.HNumber}`)
+ .then((res) => {
+ let { Message, data, count } = res.data;
+ if (count == 1) {
+ debugger;
+ console.log(data);
+ for (let i = 0; i < data.length; i++) {
+ this.fileListPreUpload.push({
+ fileName: data[i].HFileName,
+ size: `${(data[i].HFileSize / 1024).toFixed(2)}KB`,
+ url: `${this.baseURL}${data[i].url}`,
+ fileStatus: "宸蹭笂浼�",
+ raw: {},
+ });
+ }
+ } else {
+ this.$modal.msgError(`鏂囦欢鍒楄〃璇诲彇澶辫触: ${Message}`);
+ }
+ })
+ .catch((err) => {
+ this.$modal.msgError(`鏂囦欢鍒楄〃璇诲彇澶辫触: ${err}`);
+ });
+ },
+ handleBeforeUpload(e) {
+ if (!this.form.HNumber) {
+ // 1. 闃绘榛樿琛屼负锛堥樆姝㈡墦寮�鏂囦欢閫夋嫨绐楀彛锛�
+ e.preventDefault();
+ // 2. 闃绘浜嬩欢浼犳挱锛堥槻姝㈣Е鍙戝叾浠栧彲鑳界殑浜嬩欢澶勭悊鍣級
+ e.stopPropagation();
+ this.$modal.msgError("鑱屽憳浠g爜鏈~鍐欙紝涓嶅彲涓婁紶鏂囦欢");
+ }
+ },
+ tableHRemarkBlur(rowindex, content) {
+ console.log(content);
+ // this.PostDataCache[rowindex].HRemark = content.HRemark;
+ },
+ HPostKeyUpHandler(rowindex, e) {
+ this.showReset();
+ if (e.key == "F7") {
+ this.dialogTitle = "宀椾綅";
+ this.post2Show = true;
+ this.openData = true;
+ this.postIndex = rowindex;
+ this.postMode = 2;
+ }
+ },
+ uploadPostDelete(row, index) {
+ console.log(row, index);
+ if (this.PostDataCache.length == 1) {
+ this.$modal.msgError("棣栬鏃犳硶鍒犻櫎!");
+ return;
+ }
+ this.PostDataCache.splice(index, 1);
+ },
+ handleRemove() {},
+ handlePreview() {},
+ fileChangeHandler(file, fileList) {
+ this.fileList = fileList;
+
+ const rawFile = file.raw;
+ console.log(rawFile);
+ // 浠呭鐞嗗浘鐗囨枃浠�
+ if (rawFile && rawFile.type.startsWith("image/")) {
+ const reader = new FileReader(); // 鍒濆鍖� FileReader
+
+ // 璇诲彇瀹屾垚鍚庣敓鎴愰瑙� URL
+ reader.onload = (e) => {
+ this.fileListPreUpload.push({
+ fileName: file.name,
+ size: `${(file.size / 1024).toFixed(2)}KB`,
+ url: e.target.result,
+ fileStatus: "鏈笂浼�",
+ raw: file.raw,
+ });
+
+ console.log(this.fileListPreUpload);
+ };
+
+ // 浠� DataURL 鏍煎紡璇诲彇鏂囦欢
+ reader.readAsDataURL(rawFile);
+ }
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ console.log(selection);
+ },
fetchData() {
//鐧诲綍鐢ㄦ埛淇℃伅
axios
@@ -993,13 +1127,63 @@
this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
});
},
+ AddALine() {
+ this.PostDataCache.push({
+ HEmpID: this.form.HInterID,
+ HEmpName: this.form.HName,
+ HPostID: 0,
+ HPostName: "",
+ HRemark: "",
+ });
+ },
+ CopyALine(e) {
+ if (this.selectedRow) {
+ this.PostDataCache.push({
+ HEmpID: this.selectedRow.HEmpID || 0,
+ HEmpName: this.selectedRow.HEmpName || "",
+ HPostID: this.selectedRow.PostID || 0,
+ HPostName: this.selectedRow.HPostName || "",
+ HRemark: this.selectedRow.HRemark || "",
+ });
+ }
+ },
+ HNameChange() {
+ for (const key in this.PostDataCache) {
+ console.log(key);
+ this.PostDataCache[key].HEmpName = this.form.HName;
+ }
+ },
+ getSubData() {
+ axios
+ .get(this.baseURL + "/Gy_Employee/listSub", {
+ params: {
+ sWhere: ` and HEmpID = ${this.form.HItemID}`,
+ user: this.user,
+ },
+ })
+ .then((response) => {
+ console.log(response);
+ let result = response.data;
+ if (result.code == 1) {
+ // 璇存槑楠岃瘉鎴愬姛浜�
+ this.PostDataCache = result.data;
+ }
+ this.$nextTick(() => {
+ this.formShow = true;
+ this.formLoading = false;
+ });
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
getdata() {
this.reset();
console.log(this.OperationType);
if (this.OperationType != 1) {
this.zzSelDis = true;
axios
- .get(this.baseURL + "GetGy_SourceDetail", {
+ .get(this.baseURL + "/GetGy_EmployeeDetail", {
params: {
HID: this.linterid,
},
@@ -1009,51 +1193,105 @@
let result = response.data;
if (result.code == 1) {
// 璇存槑楠岃瘉鎴愬姛浜嗭紝
- var data = result.data.h_v_Edit_IF_SourceList[0];
- this.form.HNumber = data.鐢熶骇璧勬簮浠g爜;
- this.form.HItemID = this.OperationType == 2 ? 0 : data.HItemID;
- this.form.HName = data.鐢熶骇璧勬簮鍚嶇О;
- this.form.HHelpCode = data.鍔╄浠g爜;
- this.form.HWorkTimes = data.鍗曠彮宸ユ椂;
- this.form.HMaxWorkTimes = data.鍗曠彮鏈�澶у伐鏃�;
- this.form.HRelationID = data.鍏宠仈ID;
- this.form.HMinAdd = data.鏈�灏忚繘闃�;
- this.form.HClassCount = data.姣忔棩鐝;
- this.form.HOverTimes = data.鍔犵彮宸ユ椂;
- this.form.HCenter = data.宸ヤ綔涓績;
- this.form.HCenterID = data.宸ヤ綔涓績ID;
- this.form.HGroup = data.鐝粍鍚嶇О;
- this.form.HGroupID = data.鐝粍ID;
- this.form.HDeptName = data.閮ㄩ棬鍚嶇О;
- this.form.HDeptID = data.閮ㄩ棬ID;
- this.form.HProcName = data.宸ュ簭;
- this.form.HProcID = data.宸ュ簭ID;
- this.form.HProcNumber = data.宸ュ簭浠g爜;
- this.form.HStopflag = data.绂佺敤鏍囪;
- this.form.HType = data.绫诲瀷;
- this.form.HRemark = data.澶囨敞;
- this.form.HUseFlag = data.HUseFlag;
- this.form.HUSEORGID = data.HUSEORGID;
- this.form.HCREATEORGID = data.HCREATEORGID;
- this.form.HMacAddr = data.mac鍦板潃;
- this.form.HEmpID = data.HEmpID;
- this.form.HEmpName = data.璐熻矗浜�;
- this.form.HMakeEmp = data.鍒涘缓浜�;
- this.form.HMakeTime = data.鍒涘缓鏃ユ湡;
- this.form.HStopEmp = data.绂佺敤浜�;
- this.form.HStopTime = data.绂佺敤鏃ユ湡;
- this.form.HCheckEmp = data.瀹℃牳浜�;
- this.form.HCheckTime = data.瀹℃牳鏃ユ湡;
- this.form.HPrimarySourceID = data.HParentID;
- this.form.HPrimarySourceName = data.涓昏祫婧愬悕绉�;
- this.form.HParentID = data.HParentID;
- this.form.HCubicleQty = data.鍗犵敤宸ヤ綅鏁�;
- this.form.HProdLinePeopleNum = data.浜х嚎浜烘暟;
- if (!data.HCheckEmp) {
- this.CheckBillDisabled = false;
+ var data = result.data.h_v_Edit_IF_EmployeeList[0];
+
+ Object.assign(this.form, {
+ HNumber: data.鑱屽憳浠g爜,
+ HItemID: this.OperationType == 2 ? 0 : data.HItemID,
+ HName: data.鑱屽憳鍚嶇О,
+ HHelpCode: data.鍔╄浠g爜,
+ HGroupID: data.HGroupID,
+ HGroupName: data.鐝粍鍚嶇О,
+ HGroupNumber: data.鐝粍浠g爜,
+ HEndFlag: data.鏄庣粏鏍囪,
+ HNoBrushFlag: data.鏄惁鎵撳崱,
+ HOverType: data.鏄惁璋冧紤,
+ HShiftFlag: data.鏄惁杞彮璋冧紤,
+ HStopwagesFlag: data.鏄惁鍋滃彂,
+ HInsuranceStatus: data.鏄惁鍙備繚,
+ HDeptID: data.閮ㄩ棬ID,
+ HDeptName: data.閮ㄩ棬鍚嶇О,
+ HDutyID: data.鑱屽姟ID,
+ HDutyName: data.鑱屽姟鍚嶇О,
+ HDutyNumber: data.鑱屽姟浠g爜,
+ HDormID: data.瀹胯垗ID,
+ HDormName: data.瀹胯垗鍚嶇О,
+ HDormNumber: data.瀹胯垗浠g爜,
+ HWorkTypeID: data.宸ョID,
+ HWorkTypeName: data.宸ョ鍚嶇О,
+ HWorkTypeNumber: data.宸ョ浠g爜,
+ HCTPrjID: data.鏍哥畻鏂瑰紡ID,
+ HCTPrjName: data.鏍哥畻鏂瑰紡鍚嶇О,
+ HCTPrjNumber: data.鏍哥畻鏂瑰紡浠g爜,
+ HPostID: data.宀椾綅ID,
+ HPostName: data.宀椾綅鍚嶇О,
+ HPostNumber: data.宀椾綅浠g爜,
+ HSex: data.鎬у埆,
+ HBirthDay: dayjs(data.鍑虹敓骞存湀).format("YYYY-MM-DD"),
+ HAge: data.骞撮緞,
+ HBlighty: data.绫嶈疮,
+ HNation: data.姘戞棌,
+ HBlightyType: data.鎴风睄绫诲埆,
+ HGovStatus: data.鏀挎不闈㈣矊,
+ HKnowLev: data.瀛﹀巻,
+ HMarr: data.濠氬Щ鐘跺喌,
+ HArchivesNo: data.妗f缂栧彿,
+ HProTitleID: data.鑱岀О,
+ HSalaryLev: data.钖祫绛夌骇,
+ HGradSchool: data.姣曚笟瀛︽牎,
+ HGradDate: dayjs(data.姣曚笟鏃堕棿).format("YYYY-MM-DD"),
+ HEngLev: data.澶栬姘村钩,
+ HCompLev: data.璁$畻鏈烘按骞�,
+ HSpec: data.涓撲笟,
+ HNowAdd: data.鐜颁綇鍦板潃,
+ HEmail: data.鐢靛瓙閭,
+ HHomeAdd: data.瀹跺涵鍦板潃,
+ HPostalCode: data.閭斂缂栫爜,
+ HOldCompany: data.鍘熷叕鍙�,
+ HLinkPhone: data.鑱旂郴鐢佃瘽,
+ HMobilePhone: data.鎵嬫満鍙�,
+ HWorkType: data.鐢ㄥ伐绫诲瀷,
+ HInComDate: dayjs(data.杩涘巶鏃ユ湡).format("YYYY-MM-DD"),
+ HRelDate: dayjs(data.杞鏃ユ湡).format("YYYY-MM-DD"),
+ HInsuranceNo: data.淇濋櫓璇佺紪鍙�,
+ HContractBDate: dayjs(data.鍚堝悓寮�濮嬫棩鏈�).format("YYYY-MM-DD"),
+ HContractEDate: dayjs(data.鍚堝悓鍒版湡鏃ユ湡).format("YYYY-MM-DD"),
+ HContractYear: data.鍚堝悓鏈熼檺,
+ HInsuranceDate: dayjs(data.鍙備繚鏃ユ湡).format("YYYY-MM-DD"),
+ HDimissionDate: dayjs(data.绂昏亴鏃ユ湡).format("YYYY-MM-DD"),
+ HStayCardEDate: dayjs(data.鏆備綇璇佸埌鏈熸棩).format("YYYY-MM-DD"),
+ HEmpRate: data.鑱屽憳绯绘暟,
+ HBSTDeptID: data.璐濆+杈鹃儴闂�,
+ HRemark: data.澶囨敞,
+ HDimissionReason: data.绂昏亴鍘熷洜,
+ linteridCard: data.韬唤璇�,
+ HEmpType: data.宸ヨ祫绫诲瀷,
+ HBankAccount: data.閾惰璐︽埛,
+ HInsuranceSubsidy: data.淇濋櫓琛ヨ创,
+ HOtherDeduct3: data.鍏朵粬鎵f3,
+ HMedicare: data.鍖荤枟淇濋櫓,
+ HInsurance: data.鍏昏�佷繚闄�,
+ HDrydock: data.澶变笟淇濋櫓,
+ HBasePay: data.鍩烘湰宸ヨ祫,
+ HExamLevPostMoney: data.鑱屽姟鑰冩牳宸ヨ祫,
+ HExamRate: data.鑰冩牳绯绘暟,
+ HPayType: data.鏀粯绫诲瀷,
+ HLeftMoneyRate: data.鍓╀綑宸ヨ祫,
+ HHighestPay: data.鏈�楂樺伐璧�,
+ HOverPayRate: data.瓒呴姣旂巼,
+ HStopflag: data.绂佺敤鏍囪,
+ HRemark: data.澶囨敞,
+ });
+
+ if (this.OperationType == 3) {
+ // 缂栬緫鏃惰幏鍙栨枃浠跺垪琛�
+ this.$nextTick(() => {
+ this.getFile();
+ });
}
}
this.$nextTick(() => {
+ this.getSubData();
this.formShow = true;
this.formLoading = false;
});
@@ -1064,6 +1302,13 @@
} else if (this.OperationType == 1) {
let date = new Date();
this.form.HMakeTime = moment(date).format("YYYY-MM-DDTHH:mm:ss");
+ this.PostDataCache.push({
+ HEmpID: 0,
+ HEmpName: "",
+ HPostID: 0,
+ HPostName: "",
+ HRemark: "",
+ });
this.$nextTick(() => {
this.formShow = true;
this.formLoading = false;
@@ -1085,29 +1330,63 @@
//閮ㄩ棬寮圭獥璧嬪��
dbEmitData(deptRow, num) {
// num=1閮ㄩ棬 num=2鍑哄簱浠撳簱
+ console.log(num, deptRow);
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.浠撳簱鍚嶇О;
+ } else if (num == "post" && this.postMode == 1) {
+ this.form.HPostID = deptRow.HItemID;
+ this.form.HPostName = deptRow.宀椾綅鍚嶇О;
+ this.form.HPostNumber = deptRow.宀椾綅浠g爜;
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.榛樿绋庣巼;
+ } else if (num == "post" && this.postMode == 2) {
+ Object.assign(this.PostDataCache[this.postIndex], {
+ HPostID: deptRow.HItemID,
+ HPostName: deptRow.宀椾綅鍚嶇О,
+ HPostNumber: deptRow.宀椾綅浠g爜,
+ });
this.openData = false;
- } else if (num == 4) {
- this.form.HCenterID = deptRow.HItemID;
- this.form.HCenter = deptRow.宸ヤ綔涓績鍚嶇О;
+ this.postMode = 0;
+ this.postIndex = 0;
+ } else if (num == "workType") {
+ Object.assign(this.form, {
+ HWorkTypeID: deptRow.HItemID,
+ HWorkTypeName: deptRow.宸ョ鍚嶇О,
+ HWorkTypeNumber: deptRow.宸ョ浠g爜,
+ });
+ this.openData = false;
+ } else if (num == "CTPrj") {
+ // 鏍哥畻鏂瑰紡
+ Object.assign(this.form, {
+ HCTPrjID: deptRow.HItemID,
+ HCTPrjName: deptRow.鏍哥畻鏂瑰紡鍚嶇О,
+ HCTPrjNumber: deptRow.鏍哥畻鏂瑰紡浠g爜,
+ });
+ this.openData = false;
+ } else if (num == "Duty") {
+ // 鏍哥畻鏂瑰紡
+ Object.assign(this.form, {
+ HDutyID: deptRow.hitemid,
+ HDutyName: deptRow.鑱屽姟,
+ HDutyNumber: deptRow.缁勭粐鏋舵瀯浠g爜,
+ });
+ this.openData = false;
+ } else if (num == "Group") {
+ // 鐝粍
+ Object.assign(this.form, {
+ HGroupItem: deptRow.HItemID,
+ HGroupName: deptRow.鐝粍鍚嶇О,
+ HGroupNumber: deptRow.鐝粍浠g爜,
+ });
+ this.openData = false;
+ } else if (num == "Dorm") {
+ // 瀹胯垗
+ Object.assign(this.form, {
+ HDormID: deptRow.HItemID,
+ HDormName: deptRow.HName,
+ HDormNumber: deptRow.HNumber,
+ });
this.openData = false;
}
},
@@ -1124,48 +1403,114 @@
this.openData = false;
},
+ //鐐瑰嚮琛�
+ handleRowClick(row, column, event) {
+ console.log(row);
+ this.lastSelectedRow = this.selectedRow; // 璁板綍涓婁竴娆¢�変腑鐨勮
+ this.selectedRow = row; // 璁板綍褰撳墠閫変腑鐨勮
+ this.lastSelectedRowIndex = this.PostDataCache.indexOf(row);
+ this.$refs.HPostData.toggleRowSelection(this.lastSelectedRow);
+ this.$refs.HPostData.toggleRowSelection(row);
+ },
+ //閫変腑琛岄珮浜牱寮�
+ rowStyle({ row, rowIndex }) {
+ if (this.ids.includes(row.HItemID)) {
+ return { background: "#ecf5ff" };
+ }
+ },
+
//鏂板缂栬緫琛ㄥ崟鍒濆鍖�
reset() {
this.form = {
- HNumber: null,
- HItemID: 0,
- HName: null,
- HHelpCode: null,
- HWorkTimes: "0",
- HMaxWorkTimes: "0",
- HRelationID: "0",
- HMinAdd: "0",
- HClassCount: "0",
- HOverTimes: "0",
- HCenter: null,
- HCenterID: null,
- HGroup: null,
- HGroupID: 0,
- HDeptName: null,
- HDeptID: 0,
- HProcName: null,
- HProcID: 0,
- HProcNumber: null,
+ HNumber: "",
+ HItemID: "0",
+ HName: "",
+ HDeptName: "",
+ HDeptID: "0",
+ HDepNumber: "",
+ HWorkTypeName: "",
+ HWorkTypeID: "0",
+ HWorkTypeNumber: "",
+ HCTPrjName: "",
+ HCTPrjID: "0",
+ HEmpRate: "0",
+ HPostName: "",
+ HPostID: "0",
+ HPostNumber: "",
+ HDutyName: "",
+ HDutyID: "0",
+ HDutyNumber: "",
+ HGroupName: "",
+ HGroupID: "0",
+ HGroupNumber: "",
+ HRemark: "",
+ HGovStatus: "缇や紬",
+ HKnowLev: "灏忓",
+ HMarr: "鏈",
+ HArchivesNo: "",
+ HProTitleID: "",
+ HSalaryLev: "",
+ HGradSchool: "",
+ HGradDate: "",
+ HDormName: "",
+ HDormID: "0",
+ HDormNumber: "",
+ HEngLev: "鏃�",
+ HCompLev: "鏃�",
+ HSpec: "",
+ HNowAdd: "",
+ HEmail: "",
+ HHomeAdd: "",
+ HPostalCode: "",
+ HOldCompany: "",
+ HLinkPhone: "",
+ HMobilePhone: "",
+ HWorkType: "涓存椂宸�",
+ HInComDate: "",
+ HRelDate: "",
+ HInsuranceNo: "",
+ HInsuranceStatus: "true",
+ HInsuranceDate: "",
+ HContractEDate: "",
+ HContractBDate: "",
+ HContractYear: "0",
+ HDimissionDate: "",
+ HStayCardEDate: "",
+ HDimissionReason: "",
+ HFax: "",
+ HSignStatus: "true",
+ HSex: "鐢�",
+ HBirthDay: "",
+ HAge: "0",
+ HBlighty: "",
+ HNation: "",
+ HBlightyType: "鏈湴",
+ HIDCard: "",
+ checkboxHNoBrushFlag: false,
+ HNoBrushFlag: false,
+ checkboxHStopflag: false,
HStopflag: false,
- HType: null,
- HRemark: null,
- HUseFlag: "鏈娴�",
- HUSEORGID: this.zuzhiId,
- HCREATEORGID: this.zuzhiId,
- HMacAddr: null,
- HEmpID: 0,
- HEmpName: null,
- HMakeEmp: this.user,
- HMakeTime: null,
- HStopEmp: null,
- HStopTime: null,
- HCheckEmp: null,
- HCheckTime: null,
- HPrimarySourceID: 0,
- HPrimarySourceName: null,
- HParentID: 0,
- HCubicleQty: "1",
- HProdLinePeopleNum: "0",
+ checkboxHOverType: false,
+ HOverType: false,
+ HEmpType: "鍥哄畾宸ヨ祫",
+ checkboxHShiftFlag: false,
+ HShiftFlag: false,
+ checkboxHStopwagesFlag: false,
+ HStopwagesFlag: false,
+ HBankAccount: "",
+ HInsuranceSubsidy: "0",
+ HOtherDeduct3: "0",
+ HMedicare: "0",
+ HInsurance: "0",
+ HDrydock: "0",
+ HBasePay: "0",
+ HExamLevPostMoney: "0",
+ HExamRate: "0",
+ HPayType: "鐜伴噾",
+ HHighestPay: "0",
+ HOverPayRate: "0",
+ HLeftMoneyRate: "0",
+ file: "",
};
this.editData = [];
this.editBtData = [];
@@ -1192,14 +1537,16 @@
this.$nextTick(() => {
if (!fhck) {
console.log(4);
+ this.form.HUSEORGID = this.form.HCREATEORGID = this.HOrgID;
var sMainStr = JSON.stringify(this.form);
+ var sSubStr = JSON.stringify(this.PostDataCache);
// var sSubStr = JSON.stringify(this.editData);
- var sMainSub = sMainStr + ";" + this.user;
+ var sMainSub = sMainStr + ";" + this.user + ";" + sSubStr;
axios({
method: "post",
- url: this.baseURL + "SaveGy_SourceList",
+ url: this.baseURL + "/Gy_Employee/ModifyByID",
data: {
- msg: sMainSub,
+ oMain: sMainSub,
},
})
.then((response) => {
@@ -1275,6 +1622,12 @@
this.warehouseShow = false;
this.materialShow = false;
this.workCenterShow = false;
+ this.workTypeShow = false;
+ this.postShow = false;
+ this.post2Show = false;
+ this.classTimePrjShow = false;
+ this.dutyShow = false;
+ this.groupShow = false;
},
// 鎵撳紑鏁版嵁鍒楄〃寮圭獥
openDataDialog(num, row) {
@@ -1287,17 +1640,98 @@
this.deptShow = true;
this.openData = true;
} else if (num == 2) {
- this.dialogTitle = "鍑哄簱浠撳簱鍒楄〃";
- this.warehouseShow = true;
+ this.dialogTitle = "宸ョ鍒楄〃";
+ this.workTypeShow = true;
this.openData = true;
} else if (num == 3) {
- this.dialogTitle = "鐗╂枡鍒楄〃";
- this.materialShow = true;
+ this.dialogTitle = "鏍哥畻鏂瑰紡鍒楄〃";
+ this.classTimePrjShow = true;
this.openData = true;
} else if (num == 4) {
- this.dialogTitle = "宸ヤ綔涓績";
- this.workCenterShow = true;
+ this.dialogTitle = "宀椾綅";
+ this.postShow = true;
this.openData = true;
+ this.postMode = 1;
+ } else if (num == 5) {
+ this.dialogTitle = "鑱屽姟";
+ this.dutyShow = true;
+ this.openData = true;
+ } else if (num == 6) {
+ this.dialogTitle = "鐝粍";
+ this.groupShow = true;
+ this.openData = true;
+ } else if (num == 7) {
+ this.dialogTitle = "宀椾綅";
+ this.post2Show = true;
+ this.openData = true;
+ } else if (num == 8) {
+ this.dialogTitle = "瀹胯垗";
+ this.dormShow = true;
+ this.openData = true;
+ }
+ },
+ async fileToBlob(file, newMimeType) {
+ return new Promise((resolve) => {
+ // 鍒涘缓 FileReader 璇诲彇 File 鍐呭
+ const reader = new FileReader();
+
+ // 浠� ArrayBuffer 褰㈠紡璇诲彇鏂囦欢锛堜簩杩涘埗鍘熷鏁版嵁锛�
+ reader.readAsArrayBuffer(file);
+
+ reader.onload = (e) => {
+ // 鐢ㄨ鍙栧埌鐨勪簩杩涘埗鏁版嵁鍒涘缓鏂� Blob
+ const blob = new Blob(
+ [e.target.result], // 浜岃繘鍒舵暟鎹�
+ { type: newMimeType || file.type } // 鍙寚瀹氭柊鐨� MIME 绫诲瀷
+ );
+ resolve(blob);
+ };
+ });
+ },
+ uploadDataDelete(row, index) {
+ console.log(row, index);
+ this.fileList.splice(index, 1);
+ this.fileListPreUpload.splice(index, 1);
+ },
+ downloadDataUpload(row, index) {
+ console.log(row, index);
+ window.open(row.url, "_self");
+ },
+ async uploadDataUpload(row, index) {
+ console.log(row.raw instanceof File);
+ console.log(row.raw);
+ try {
+ let blob = await this.fileToBlob(row.raw);
+ console.log(blob);
+ const formData = new FormData();
+ formData.append("file", blob, row.fileName);
+ formData.append("HBillNo", this.form.HNumber);
+ formData.append("HRemark", ""); // 绌哄��
+ formData.append("HUserName", this.user);
+
+ axios({
+ method: "post",
+ url: this.baseURL + "/Gy_Employee_UploadFile", // 娉ㄦ剰淇浜哢RL涓殑鍙屾枩鏉�
+ data: formData,
+ headers: {
+ "Content-Type": "multipart/form-data", // 涓嶉渶瑕佹墜鍔ㄨ缃�
+ Accept: "application/json",
+ },
+ })
+ .then((res) => {
+ console.log(res);
+ if (res.data.count == 1) {
+ this.fileListPreUpload[index].fileStatus = "宸蹭笂浼�";
+ this.$modal.msgSuccess(res.data.Message);
+ } else {
+ this.$modal.msgError(res.data.Message);
+ }
+ })
+ .catch((err) => {
+ this.$modal.msgError(`鎺ュ彛璇锋眰澶辫触: ${err}`);
+ });
+ } catch (err) {
+ this.$modal.msgError(`${err}`);
}
},
},
@@ -1307,4 +1741,11 @@
.xsckdBox .el-date-editor.el-input {
width: 100%;
}
+
+.maintitle {
+ font-size: 16px;
+ box-sizing: border-box;
+ padding-left: 1em;
+ padding-bottom: 0.5em;
+}
</style>
diff --git a/src/views/gyEmployee/index.vue b/src/views/gyEmployee/index.vue
index e3569f1..3c0bc20 100644
--- a/src/views/gyEmployee/index.vue
+++ b/src/views/gyEmployee/index.vue
@@ -190,7 +190,7 @@
</div>
</el-drawer>
<el-row :gutter="10" class="mb8">
- <el-col :span="1.5">
+ <!-- <el-col :span="1.5">
<el-button
type="warning"
plain
@@ -199,7 +199,7 @@
@click="handleImport"
>瀵煎叆</el-button
>
- </el-col>
+ </el-col> -->
<el-col :span="1.5">
<el-button
type="primary"
@@ -406,6 +406,7 @@
:OperationType="OperationType"
:linterid="this.rowForm.HItemID"
:HSouceBillType="this.rowForm.HSourceBillType"
+ :HOrgID="this.queryParams.HOrgID"
:copyType="copyType"
@editCloseGy="editGyClose"
v-if="editShow"
@@ -506,7 +507,7 @@
import axios from "axios";
import RowSettings from "@/views/component/rowSettings";
import Edit from "@/views/gyEmployee/edit";
-import gySource from "@/views/basic/gySource";
+import gySource from "@/views/gySource";
import { env } from "echarts";
export default {
@@ -574,7 +575,7 @@
subDisabled: false, //缂栬緫椤甸潰淇濆瓨鎸夐挳鏄惁绂佺敤(true绂佺敤锛宖alse鍙敤)
OperationType: null, //淇濆瓨绫诲瀷锛堟柊澧�1淇敼3锛�
HInterID: null,
- baseURL: process.env.VUE_APP_BASE_URL || "http://47.96.97.237/API/",
+ baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
user: "admin",
currentRow: [],
lastSelectedRowIndex: null, // 鐢ㄤ簬璁板綍涓婃鐐瑰嚮鐨勮绱㈠紩
@@ -1220,7 +1221,7 @@
resetQuery() {
this.dateRange = [];
this.sWhere = "";
- this.queryParams = {
+ Object.assign(this.Parameters, {
HBillNo: "",
HInitTimeCycle: 29,
HProjectNumber: "",
@@ -1236,7 +1237,7 @@
ColContent1: "",
ColContent2: "",
ColContent: "",
- };
+ });
this.riqiChange();
this.resetForm("queryForm");
this.getList();
diff --git a/src/views/gyStockPlace/edit/index.vue b/src/views/gyStockPlace/edit/index.vue
index 4a806cf..5e98170 100644
--- a/src/views/gyStockPlace/edit/index.vue
+++ b/src/views/gyStockPlace/edit/index.vue
@@ -139,7 +139,7 @@
CheckBillDisabled: true,
// OperationType: this.$route.query.OperationType,//淇濆瓨绫诲瀷锛堟柊澧�1淇敼3锛�
HInterID: null,
- baseURL: process.env.VUE_APP_BASE_URL || "http://47.96.97.237/API/",
+ baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
user: "admin",
currentRow: [],
lastSelectedRowIndex: null, // 鐢ㄤ簬璁板綍涓婃鐐瑰嚮鐨勮绱㈠紩
diff --git a/src/views/gyWarehouse/edit/index.vue b/src/views/gyWarehouse/edit/index.vue
index a49f3c7..cc6803e 100644
--- a/src/views/gyWarehouse/edit/index.vue
+++ b/src/views/gyWarehouse/edit/index.vue
@@ -243,7 +243,7 @@
CheckBillDisabled: true,
// OperationType: this.$route.query.OperationType,//淇濆瓨绫诲瀷锛堟柊澧�1淇敼3锛�
HInterID: null,
- baseURL: process.env.VUE_APP_BASE_URL || "http://47.96.97.237/API/",
+ baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
user: "admin",
currentRow: [],
lastSelectedRowIndex: null, // 鐢ㄤ簬璁板綍涓婃鐐瑰嚮鐨勮绱㈠紩
diff --git a/src/views/xsSeOrderBill/index.vue b/src/views/xsSeOrderBill/index.vue
new file mode 100644
index 0000000..e057ad3
--- /dev/null
+++ b/src/views/xsSeOrderBill/index.vue
@@ -0,0 +1,1717 @@
+<template>
+ <div style="padding: 10px">
+ <el-drawer title="鏌ヨ" :visible.sync="searchOpen" :with-header="false" size="650px">
+ <div style="padding: 50px; width: 630px">
+ <div class="searchText">
+ <div style="font-size: 18px">QUICK SEARCH</div>
+ <div>蹇�熸悳绱�</div>
+ <div class="searchImg"></div>
+ </div>
+ <el-form :model="queryParams" ref="queryForm" label-width="98px">
+ <el-row>
+ <el-form-item label="鑱屽憳浠g爜" prop="HNumber">
+ <el-input
+ v-model="queryParams.HNumber"
+ placeholder="璇疯緭鍏ヨ亴鍛樹唬鐮�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-form-item>
+ <el-form-item label="鑱屽憳鍚嶇О" prop="HName">
+ <el-input
+ v-model="queryParams.HName"
+ placeholder="璇疯緭鍏ヨ亴鍛樺悕绉�"
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </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="index"
+ :label="item.Name"
+ :value="item.ID"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-row>
+ <el-card class="box-card">
+ <div slot="header" class="clearfix"><span>杩囨护</span></div>
+ <div>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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.Comparator2"
+ 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="11">
+ <el-input
+ v-model="queryParams.ColContent2"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ class="ForFilteringSchemes"
+ />
+ </el-col>
+ </el-row>
+ </el-form-item>
+ <el-form-item label-width="0">
+ <el-row>
+ <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-row>
+ </el-form-item>
+ </div>
+ </el-card>
+ <el-form-item label-width="78px" style="margin-top: 50px">
+ <el-button type="primary" icon="el-icon-search" @click="handleQuery">
+ 鎼� 绱�</el-button
+ >
+ <el-button icon="el-icon-circle-close" @click="searchOpen = false"
+ >鍙� 娑�</el-button
+ >
+ </el-form-item>
+ </el-form>
+ </div>
+ </el-drawer>
+ <el-row>
+ <el-form>
+ <el-col :span="4" class="inline">
+ <el-form-item label="鏃ユ湡闂撮殧" class="form-item-inline">
+ <el-select
+ v-model="queryParams.timeSpan"
+ placeholder="璇烽�夋嫨鏃ユ湡闂撮殧"
+ @change="onDateScanOptionChangerHandler"
+ >
+ <el-option
+ v-for="(item, index) in [
+ {
+ label: '浠绘剰闂撮殧',
+ value: -1,
+ },
+ {
+ 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: 182,
+ },
+ {
+ label: '杩戜竴骞�',
+ value: 365,
+ },
+ ]"
+ :key="item.id"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="寮�濮嬫棩鏈�" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HBeginDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item label="缁撴潫鏃ユ湡" class="form-item-inline">
+ <el-date-picker
+ v-model="queryParams.HEndDate"
+ :disabled="disableDataPicker"
+ value-format="yyyy-MM-DD"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <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"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="single"
+ @click="handleDelete"
+ >鍒犻櫎
+ </el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ 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="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="set_CloseRow(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_CloseRow(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_DropBill(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_DropBill(2, (form = rowForm))"
+ >鍙嶄綔搴�</el-button
+ >
+ </el-col>
+
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ >瀵煎嚭</el-button
+ >
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ 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 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/gyEmployee/edit";
+import gySource from "@/views/gySource";
+import dayjs from "dayjs";
+
+export default {
+ name: "GySource",
+ components: { RowSettings, Edit, gySource },
+ props: {
+ openPage: { type: String },
+ },
+ data() {
+ return {
+ HModName: "Cg_POOrderBillList",
+ editShow: false,
+ openEdit: false,
+ totalNameList: [],
+ 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: [], //缁勭粐鍒楄〃
+ 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: null,
+ HName: null,
+ HNumber: null,
+ Comparator1: "",
+ Comparator2: "",
+ Comparator: "",
+ ColContent1: "",
+ ColContent2: "",
+ ColContent: "",
+ timeSpan: 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() {
+ this.queryParams.HBeginDate = dayjs(new Date())
+ .subtract(29, "d")
+ .format("YYYY-MM-DDTHH:mm:ss");
+ this.queryParams.HEndDate = dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss");
+ this.fetchData();
+ this.riqiChange();
+ },
+ created() {},
+ methods: {
+ 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 = new Date();
+ const start = new Date();
+ 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 = yyyyS + "-" + mmS + "-" + ddS;
+ this.eTime = yyyyE + "-" + mmE + "-" + ddE;
+ 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 = {};
+ },
+ fetchData() {
+ //鐧诲綍鐢ㄦ埛淇℃伅
+ axios
+ .get(
+ "http://47.96.97.237/API/Web/GetUser?UserName=001&PassWord=123456&HOrgName=100038"
+ )
+ .then((res) => {
+ let data = res.data.data[0];
+ this.zuzhiId = data.HUSEORGID; //鏍规嵁鐧诲綍鐢ㄦ埛鑾峰彇榛樿鐨勭粍缁嘔D
+ this.queryParams.HOrgID = data.HUSEORGID;
+ this.user = data.Czymc;
+ axios
+ .get(this.baseURL + "/Web/GetOrganizations", {})
+ .then((res) => {
+ if (res.data.count == 1) {
+ this.organizationList = res.data.data; //缁勭粐鍒楄〃
+ }
+
+ this.handleQuery();
+ // this.getList();
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ })
+ .catch((error) => {
+ this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+ });
+ },
+ async getList() {
+ this.tableShow = false;
+ this.loading = true;
+ if (this.pageSize == 0) {
+ this.pageSize = 50;
+ }
+ // this.queryParams.HOrgID = 100038
+ // this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '2020-01-01' and CONVERT(varchar(100),鏃ユ湡, 23) <= '2030-01-01'`;
+ // 鏀舵枡閫氱煡鍗曞垪琛�
+ try {
+ let res = await axios.get(this.baseURL + "Cg_POInStockBill/page", {
+ params: {
+ sWhere: this.sWhere,
+ user: this.user,
+ 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.Comparator + "'" + this.queryParams.ColContent + "'";
+ break;
+ }
+ this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
+ }
+ if (this.queryParams.HNumber) {
+ this.sWhere += " and 鐢熶骇璧勬簮浠g爜 like '%" + this.queryParams.HNumber + "%'";
+ }
+ if (this.queryParams.HName) {
+ this.sWhere += " and 鐢熶骇璧勬簮鍚嶇О like '%" + this.queryParams.HName + "%'";
+ }
+
+ if (this.queryParams.HBeginDate && this.queryParams.HEndDate) {
+ console.log(this.queryParams.HBeginDate, this.queryParams.HEndDate);
+ this.sWhere += ` and CONVERT(varchar(100),鏃ユ湡, 23) >= '${this.queryParams.HBeginDate}' and CONVERT(varchar(100),鏃ユ湡, 23) <= '${this.queryParams.HEndDate}'`;
+ }
+ if (this.queryParams.HOrgID) {
+ this.sWhere += " and HOrgID = '" + this.queryParams.HOrgID + "'";
+ }
+ 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.HItemID = 0;
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鎵撳紑淇敼缁勪欢寮圭獥
+ handleEdit() {
+ this.$nextTick(() => {
+ this.openEdit = true;
+ this.editShow = true;
+ });
+ },
+ //鍏抽棴缂栬緫椤甸潰
+ editGyClose(val) {
+ this.editShow = false;
+ this.openEdit = false;
+ (this.multiple = true), this.getList();
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete() {
+ this.$modal
+ .confirm("纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠")
+ .then(() => {
+ if (!this.rowForm.瀹℃牳浜�) {
+ axios
+ .get(this.baseURL + "Cg_POInStockBill/DeltetPOInStockBill", {
+ params: {
+ HInter: this.rowForm.hmainid.toString(),
+ HsupId: this.rowForm.HsupId,
+ HQty: this.rowForm.HQty,
+ HSourceInterID: this.rowForm.HSourceInterID,
+ HSourceEntryID: this.rowForm.HSourceEntryID,
+ 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 + "/Cg_POInStockBill/AuditCg_POInStockBill", {
+ 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}/Cg_POInStockBill/CloseCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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_CloseRow(num, form) {
+ let HInterID = form.HItemID || form.HInterID || form.hmainid;
+ let HEntryID = form.HEntryID || form.hsubid;
+ try {
+ let res = await axios.get(
+ `${this.baseURL}/Cg_POInStockBill/CloseRowCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ HEntryID: HEntryID,
+ 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}/Cg_POInStockBill/DropCg_POInStockBill`,
+ {
+ params: {
+ HInterID: HInterID,
+ Type: num,
+ user: 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, IsStop: 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>
--
Gitblit v1.9.1