|
@@ -3,18 +3,26 @@
|
|
|
<a-form ref="formRef" name="advanced_search" class="ant-advanced-search-form" :model="searchParams">
|
|
|
<a-row :gutter="24">
|
|
|
<a-col :span="6">
|
|
|
- <a-form-item label="企业名称" :label-col="{span:6}" name="companyName">
|
|
|
- <a-input v-model:value="searchParams.companyName" placeholder="" :allow-clear="true"/>
|
|
|
+ <a-form-item label="雇主名称" :label-col="{span:6}" name="AAB004">
|
|
|
+ <a-input v-model:value="searchParams.AAB004" placeholder="" :allow-clear="true"/>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="6">
|
|
|
- <a-form-item label="统一信用代码" :label-col="{span:6}" name="companyCode">
|
|
|
- <a-input v-model:value="searchParams.companyCode" placeholder="" :allow-clear="true"/>
|
|
|
+ <a-form-item label="统一信用代码" :label-col="{span:6}" name="AAB998">
|
|
|
+ <a-input v-model:value="searchParams.AAB998" placeholder="" :allow-clear="true"/>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="6">
|
|
|
- <a-form-item label="企业状态" :label-col="{span:6}" name="recordStatus">
|
|
|
-
|
|
|
+ <a-form-item label="所属行业" :label-col="{span:6}" name="AAB022">
|
|
|
+ <a-select
|
|
|
+ ref="select"
|
|
|
+ v-model:value="searchParams.AAB022"
|
|
|
+ :options="sshyList"
|
|
|
+ :field-names="{ label: 'name', value: 'code' }"
|
|
|
+ :allow-clear="true"
|
|
|
+ @change="loadData"
|
|
|
+ >
|
|
|
+ </a-select>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="6" style="text-align: left">
|
|
@@ -39,6 +47,38 @@
|
|
|
</a>
|
|
|
</a-col>
|
|
|
</a-row>
|
|
|
+ <a-row :gutter="24" v-show="expand">
|
|
|
+ <a-col :span="6">
|
|
|
+ <a-form-item label="薪酬范围" :label-col="{span:6}" name="regionCode">
|
|
|
+ <a-input-group compact>
|
|
|
+ <a-input-number v-model:value="searchParams.ACB241" :controls="false" style="width:125px;"
|
|
|
+ placeholder=""/>
|
|
|
+ <a-input
|
|
|
+ style="width: 40px; border-left: 0;border-right: 0; pointer-events: none; background-color: #fff;margin-left: 1px;"
|
|
|
+ placeholder="至" disabled/>
|
|
|
+ <a-input-number v-model:value="searchParams.ACB242" :controls="false" style="width:125px;"
|
|
|
+ placeholder=""/>
|
|
|
+ </a-input-group>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :span="6">
|
|
|
+ <a-form-item label="结算方式" :label-col="{span:6}" name="BAD002">
|
|
|
+ <a-select
|
|
|
+ ref="select"
|
|
|
+ v-model:value="searchParams.BAD002"
|
|
|
+ :options="jsfsList"
|
|
|
+ :field-names="{ label: 'name', value: 'code' }"
|
|
|
+ :allow-clear="true"
|
|
|
+ @change="loadData"
|
|
|
+ >
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :span="6">
|
|
|
+ <a-form-item label="所属驿站" :label-col="{span:6}" name="siteID">
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
<a-row class="edit-operation">
|
|
|
<a-col :span="24" class="flex-space-between">
|
|
|
<div>
|
|
@@ -59,6 +99,11 @@
|
|
|
:row-key="record=>record.companyID"
|
|
|
bordered>
|
|
|
<template #bodyCell="{ column, text, record }">
|
|
|
+ <template v-if="column.key === 'ACB241'">
|
|
|
+ <div>
|
|
|
+ {{ showSalary(record.ACB241, record.ACB242, record.BAD002Name) }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
<template v-if="column.key === 'operation'">
|
|
|
<div class="table-operation">
|
|
|
<a-button type="link" size="small" @click='onDetail(record)' functioncode="T01020101">查看</a-button>
|
|
@@ -74,30 +119,24 @@
|
|
|
<script setup lang="ts">
|
|
|
import ColumnsSetting from "@/components/common/ColumnsSetting.vue";
|
|
|
import {DownOutlined, UpOutlined} from "@ant-design/icons-vue";
|
|
|
-import {computed, reactive, ref} from "vue";
|
|
|
-import type {FormInstance, TableProps} from "ant-design-vue";
|
|
|
+import {computed, onMounted, reactive, ref} from "vue";
|
|
|
import PositionShowModal from "@/views/companyService/company/show.vue";
|
|
|
import {getPaginationTotalTitle} from "@/utils/common";
|
|
|
-import {getList} from "@/api/companyService/company";
|
|
|
import {getGigMarketList} from "@/api/companyService/gigMarket";
|
|
|
+import type {FormInstance, SelectProps, TableProps} from "ant-design-vue";
|
|
|
+import {getSgDictList} from "@/api/system/dictionary";
|
|
|
|
|
|
const formRef = ref<FormInstance>(null);
|
|
|
const expand = ref(false);
|
|
|
const searchParams = reactive({
|
|
|
pageIndex: 1,
|
|
|
pageSize: 20,
|
|
|
- companyName: '',
|
|
|
- companyCode: '',
|
|
|
- recordStatus: '',
|
|
|
- regionCode: '',
|
|
|
- streetCode: '',
|
|
|
- siteID: "",
|
|
|
- startDate: "",
|
|
|
- endDate: "",
|
|
|
- postCountSorter: "",
|
|
|
- companyTypeID: "",
|
|
|
- industryID: "",
|
|
|
- createUserName: ""
|
|
|
+ AAB004: "",
|
|
|
+ AAB998: "",
|
|
|
+ AAB022: "",
|
|
|
+ ACB241: "",
|
|
|
+ ACB242: "",
|
|
|
+ BAD002: "",
|
|
|
});
|
|
|
// 原始表格定义数据
|
|
|
const originalColumns = [
|
|
@@ -109,11 +148,20 @@ const originalColumns = [
|
|
|
customRender: item => `${searchParams.pageSize * (searchParams.pageIndex - 1) + item.index + 1}`,
|
|
|
isDisabled: true
|
|
|
},
|
|
|
- {title: '企业名称', dataIndex: 'companyName', key: 'companyName', width: 200, align: "center"},
|
|
|
- {title: '操作', key: 'operation', fixed: 'right', width: 150, align: "center", isDisabled: true},
|
|
|
+ {title: '雇主名称', dataIndex: 'AAB004', key: 'AAB004', width: 200, align: "center"},
|
|
|
+ {title: '统一社会信用代码', dataIndex: 'AAB998', key: 'AAB998', width: 200, align: "center"},
|
|
|
+ {title: '所属行业', dataIndex: 'AAB022Name', key: 'AAB022Name', width: 200, align: "center"},
|
|
|
+ {title: '工种类型', dataIndex: 'BDZDB3Name', key: 'BDZDB3Name', width: 200, align: "center"},
|
|
|
+ {title: '岗位名称', dataIndex: 'BCE055', key: 'BCE055', width: 200, align: "center"},
|
|
|
+ {title: '招工人数', dataIndex: 'ACB240', key: 'ACB240', width: 200, align: "center"},
|
|
|
+ {title: '结算方式', dataIndex: 'BAD002Name', key: 'BAD002Name', width: 200, align: "center"},
|
|
|
+ {title: '薪酬待遇', dataIndex: 'ACB241', key: 'ACB241', width: 200, align: "center"},
|
|
|
+ {title: '岗位状态', dataIndex: 'BAE045Name', key: 'BAE045Name', width: 200, align: "center"},
|
|
|
+ {title: '登记机构', dataIndex: 'BCZ253', key: 'BCZ253', width: 200, align: "center"},
|
|
|
+ {title: '操作', key: 'operation', fixed: 'right', width: 100, align: "center", isDisabled: true},
|
|
|
];
|
|
|
// 响应式表格定义
|
|
|
-const columns = ref<Array<any>>(originalColumns.filter(item => !item.isDefaultClose));
|
|
|
+const columns = ref<Array<any>>(originalColumns);
|
|
|
const pagination = computed(() => ({
|
|
|
total: formState.total,
|
|
|
current: searchParams.pageIndex,
|
|
@@ -124,11 +172,9 @@ const pagination = computed(() => ({
|
|
|
const handleTableChange: TableProps['onChange'] = (pag: {
|
|
|
pageSize: number;
|
|
|
current: number,
|
|
|
-}, filters, sorter: any) => {
|
|
|
- console.log(filters);
|
|
|
+}) => {
|
|
|
searchParams.pageIndex = pag.current;
|
|
|
searchParams.pageSize = pag.pageSize;
|
|
|
- searchParams.postCountSorter = sorter.order;
|
|
|
loadData();
|
|
|
};
|
|
|
const onSelectChange = (selectedRowKeys: any) => {
|
|
@@ -141,12 +187,17 @@ const formState = reactive({
|
|
|
selectedRowKeys: [],
|
|
|
loading: false
|
|
|
});
|
|
|
+// 所属行业字典列表
|
|
|
+const sshyList = ref<SelectProps['options']>();
|
|
|
+// 结算方式字典列表
|
|
|
+const jsfsList = ref<SelectProps['options']>();
|
|
|
|
|
|
// 数据加载
|
|
|
async function loadData() {
|
|
|
formState.loading = true;
|
|
|
- getGigMarketList(searchParams).then((result) => {
|
|
|
- console.log(result);
|
|
|
+ getGigMarketList(searchParams).then((result: any) => {
|
|
|
+ dataList.value = result.list;
|
|
|
+ formState.total = result.total;
|
|
|
}).finally(() => {
|
|
|
formState.loading = false;
|
|
|
})
|
|
@@ -167,6 +218,42 @@ function columnsCheckSub(columnsKeys: Array<string>) {
|
|
|
// 从原始表格定义数据中过滤出已选择的字段
|
|
|
columns.value = originalColumns.filter((item: any) => columnsKeys.includes(item.key));
|
|
|
}
|
|
|
+
|
|
|
+function showSalary(minSalary: any, maxSalary: any, jsfs: any) {
|
|
|
+ let dw = "元";
|
|
|
+ if (jsfs == "按小时结") {
|
|
|
+ dw += "/小时"
|
|
|
+ }
|
|
|
+ if (jsfs == "日结") {
|
|
|
+ dw += "/天"
|
|
|
+ }
|
|
|
+ if (jsfs == "月结") {
|
|
|
+ dw += "/月"
|
|
|
+ }
|
|
|
+ if (minSalary != null) {
|
|
|
+ if (maxSalary != null) {
|
|
|
+ return minSalary.toString() + "-" + maxSalary.toString() + dw;
|
|
|
+ } else {
|
|
|
+ return "≥" + minSalary.toString() + dw;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (maxSalary != null) {
|
|
|
+ return "≤" + maxSalary.toString() + dw;
|
|
|
+ } else {
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+onMounted(() => {
|
|
|
+ getSgDictList("AAB022").then((result) => {
|
|
|
+ sshyList.value = result;
|
|
|
+ })
|
|
|
+ getSgDictList("BAD002").then((result) => {
|
|
|
+ jsfsList.value = result;
|
|
|
+ })
|
|
|
+ onSearch();
|
|
|
+})
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|