| | |
| | | <template> |
| | | <div class="recruitmentManagement"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page1" |
| | | @size-change="sizeChange" |
| | | @current-change="currentChange" |
| | | @row-save="rowSave" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @refresh-change="refresh" |
| | | ></avue-crud> |
| | | <div class="dispatch"> |
| | | <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> |
| | | <span v-if="typeTABS.prop === 'tab1'"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | @on-load="onLoad1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete1" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab3'"> |
| | | <avue-crud |
| | | :option="option2" |
| | | :data="data2" |
| | | :page.sync="page2" |
| | | ref="crudrec2" |
| | | @on-load="onLoad2" |
| | | :table-loading="loading2" |
| | | @row-save="rowSave2" |
| | | @search-change="searchChange2" |
| | | @search-reset="searchReset2" |
| | | @row-update="rowUpdate2" |
| | | @row-del="rowDel2" |
| | | @selection-change="selectionChange2" |
| | | @refresh-change="refreshChange2" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete2" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </span> |
| | | </div> |
| | | </template> |
| | | </template> |
| | | |
| | | <script> |
| | | import { data, column } from "./data"; |
| | | import { data, column, column1, column2 } from "./data"; |
| | | import { |
| | | getdata, |
| | | adddata, |
| | | update, |
| | | remove, |
| | | getdata1, |
| | | adddata1, |
| | | update1, |
| | | remove1, |
| | | getdata2, |
| | | adddata2, |
| | | update2, |
| | | remove2, |
| | | } from "@/api/securityUnit/securityUnit"; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | Ourdata: "", |
| | | page1: { |
| | | currentPage: 1, |
| | | total: 20, |
| | | layout: "total,pager,prev, next", |
| | | background: false, |
| | | pageSize: 10, |
| | | typeTABS: {}, //标签页 |
| | | optionTABS: { |
| | | column: [ |
| | | { |
| | | icon: "el-icon-info", |
| | | label: "保安单位基本信息", |
| | | prop: "tab1", |
| | | }, |
| | | { |
| | | icon: "el-icon-info", |
| | | label: "保安单位出资人员登记", |
| | | prop: "tab2", |
| | | }, |
| | | { |
| | | icon: "el-icon-info", |
| | | label: "主要管理人员信息采集", |
| | | prop: "tab3", |
| | | }, |
| | | ], |
| | | }, |
| | | |
| | | loading: true, //保安单位基本信息 |
| | | selectionList: [], |
| | | page: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query: {}, |
| | | data: [], |
| | | option: { |
| | | card: true, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 545, |
| | | height: 547, |
| | | menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | | column: column, |
| | | }, |
| | | |
| | | loading1: true, //派遣记录 |
| | | selectionList1: [], |
| | | page1: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query1: {}, |
| | | data1: [], |
| | | option1: { |
| | | card: true, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 547, |
| | | menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | | column: column1, |
| | | }, |
| | | |
| | | loading2: true, //派遣记录 |
| | | selectionList2: [], |
| | | page2: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query2: {}, |
| | | data2: [], |
| | | option2: { |
| | | card: true, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 547, |
| | | menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | | column: column2, |
| | | }, |
| | | }; |
| | | }, |
| | | computed: { |
| | | ids() { |
| | | let ids = []; |
| | | this.selectionList.forEach((ele) => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | }, |
| | | ids1() { |
| | | let ids1 = []; |
| | | this.selectionList1.forEach((ele) => { |
| | | ids1.push(ele.id); |
| | | }); |
| | | return ids1.join(","); |
| | | }, |
| | | ids2() { |
| | | let ids2 = []; |
| | | this.selectionList2.forEach((ele) => { |
| | | ids2.push(ele.id); |
| | | }); |
| | | return ids2.join(","); |
| | | }, |
| | | }, |
| | | methods: { |
| | | getData() { |
| | | this.page1.total = this.Ourdata.length; |
| | | var maxi = +this.Ourdata.length / +this.page1.pageSize; |
| | | var y = String(maxi).indexOf(".") + 1; //判断小数 |
| | | if (y != 0) { |
| | | maxi++; |
| | | } |
| | | for (var i = 1; i <= maxi; i++) { |
| | | if (this.page1.currentPage === i) { |
| | | this.data = this.Ourdata.slice( |
| | | (i - 1) * this.page1.pageSize, |
| | | i * this.page1.pageSize |
| | | ); |
| | | } |
| | | handleChangeTABS(column) { |
| | | this.typeTABS = column; |
| | | // this.$message.success(JSON.stringify(column)); |
| | | if (column.prop == "tab1") { |
| | | this.loading1 = false; |
| | | this.loading2 = false; |
| | | this.onLoad(this.page); |
| | | } else if (column.prop == "tab2") { |
| | | this.loading = false; |
| | | this.loading2 = false; |
| | | this.onLoad1(this.page1); //第二个表格不会自动执行 |
| | | } else if (column.prop == "tab3") { |
| | | this.loading1 = false; |
| | | this.loading = false; |
| | | this.onLoad2(this.page2); //第二个表格不会自动执行 |
| | | } |
| | | }, |
| | | //保安单位基本信息 |
| | | sizeChange(val) { |
| | | this.page1.currentPage = 1; |
| | | this.page1.pageSize = val; |
| | | this.getData(); |
| | | // this.getData(); |
| | | this.onLoad(this.page, this.query); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange(val) { |
| | | this.page1.currentPage = val; |
| | | this.getData(); |
| | | // this.getData(); |
| | | this.onLoad(this.page, this.query); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave(form, done, loading) { |
| | | var that = this; |
| | | this.$message.success("模拟网络请求"); |
| | | setTimeout(() => { |
| | | this.$message.success("关闭按钮等待"); |
| | | loading(); |
| | | }, 1000); |
| | | setTimeout(() => { |
| | | this.$message.success("新增数据" + JSON.stringify(form)); |
| | | done(); |
| | | that.Ourdata.push(form); |
| | | this.getData() |
| | | }, 2000); |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | adddata(form).then( |
| | | (res) => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | refresh(val) { |
| | | this.$message.success("刷新回调,当前分页对象" + JSON.stringify(val)); |
| | | searchChange(params, done) { |
| | | this.query = params; |
| | | this.page.currentPage = 1; |
| | | this.onLoad(this.page, params); |
| | | done(); |
| | | }, |
| | | rowDel(form, index) { |
| | | this.$message.success("删除数据" + JSON.stringify(form)); |
| | | searchReset() { |
| | | this.query = {}; |
| | | this.onLoad(this.page); |
| | | }, |
| | | rowUpdate(form, index, done, loading) { |
| | | this.$message.success("模拟网络请求"); |
| | | setTimeout(() => { |
| | | this.$message.success("关闭按钮等待"); |
| | | loading(); |
| | | }, 1000); |
| | | setTimeout(() => { |
| | | this.$message.success( |
| | | "编辑数据" + JSON.stringify(form) + "数据序号" + index |
| | | ); |
| | | done(form); |
| | | }, 2000); |
| | | rowUpdate(row, index, done, loading) { |
| | | delete row.tenantid; |
| | | console.log(row, 0); |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | | }, |
| | | handleDelete() { |
| | | if (this.selectionList.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove(this.ids); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange() { |
| | | this.onLoad(this.page, this.query); |
| | | }, |
| | | onLoad(page, params = {}) { |
| | | this.loading = true; |
| | | getdata( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | const data = res.data.data; |
| | | this.page.total = data.total; |
| | | this.data = data.records; |
| | | console.log(this.data); |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | //保安单位基本信息 |
| | | |
| | | //派遣记录 |
| | | sizeChange1(val) { |
| | | this.page1.currentPage = 1; |
| | | this.page1.pageSize = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange1(val) { |
| | | this.page1.currentPage = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave1(form, done, loading) { |
| | | var that = this; |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | adddata1(form).then( |
| | | (res) => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | searchChange1(params, done) { |
| | | this.query1 = params; |
| | | this.page1.currentPage = 1; |
| | | this.onLoad1(this.page1, params); |
| | | done(); |
| | | }, |
| | | searchReset1() { |
| | | this.query = {}; |
| | | this.onLoad1(this.page1); |
| | | }, |
| | | rowUpdate1(row, index, done, loading) { |
| | | delete row.shareholdingratio; |
| | | delete row.tenantId; |
| | | console.log(row); |
| | | update1(row).then( |
| | | () => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel1(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange1(list) { |
| | | this.selectionList1 = list; |
| | | }, |
| | | handleDelete1() { |
| | | if (this.selectionList1.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(this.ids1); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec1.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange1() { |
| | | this.onLoad1(this.page1, this.query1); |
| | | }, |
| | | |
| | | // |
| | | onLoad1(page, params = {}) { |
| | | this.loading1 = true; |
| | | // console.log(page); |
| | | getdata1( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | const data = res.data.data; |
| | | this.page1.total = data.total; |
| | | this.data1 = data.records; |
| | | console.log(this.data1); |
| | | this.loading1 = false; |
| | | }); |
| | | }, |
| | | //派遣记录 |
| | | |
| | | //派遣记录 |
| | | sizeChange2(val) { |
| | | this.page2.currentPage = 1; |
| | | this.page2.pageSize = val; |
| | | // this.getData(); |
| | | this.onLoad2(this.page2, this.query2); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange2(val) { |
| | | this.page2.currentPage = val; |
| | | // this.getData(); |
| | | this.onLoad2(this.page2, this.query2); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave2(form, done, loading) { |
| | | var that = this; |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | adddata2(form).then( |
| | | (res) => { |
| | | this.onLoad2(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | searchChange2(params, done) { |
| | | this.query2 = params; |
| | | this.page2.currentPage = 1; |
| | | this.onLoad2(this.page2, params); |
| | | done(); |
| | | }, |
| | | searchReset2() { |
| | | this.query = {}; |
| | | this.onLoad2(this.page2); |
| | | }, |
| | | rowUpdate2(row, index, done, loading) { |
| | | console.log(row); |
| | | update2(row).then( |
| | | () => { |
| | | this.onLoad2(this.page2); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel2(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove2(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad2(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange2(list) { |
| | | this.selectionList2 = list; |
| | | }, |
| | | handleDelete2() { |
| | | if (this.selectionList2.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove2(this.ids2); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad2(this.page2); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec2.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange2() { |
| | | this.onLoad2(this.page2, this.query2); |
| | | }, |
| | | |
| | | // |
| | | onLoad2(page, params = {}) { |
| | | this.loading2 = true; |
| | | console.log(page); |
| | | getdata2( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | const data = res.data.data; |
| | | this.page2.total = data.total; |
| | | this.data2 = data.records; |
| | | console.log(this.data2); |
| | | this.loading2 = false; |
| | | }); |
| | | }, |
| | | //派遣记录 |
| | | }, |
| | | mounted() { |
| | | this.Ourdata = data; |
| | | this.getData(); |
| | | // this.Ourdata = data; |
| | | // this.onLoad1(this.page1); //第二个表格不会自动执行 |
| | | // this.onLoad2(this.page2); //第三个表格不会自动执行 |
| | | this.typeTABS = this.optionTABS.column[0]; |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | .recruitmentManagement { |
| | | .dispatch { |
| | | width: 100%; |
| | | height: 100%; |
| | | // border: 1px solid #000; |
| | | box-sizing: border-box; |
| | | } |
| | | .el-card__body { |
| | | padding-bottom: 5px !important; |
| | | } |
| | | .avue-crud__tip, |
| | | .el-tag, |
| | | .el-tag--light { |
| | | padding: 0 !important; |
| | | } |
| | | </style> |