Browse Source

feat(market): 重构 firm_info 页面

- 重新设计页面布局,使用 scroll-view 实现滚动加载
- 添加校区信息获取功能- 优化数据展示逻辑,支持多条目展示
-调整样式,增加列表项间隔和边框
master
liutong 11 months ago
parent
commit
754d4b07a5
  1. 8
      api/apiRoute.js
  2. 101
      pages/market/my/firm_info.vue

8
api/apiRoute.js

@ -67,6 +67,13 @@ export default {
return res; return res;
}) })
}, },
//公共端-教师/销售端验证旧密码是否正确
common_getPersonnelCampus(data = {}) {
let url = '/campus/getPersonnelCampus'
return http.get(url, data).then(res => {
return res;
})
},
@ -228,6 +235,7 @@ export default {
//↑↑↑↑↑↑↑↑↑↑↑↑-----销售接口相关-----↑↑↑↑↑↑↑↑↑↑↑ //↑↑↑↑↑↑↑↑↑↑↑↑-----销售接口相关-----↑↑↑↑↑↑↑↑↑↑↑

101
pages/market/my/firm_info.vue

@ -3,63 +3,67 @@
<view class="assemble"> <view class="assemble">
<view style="height: 30rpx;"></view> <view style="height: 30rpx;"></view>
<scroll-view
class="ul"
scroll-y="true"
:lower-threshold="lowerThreshold"
@scrolltolower="loadMoreData_1"
style="height: 80vh;"
>
<view class="li" v-for="(v,k) in tableList" :key="k">
<!--企业图-->
<view class="section_1"> <view class="section_1">
<image class="pic" :src="$util.img(dataInfo.cover)" mode="aspectFit"></image> <image class="pic" v-if="v.campus_preview_image" :src="v.campus_preview_image" mode="aspectFit"></image>
</view> </view>
<view class="title_section">基本信息</view> <view class="title_section">基本信息</view>
<view class="section_2"> <view class="section_2">
<view class="item"> <view class="item">
<view class="title">企业名称</view> <view class="title">企业名称</view>
<view class="content">{{dataInfo.enterprise_name}}</view> <view class="content">{{v.campus_name}}</view>
</view> </view>
<view class="item"> <view class="item">
<view class="title">企业简称</view> <view class="title">企业地址</view>
<view class="content">{{dataInfo.enterprise_abbreviation}}</view> <view class="content">{{v.campus_address}}</view>
</view> </view>
<view class="item">
<view class="title">企业电话</view>
<view class="content">{{dataInfo.phone}}</view>
</view> </view>
<view class="item"> <view class="title_section">企业介绍</view>
<view class="title">所属行业</view> <view class="section_3">
<view class="content">{{dataInfo.profession}}</view> <view class="html" v-html="v.
campus_introduction"></view>
</view>
</view> </view>
</scroll-view>
<view class="item">
<view class="title">企业网址</view>
<view class="content">{{dataInfo.website}}</view>
</view>
<view class="item">
<view class="title">成立时间</view>
<view class="content">{{dataInfo.establishment_time}}</view>
</view>
</view>
<view class="title_section">企业介绍</view>
<view class="section_3">
<view class="html" v-html="dataInfo.
content"></view>
</view>
</view> </view>
</template> </template>
<script> <script>
import memberApi from '@/api/member.js'; import apiRoute from '@/api/apiRoute.js';
export default { export default {
data() { data() {
return { return {
dataInfo:{},// dataInfo:{},//
loading:false,//
lowerThreshold: 100,//
isReachedBottom: false,//|true=|false=
//
filteredData:{
personnel_id:'',
},
//
tableList:[],
} }
}, },
onShow(){ onShow(){
@ -68,13 +72,13 @@ import memberApi from '@/api/member.js';
methods: { methods: {
// //
async init(){ async init(){
await this.getEnterpriseInformation() await this.getUserInfo()
await this.getPersonnelCampus()
}, },
// //
async getEnterpriseInformation(){ async getUserInfo(){
let data = {} let res = await apiRoute.getPersonnelInfo({})
let res = await memberApi.getEnterpriseInformation(data)
if (res.code != 1) { if (res.code != 1) {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@ -82,9 +86,24 @@ import memberApi from '@/api/member.js';
}) })
return return
} }
this.filteredData.personnel_id = res.data.id//id
this.dataInfo = res.data },
console.log(123,this.dataInfo)
//
async getPersonnelCampus(){
let params = {...this.filteredData}
let res = await apiRoute.common_getPersonnelCampus(params)
if(res.code != 1){
uni.showToast({
title: res.msg,
icon: 'none'
})
return
}
this.tableList = res.data
console.log(123,this.tableList)
}, },
} }
@ -99,19 +118,23 @@ import memberApi from '@/api/member.js';
color: #fff; color: #fff;
} }
.ul{
display: flex;
flex-direction: column;
gap: 40rpx;
.li{
border-top: 1px solid #434544;
.section_1{ .section_1{
.pic{ .pic{
width: 100%; width: 100%;
height: 300rpx; height: 300rpx;
} }
} }
.title_section{ .title_section{
padding: 20rpx 40rpx; padding: 20rpx 40rpx;
color: #fff; color: #fff;
font-size: 24rpx; font-size: 24rpx;
} }
.section_2{ .section_2{
background-color: #434544; background-color: #434544;
display: flex; display: flex;
@ -123,7 +146,6 @@ import memberApi from '@/api/member.js';
gap: 30rpx; gap: 30rpx;
} }
} }
.section_3{ .section_3{
padding: 20rpx 22rpx; padding: 20rpx 22rpx;
padding-bottom: 250rpx; padding-bottom: 250rpx;
@ -131,4 +153,9 @@ import memberApi from '@/api/member.js';
color: #fff; color: #fff;
} }
} }
}
.li:nth-child(1){
border: 0px solid #434544;
}
}
</style> </style>

Loading…
Cancel
Save