特易招,招聘小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

223 lines
4.2 KiB

10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
  1. <template>
  2. <view class="page">
  3. <image src="/static/image/home/banner.png" mode="aspectFill"
  4. class="bgImage"></image>
  5. <view class="box">
  6. <view class="boss-box">
  7. <image :src="hanHaiMember.headImage"
  8. class="headImage"
  9. mode="aspectFill"></image>
  10. <view class="info">
  11. <view class="title">
  12. {{personInfo.name}}<text></text>
  13. </view>
  14. <view class="desc">
  15. {{companyInfo.companyName}}
  16. <view class="vip">
  17. vip
  18. </view>
  19. </view>
  20. </view>
  21. </view>
  22. <view class="firm">
  23. <view class="title">
  24. 任职企业
  25. </view>
  26. <view class="firm-info">
  27. <image :src="companyInfo.logo"
  28. class="image"
  29. mode="aspectFill"></image>
  30. <view class="info">
  31. <view class="name">
  32. {{companyInfo.companyName}}
  33. </view>
  34. <view class="desc">
  35. {{companyInfo.financing}}*{{companyInfo.industry}}*{{companyInfo.number}}
  36. </view>
  37. </view>
  38. </view>
  39. <view class="album">
  40. <uv-album :urls="urls"></uv-album>
  41. </view>
  42. </view>
  43. <view class="list-work">
  44. <view class="text">
  45. 发布职位<text>19</text>
  46. </view>
  47. <view style="margin: 20rpx;"
  48. @click="$utils.navigateTo('/pages_order/work/userDetail?id=' + item.id)"
  49. :key="index"
  50. v-for="(item, index) in list">
  51. <workItem :item="item"/>
  52. </view>
  53. </view>
  54. </view>
  55. </view>
  56. </template>
  57. <script>
  58. import userHead from '../components/user/userHead.vue'
  59. import mixinList from '@/mixins/list.js'
  60. import workItem from '@/components/list/workList/workItem.vue'
  61. export default {
  62. mixins : [mixinList],
  63. components : {
  64. userHead,
  65. workItem,
  66. },
  67. data() {
  68. return {
  69. id : 0,
  70. detail : {},
  71. personInfo:{},
  72. companyInfo:{},
  73. hanHaiMember:{},
  74. collectionFlag : false,
  75. mixinsListApi : 'employeeQueryJobList',
  76. urls: ['https://via.placeholder.com/400x200.png/3c9cff/fff'],
  77. }
  78. },
  79. onLoad({id}) {
  80. this.id = id
  81. },
  82. onShow() {
  83. this.getDetail()
  84. },
  85. onPullDownRefresh() {
  86. this.getDetail()
  87. },
  88. methods: {
  89. getDetail(){
  90. let data = {
  91. jobId : this.id
  92. }
  93. if(uni.getStorageSync('token')){
  94. data.token = uni.getStorageSync('token')
  95. }
  96. this.$api('employeeQueryJobById', data, res => {
  97. uni.stopPullDownRefresh()
  98. if(res.code == 200){
  99. this.detail = res.result.jobInfo
  100. this.collectionFlag = res.result.collectionFlag
  101. this.personInfo = res.result.personInfo
  102. this.companyInfo = res.result.companyInfo
  103. this.hanHaiMember = res.result.hanHaiMember
  104. }
  105. })
  106. },
  107. }
  108. }
  109. </script>
  110. <style scoped lang="scss">
  111. .page{
  112. min-height: 100vh;
  113. .bgImage{
  114. width: 100%;
  115. height: 500rpx;
  116. }
  117. .box{
  118. margin-top: -100rpx;
  119. .boss-box{
  120. background-color: #fff;
  121. margin: 20rpx;
  122. border-radius: 20rpx;
  123. padding: 20rpx;
  124. position: relative;
  125. box-shadow: 0 0 10rpx 10rpx #00000009;
  126. padding-top: 140rpx;
  127. .headImage{
  128. border-radius: 50%;
  129. width: 150rpx;
  130. height: 150rpx;
  131. position: absolute;
  132. top: -50rpx;
  133. left: 30rpx;
  134. }
  135. .info{
  136. padding: 0 20rpx;
  137. line-height: 46rpx;
  138. .title{
  139. font-weight: 900;
  140. font-size: 32rpx;
  141. }
  142. .desc{
  143. display: flex;
  144. align-items: center;
  145. font-size: 24rpx;
  146. .vip{
  147. padding: 4rpx 20rpx;
  148. border-radius: 20rpx;
  149. border: 1rpx solid #EF7834;
  150. color: #EF7834;
  151. margin-left: 30rpx;
  152. }
  153. }
  154. }
  155. }
  156. .firm{
  157. background-color: #fff;
  158. margin: 20rpx;
  159. border-radius: 20rpx;
  160. padding: 20rpx;
  161. position: relative;
  162. box-shadow: 0 0 10rpx 10rpx #00000009;
  163. .title{
  164. font-size: 32rpx;
  165. font-weight: 900;
  166. padding: 20rpx;
  167. }
  168. .firm-info{
  169. display: flex;
  170. .image{
  171. width: 140rpx;
  172. height: 140rpx;
  173. border-radius: 20rpx;
  174. }
  175. .info{
  176. display: flex;
  177. flex-direction: column;
  178. justify-content: space-around;
  179. margin-left: 30rpx;
  180. font-size: 26rpx;
  181. .name{
  182. font-weight: 900;
  183. }
  184. .desc{
  185. }
  186. }
  187. }
  188. .album{
  189. padding: 20rpx 0;
  190. }
  191. }
  192. .list-work{
  193. .text{
  194. background-color: #fff;
  195. padding: 26rpx;
  196. font-weight: 900;
  197. text{
  198. font-weight: 500;
  199. color: #666666;
  200. font-size: 26rpx;
  201. margin-left: 20rpx;
  202. }
  203. }
  204. }
  205. }
  206. }
  207. </style>