| | |
| | | # 页面标题 |
| | | VUE_APP_TITLE = 管理系统 |
| | | |
| | | |
| | | # 开发环境配置 |
| | | ENV = 'development' |
| | | |
| | | |
| | | # 管理系统/开发环境 |
| | | # VUE_APP_BASE_API = '/dev-api' |
| | | VUE_APP_BASE_API = '/API' |
| | | |
| | | VUE_APP_BASE_URL = 'http://localhost:81/API/' |
| | | |
| | | PORT = 81 |
| | | |
| | | |
| | | VUE_APP_BASE_API = '/dev-api' |
| | | |
| | | # 路由懒加载 |
| | | VUE_CLI_BABEL_TRANSPILE_MODULES = true |
| | |
| | | # 页面标题 |
| | | VUE_APP_TITLE = 管理系统 |
| | | |
| | | |
| | | # 生产环境配置 |
| | | ENV = 'production' |
| | | |
| | | |
| | | # 管理系统/生产环境 |
| | | VUE_APP_BASE_API = 'http://47.96.97.237/API/' |
| | |
| | | let sWhere = ""; |
| | | this.loading = true; |
| | | axios |
| | | .get(process.env.VUE_APP_BASE_URL + "/Gy_Employee/list", { |
| | | .get(process.env.VUE_APP_BASE_API + "/Gy_Employee/list", { |
| | | params: { sWhere: sWhere, user: this.user, Organization: "浙江智云迈思" }, |
| | | }) |
| | | .then((response) => { |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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> |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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: "宿舍代码" }, |
| | | { 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> |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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: "组织架构代码", |
| | | 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> |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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> |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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> |
| New file |
| | |
| | | <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禁用,false可用) |
| | | 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> |
| | |
| | | </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"> |
| | |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openDataDialog(4)" |
| | | @click="openDataDialog(1)" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openDataDialog(4)" |
| | | @click="openDataDialog(2)" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openDataDialog(4)" |
| | | @click="openDataDialog(3)" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openDataDialog(4)" |
| | | @click="openDataDialog(5)" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openDataDialog(4)" |
| | | @click="openDataDialog(6)" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | </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> |
| | |
| | | </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> |
| | |
| | | </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> |
| | |
| | | </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> |
| | |
| | | </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="其他扣款3" 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)" |
| | | >上传</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> |
| | | <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> |
| | |
| | | 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> |
| | |
| | | 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 { |
| | |
| | | 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: "", |
| | |
| | | deptShow: false, //部门数据组件 |
| | | warehouseShow: false, //仓库数据组件 |
| | | materialShow: false, //物料数据组件 |
| | | dormShow: false, // 宿舍基础资料 |
| | | deptform: {}, //弹窗选中数据 |
| | | openData: false, //数据弹窗 |
| | | dialogTitle: "", |
| | |
| | | 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, // 用于记录上次点击的行索引 |
| | |
| | | showSearch: true, |
| | | // 选中数组 |
| | | ids: [], |
| | | |
| | | // 非单个禁用 |
| | | single: true, |
| | | // 非多个禁用 |
| | | multiple: true, |
| | | // 表单参数 |
| | | form: {}, |
| | | // 表单校验 |
| | | rules: { |
| | | HNumber: [{ required: true, message: "生产资源代码不能为空", trigger: "blur" }], |
| | | HName: [{ required: true, message: "生产资源名称不能为空", trigger: "blur" }], |
| | | HCenter: [{ required: true, message: "工作中心不能为空", trigger: "blur" }], |
| | | HNumber: [{ required: true, message: "职员代码不能为空", trigger: "blur" }], |
| | | HName: [{ required: true, message: "职员名称不能为空", trigger: "blur" }], |
| | | HDeptName: [{ required: true, message: "部门不能为空", trigger: "blur" }], |
| | | }, |
| | | |
| | | HGovStatusList: [ |
| | |
| | | { 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() { |
| | |
| | | this.reset(); |
| | | this.fetchData(); |
| | | }, |
| | | mounted() { |
| | | console.log(this.row); |
| | | console.log(this.OperationType); |
| | | console.log(this.HOrgID); |
| | | }, |
| | | methods: { |
| | | handleBeforeUpload(e) { |
| | | if (!this.form.HNumber) { |
| | | // 1. 阻止默认行为(阻止打开文件选择窗口) |
| | | e.preventDefault(); |
| | | // 2. 阻止事件传播(防止触发其他可能的事件处理器) |
| | | e.stopPropagation(); |
| | | this.$modal.msgError("职员代码未填写,不可上传文件"); |
| | | } |
| | | }, |
| | | 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; |
| | | // 仅处理图片文件 |
| | | 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: "未上传", |
| | | }); |
| | | |
| | | console.log(this.fileListPreUpload); |
| | | }; |
| | | |
| | | // 以 DataURL 格式读取文件 |
| | | reader.readAsDataURL(rawFile); |
| | | } |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | | console.log(selection); |
| | | }, |
| | | fetchData() { |
| | | //登录用户信息 |
| | | axios |
| | |
| | | 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, |
| | | }, |
| | |
| | | let result = response.data; |
| | | if (result.code == 1) { |
| | | // 说明验证成功了, |
| | | var data = result.data.h_v_Edit_IF_SourceList[0]; |
| | | this.form.HNumber = data.生产资源代码; |
| | | this.form.HItemID = this.OperationType == 2 ? 0 : data.HItemID; |
| | | this.form.HName = data.生产资源名称; |
| | | this.form.HHelpCode = data.助记代码; |
| | | 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.工序代码; |
| | | 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.职员代码, |
| | | HItemID: this.OperationType == 2 ? 0 : data.HItemID, |
| | | HName: data.职员名称, |
| | | HHelpCode: data.助记代码, |
| | | HGroupID: data.HGroupID, |
| | | HGroupName: data.班组名称, |
| | | HGroupNumber: data.班组代码, |
| | | HEndFlag: data.明细标记, |
| | | HNoBrushFlag: data.是否打卡, |
| | | HOverType: data.是否调休, |
| | | HShiftFlag: data.是否轮班调休, |
| | | HStopwagesFlag: data.是否停发, |
| | | HInsuranceStatus: data.是否参保, |
| | | HDeptID: data.部门ID, |
| | | HDeptName: data.部门名称, |
| | | HDutyID: data.职务ID, |
| | | HDutyName: data.职务名称, |
| | | HDutyNumber: data.职务代码, |
| | | HDormID: data.宿舍ID, |
| | | HDormName: data.宿舍名称, |
| | | HDormNumber: data.宿舍代码, |
| | | HWorkTypeID: data.工种ID, |
| | | HWorkTypeName: data.工种名称, |
| | | HWorkTypeNumber: data.工种代码, |
| | | HCTPrjID: data.核算方式ID, |
| | | HCTPrjName: data.核算方式名称, |
| | | HCTPrjNumber: data.核算方式代码, |
| | | HPostID: data.岗位ID, |
| | | HPostName: data.岗位名称, |
| | | HPostNumber: data.岗位代码, |
| | | 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.档案编号, |
| | | 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.其他扣款3, |
| | | HMedicare: data.医疗保险, |
| | | HInsurance: data.养老保险, |
| | | HDrydock: data.失业保险, |
| | | HBasePay: data.基本工资, |
| | | HExamLevPostMoney: data.职务考核工资, |
| | | HExamRate: data.考核系数, |
| | | HPayType: data.支付类型, |
| | | HLeftMoneyRate: data.剩余工资, |
| | | HHighestPay: data.最高工资, |
| | | HOverPayRate: data.超额比率, |
| | | HStopflag: data.禁用标记, |
| | | HRemark: data.备注, |
| | | }); |
| | | } |
| | | this.$nextTick(() => { |
| | | this.getSubData(); |
| | | this.formShow = true; |
| | | this.formLoading = false; |
| | | }); |
| | |
| | | } 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; |
| | |
| | | //部门弹窗赋值 |
| | | 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.岗位代码; |
| | | this.openData = false; |
| | | } else if (num == 3) { |
| | | this.editData[this.zbIndex].HMaterID = deptRow.HItemID; |
| | | this.editData[this.zbIndex].物料代码 = deptRow.物料代码; |
| | | 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.岗位代码, |
| | | }); |
| | | 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.工种代码, |
| | | }); |
| | | this.openData = false; |
| | | } else if (num == "CTPrj") { |
| | | // 核算方式 |
| | | Object.assign(this.form, { |
| | | HCTPrjID: deptRow.HItemID, |
| | | HCTPrjName: deptRow.核算方式名称, |
| | | HCTPrjNumber: deptRow.核算方式代码, |
| | | }); |
| | | this.openData = false; |
| | | } else if (num == "Duty") { |
| | | // 核算方式 |
| | | Object.assign(this.form, { |
| | | HDutyID: deptRow.hitemid, |
| | | HDutyName: deptRow.职务, |
| | | HDutyNumber: deptRow.组织架构代码, |
| | | }); |
| | | this.openData = false; |
| | | } else if (num == "Group") { |
| | | // 班组 |
| | | Object.assign(this.form, { |
| | | HGroupItem: deptRow.HItemID, |
| | | HGroupName: deptRow.班组名称, |
| | | HGroupNumber: deptRow.班组代码, |
| | | }); |
| | | this.openData = false; |
| | | } else if (num == "Dorm") { |
| | | // 宿舍 |
| | | Object.assign(this.form, { |
| | | HDormID: deptRow.HItemID, |
| | | HDormName: deptRow.HName, |
| | | HDormNumber: deptRow.HNumber, |
| | | }); |
| | | this.openData = false; |
| | | } |
| | | }, |
| | |
| | | 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 = []; |
| | |
| | | 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) => { |
| | |
| | | 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) { |
| | |
| | | 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; |
| | | } |
| | | }, |
| | | uploadDataDelete(row, index) { |
| | | console.log(row, index); |
| | | this.fileList.splice(index, 1); |
| | | this.fileListPreUpload.splice(index, 1); |
| | | }, |
| | | uploadDataUpload(row, index) { |
| | | console.log(row, index); |
| | | }, |
| | | }, |
| | | }; |
| | |
| | | .xsckdBox .el-date-editor.el-input { |
| | | width: 100%; |
| | | } |
| | | |
| | | .maintitle { |
| | | font-size: 16px; |
| | | box-sizing: border-box; |
| | | padding-left: 1em; |
| | | padding-bottom: 0.5em; |
| | | } |
| | | </style> |
| | |
| | | :OperationType="OperationType" |
| | | :linterid="this.rowForm.HItemID" |
| | | :HSouceBillType="this.rowForm.HSourceBillType" |
| | | :HOrgID="this.queryParams.HOrgID" |
| | | :copyType="copyType" |
| | | @editCloseGy="editGyClose" |
| | | v-if="editShow" |
| | |
| | | subDisabled: false, //编辑页面保存按钮是否禁用(true禁用,false可用) |
| | | 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, // 用于记录上次点击的行索引 |
| | |
| | | resetQuery() { |
| | | this.dateRange = []; |
| | | this.sWhere = ""; |
| | | this.queryParams = { |
| | | Object.assign(this.Parameters, { |
| | | HBillNo: "", |
| | | HInitTimeCycle: 29, |
| | | HProjectNumber: "", |
| | |
| | | ColContent1: "", |
| | | ColContent2: "", |
| | | ColContent: "", |
| | | }; |
| | | }); |
| | | this.riqiChange(); |
| | | this.resetForm("queryForm"); |
| | | this.getList(); |
| | |
| | | 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, // 用于记录上次点击的行索引 |
| | |
| | | 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, // 用于记录上次点击的行索引 |