choreInformation.vue 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. <template>
  2. <view>
  3. <u-navbar back-text="零工驿站" back-icon-size="28" back-icon-color="#ffffff"
  4. :background="{backgroundColor: '#2795FD',}" :back-text-style="{color: '#ffffff'}"></u-navbar>
  5. <!-- 搜索框 -->
  6. <view class="search">
  7. <view class="search-box">
  8. <view class="option">
  9. <nxsearch :selectList="selectList" button="inside" @search="doSearch" @confirm="doSearc"
  10. v-model="searchQuery.keyword" placeholder="输入关键字找工作" />
  11. </view>
  12. </view>
  13. </view>
  14. <!-- 搜索结果 -->
  15. <view class="result">
  16. <view class="tabs">
  17. <view class="left">
  18. <u-tabs bg-color="#F0F0F2" :list="tabList" :is-scroll="false" :current="current"
  19. @change="change"></u-tabs>
  20. </view>
  21. <view class="screen" @click="popupShow = true">
  22. <view class="icon">
  23. <img src="../../assets/img/riLine-filter-line@1x.png" alt="">
  24. </view>
  25. <view>筛选</view>
  26. </view>
  27. </view>
  28. <view class="result-item" v-for="item in 3">
  29. <!-- 照片 -->
  30. <view class="photo">
  31. <img src="../../assets/img/informationPhoto.png" alt="">
  32. </view>
  33. <view class="content">
  34. <!-- 职位薪水 -->
  35. <view class="top">
  36. <view class="position">
  37. 司机/保安/普工/地推
  38. </view>
  39. <view class="salary">
  40. 120元/天
  41. </view>
  42. </view>
  43. <view class="issuer">
  44. 李先生
  45. </view>
  46. <view class="bottom">
  47. <view class="tags">
  48. <view class="tag-item">
  49. </view>
  50. <view class="tag-item">
  51. 21岁
  52. </view>
  53. <view class="tag-item">
  54. 高中
  55. </view>
  56. </view>
  57. <view class="date">
  58. 更新时间:2023-06-01
  59. </view>
  60. </view>
  61. </view>
  62. </view>
  63. </view>
  64. <!-- 筛选框 -->
  65. <u-popup v-model="popupShow" @close="close" mode="bottom" border-radius="20" :closeable="true">
  66. <view class="popup-content" >
  67. <view class="headline">
  68. 筛选
  69. </view>
  70. <!-- 薪资待遇 -->
  71. <view class="salary-package">
  72. <view class="title">
  73. 薪资待遇
  74. </view>
  75. <!-- 选项 -->
  76. <view class="options">
  77. <view :class="{item,checked:saralyChecked==index}" v-for="(item,index) in salaryList" :key="index"
  78. @click="changeSaralyChecked(index)" >
  79. {{item.name}}
  80. </view>
  81. </view>
  82. </view>
  83. <!-- 工作经验 -->
  84. <view class="work-experience">
  85. <view class="title">
  86. 工作经验
  87. </view>
  88. <!-- 选项 -->
  89. <view class="options">
  90. <view :class="{item,checked:workChecked==index}" v-for="(item,index) in workList" :key="index"
  91. @click="changeWorkChecked(index)" >
  92. {{item.name}}
  93. </view>
  94. </view>
  95. </view>
  96. <view class="button">
  97. <button class="reset">重置</button>
  98. <button class="confirm">确认</button>
  99. </view>
  100. </view>
  101. </u-popup>
  102. <!-- <tabbar ref="mytabbar"
  103. :current="3"></tabbar> -->
  104. </view>
  105. </template>
  106. <script>
  107. import nxsearch from "../../components/nx-search.vue"
  108. import tabbar from "../../components/Tabbar.vue"
  109. export default {
  110. components: {
  111. nxsearch,
  112. tabbar
  113. },
  114. data() {
  115. return {
  116. keyword: '',
  117. popupShow: false,
  118. saralyChecked:-1,
  119. workChecked:-1,
  120. searchQuery: {
  121. keyword: '',
  122. selectIndex: 0
  123. },
  124. salaryList:[{
  125. name:'100元/天以下'
  126. },
  127. {
  128. name:'100-150元/天'
  129. },{
  130. name:'150-180元/天'
  131. },{
  132. name:'200-300元/天'
  133. },{
  134. name:'300-400元/天'
  135. },{
  136. name:'400-500元/天'
  137. },
  138. {
  139. name:'500元/天以上'
  140. }
  141. ],
  142. workList:[{
  143. name:'应届生'
  144. },
  145. {
  146. name:'1年以上'
  147. },
  148. {
  149. name:'2年以上'
  150. },
  151. {
  152. name:'3年以上'
  153. },
  154. {
  155. name:'5年以上'
  156. }],
  157. tabList: [{
  158. name: '最新'
  159. }, {
  160. name: '日结'
  161. }, {
  162. name: '周结'
  163. }, {
  164. name: '月结'
  165. }],
  166. selectList: [{
  167. id: 1,
  168. name: '找工作'
  169. },
  170. {
  171. id: 2,
  172. name: '找公司'
  173. },
  174. ],
  175. tabList: [{
  176. name: '最新'
  177. }, {
  178. name: '日结'
  179. }],
  180. current: 0
  181. }
  182. },
  183. methods: {
  184. // 执行搜索
  185. doSearch(searchQuery) {
  186. console.log('searchQuery', searchQuery);
  187. },
  188. change(index) {
  189. this.current = index;
  190. },
  191. changeSaralyChecked(index){
  192. this.saralyChecked = index;
  193. },
  194. changeWorkChecked(index){
  195. this.workChecked = index;
  196. },
  197. close(){
  198. this.saralyChecked = -1;
  199. this.workChecked = -1;
  200. }
  201. }
  202. }
  203. </script>
  204. <style>
  205. page {
  206. background: #F0F0F2;
  207. padding-bottom: 50px;
  208. }
  209. </style>
  210. <style lang="scss" scoped>
  211. .search {
  212. background-color: #fff;
  213. padding: 16rpx 32rpx;
  214. .search-box {
  215. border-radius: 50px;
  216. height: 72rpx;
  217. line-height: 72rpx;
  218. }
  219. }
  220. // 搜索结果
  221. .result{
  222. background-color: #fff;
  223. .tabs{
  224. padding-right:32rpx;
  225. display: flex;
  226. justify-content: space-between;
  227. align-items: center;
  228. border-bottom:1px solid #f1f1f1;
  229. .left{
  230. width: 33%;
  231. /deep/.u-tabs{
  232. background-color: #fff !important;
  233. }
  234. }
  235. .screen{
  236. display: flex;
  237. align-items: center;
  238. color: rgba(39, 149, 253, 1);
  239. font-size: 16px;
  240. img{
  241. width: 16px;
  242. height: 16px;
  243. vertical-align: middle;
  244. margin-right: 4rpx;
  245. }
  246. }
  247. }
  248. .result-item{
  249. padding: 32rpx 0;
  250. margin:0 32rpx;
  251. display: flex;
  252. border-bottom:1px solid #f1f1f1;
  253. // 照片
  254. .photo{
  255. width: 96rpx;
  256. height:96rpx;
  257. overflow: hidden;
  258. border-radius: 50px;
  259. border: 1px solid rgba(255, 255, 255, 1);
  260. img{
  261. width: 100%;
  262. height: 100%;
  263. }
  264. }
  265. .content{
  266. margin-left: 24rpx;
  267. flex:1;
  268. // 职位薪水
  269. .top{
  270. display: flex;
  271. justify-content: space-between;
  272. align-items: center;
  273. font-size: 36rpx;
  274. .position{
  275. color: rgba(16, 16, 16, 1);
  276. font-family: 'PingFangSC-medium';
  277. }
  278. .salary{
  279. color: rgba(255, 61, 0, 1);
  280. font-size: 32rpx;
  281. }
  282. }
  283. // 发布人
  284. .issuer{
  285. margin-top:16rpx;
  286. }
  287. // 标签和时间
  288. .bottom{
  289. display: flex;
  290. justify-content: space-between;
  291. align-items: center;
  292. margin-top:24rpx;
  293. .tags{
  294. display: flex;
  295. .tag-item{
  296. padding:0 16rpx ;
  297. height: 36rpx;
  298. line-height: 36rpx;
  299. border-radius: 4px;
  300. background-color: rgba(241, 241, 247, 1);
  301. color: rgba(129, 127, 153, 1);
  302. font-size: 24rpx;
  303. text-align: center;
  304. margin-right: 8rpx;
  305. }
  306. }
  307. .date{
  308. color: rgba(153, 153, 153, 1);
  309. font-size: 24rpx;
  310. }
  311. }
  312. }
  313. }
  314. }
  315. // 筛选框
  316. .popup-content {
  317. padding: 32rpx;
  318. .headline {
  319. color: #101010;
  320. font-size: 40rpx;
  321. text-align: center;
  322. }
  323. // 薪资待遇
  324. .salary-package,.work-experience{
  325. margin-top: 16rpx;
  326. .title {
  327. font-size: 32rpx;
  328. color: #111111;
  329. }
  330. // 选项
  331. .options {
  332. display: flex;
  333. flex-wrap: wrap;
  334. justify-content:flex-start;
  335. margin-top: 24rpx;
  336. .item {
  337. height: 56rpx;
  338. line-height: 56rpx;
  339. width: 210rpx;
  340. text-align: center;
  341. margin-bottom: 16rpx;
  342. margin-right: 16rpx;
  343. color: #999999;
  344. background-color: #F3F3F4;
  345. border-radius: 4px;
  346. }
  347. .checked {
  348. background-color: #2795FD;
  349. color: #fff;
  350. }
  351. }
  352. }
  353. .button{
  354. display: flex;
  355. margin-top:8rpx;
  356. .reset{
  357. color: #999999;
  358. background-color: #F3F3F4;
  359. width: 200rpx;
  360. height: 72rpx;
  361. line-height: 72rpx;
  362. border-radius: 8px;
  363. }
  364. .confirm{
  365. width: 440rpx;
  366. background-color: #2795FD;
  367. color: #fff;
  368. height: 72rpx;
  369. line-height: 72rpx;
  370. border-radius: 8px;
  371. }
  372. }
  373. }
  374. .salary-form,.clearing-form{
  375. .options{
  376. justify-content: start !important;
  377. }
  378. .item{
  379. margin-right: 24rpx;
  380. }
  381. }
  382. /deep/.u-close--top-right {
  383. top: 44rpx;
  384. }
  385. </style>