This commit is contained in:
史典卓
2025-03-28 15:19:42 +08:00
parent ad4eb162a5
commit 0216f6053a
396 changed files with 18278 additions and 9899 deletions

View File

@@ -2,13 +2,16 @@
<view class="container">
<!-- 单位基本信息 -->
<view class="company-header">
<text class="company-name">湖南沃森电器科技有限公司</text>
<text class="company-name">{{ companyInfo.name }}</text>
<view class="company-info">
<view class="location">
<uni-icons type="location-filled" color="#4778EC" size="24"></uni-icons>
青岛 青岛经济技术开发区
青岛 {{ companyInfo.location }}
</view>
<view class="industry" style="display: inline-block">
{{ companyInfo.industry }}
<dict-Label dictType="scale" :value="companyInfo.scale"></dict-Label>
</view>
<text class="industry">制造业 100-299</text>
</view>
</view>
<view class="hr"></view>
@@ -16,73 +19,89 @@
<view class="company-description">
<view class="section-title">单位介绍</view>
<text class="description">
我司在永磁同步电机行业技术优势明显最高载频达24kHZ最高运行频率3000HZ最高运行转速达到180000rpm
{{ companyInfo.description }}
</text>
</view>
<!-- 在招职位 -->
<view class="job-list">
<text class="section-title">在招职位</text>
<view class="job-row" v-for="job in jobs" :key="job.id">
<view
class="job-row"
v-for="job in pageState.list"
:key="job.id"
@click="navTo(`/packageA/pages/post/post?jobId=${job.jobId}`)"
>
<view class="left">
<text class="job-title">{{ job.title }}</text>
<text class="job-title">{{ job.jobTitle }}</text>
<view class="job-tags">
<view class="tag" v-for="tag in job.tags" :key="tag">{{ tag }}</view>
<!-- <view class="tag" v-for="tag in job.tags" :key="tag">{{ tag }}</view> -->
<view class="tag">
<dict-Label dictType="education" :value="job.education"></dict-Label>
</view>
<view class="tag">
<dict-Label dictType="experience" :value="job.experience"></dict-Label>
</view>
<view class="tag">{{ job.vacancies }}</view>
</view>
<text class="location">{{ job.location }}</text>
<text class="location">
青岛
<dict-Label dictType="area" :value="job.jobLocationAreaCode"></dict-Label>
</text>
</view>
<view class="right">
<text class="salary">{{ job.salary }}</text>
<text class="hot" v-if="job.hot">🔥</text>
<text class="salary">{{ job.minSalary }}-{{ job.maxSalary }}/</text>
<text class="hot" v-if="job.isHot">🔥</text>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
jobs: [
{
id: 1,
title: '销售工程师-高级销售经理',
tags: ['本科', '3-5年', '15人', '本科', '3-5年', '15人'],
company: '湖南沃森电气科技有限公司',
location: '青岛 青岛经济技术开发区',
salary: '1万-2万',
hot: true,
},
{
id: 2,
title: '销售工程师-初级销售经理',
tags: ['本科', '3-5年', '15人'],
company: '湖南沃森电气科技有限公司',
location: '青岛 青岛经济技术开发区',
salary: '5千-1万',
hot: true,
},
{
id: 3,
title: '销售助理',
tags: ['大专', '3-5年', '20人'],
company: '湖南沃森电气科技有限公司',
location: '青岛 青岛经济技术开发区',
salary: '5千-8千',
},
{
id: 4,
title: '销售客服',
tags: ['大专', '3-5年', '50人'],
company: '湖南沃森电气科技有限公司',
location: '青岛 青岛经济技术开发区',
salary: '5千-8千',
},
],
};
},
};
<script setup>
import { reactive, inject, watch, ref, onMounted } from 'vue';
import { onLoad, onShow } from '@dcloudio/uni-app';
import dictLabel from '@/components/dict-Label/dict-Label.vue';
const { $api, navTo } = inject('globalFunction');
const pageState = reactive({
page: 0,
list: [],
total: 0,
maxPage: 1,
pageSize: 10,
});
const companyInfo = ref({});
onLoad((options) => {
console.log(options);
getCompanyInfo(options.companyId);
});
function getCompanyInfo(id) {
$api.createRequest(`/app/company/${id}`).then((resData) => {
companyInfo.value = resData.data;
getJobsList();
});
}
function getJobsList(type = 'add') {
if (type === 'refresh') {
pageState.page = 0;
pageState.maxPage = 1;
}
if (type === 'add' && pageState.page < pageState.maxPage) {
pageState.page += 1;
}
let params = {
current: pageState.page,
pageSize: pageState.pageSize,
};
$api.createRequest(`/app/company/job/${companyInfo.value.companyId}`, params).then((resData) => {
const { rows, total } = resData;
pageState.list = resData.rows;
pageState.total = resData.total;
pageState.maxPage = Math.ceil(pageState.total / pageState.pageSize);
});
}
</script>
<style lang="stylus">