用工小程序前端代码
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.

193 lines
4.1 KiB

7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
7 months ago
4 months ago
4 months ago
4 months ago
4 months ago
7 months ago
4 months ago
4 months ago
7 months ago
4 months ago
4 months ago
4 months ago
7 months ago
4 months ago
7 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
7 months ago
4 months ago
7 months ago
  1. <template>
  2. <view>
  3. <u-sticky bgColor="#ff7a31">
  4. <u-tabs :list="nav" :current="current" lineColor="#ffffff" :activeStyle="{
  5. color: '#ffffff',
  6. transform: 'scale(1.05)'
  7. }" :inactiveStyle="{
  8. color: '#f5f5f5',
  9. transform: 'scale(1)'
  10. }" :scrollable="true" itemStyle="padding-left: 60rpx; padding-right: 60rpx;font-size:22rpx; height: 100rpx;"
  11. @change="handleChangeTab"></u-tabs>
  12. </u-sticky>
  13. <view class="se-p-40">
  14. <view class="se-px-40 se-mb-30 se-py-30 se-bgc-white se-br-40 se-bs-b" v-for="item in list" :key="item.id">
  15. <view class="se-flex se-flex-h-sb se-fw-6 se-fs-32 se-pb-20">
  16. <view class="se-flex">
  17. <text>{{item.title}}</text>
  18. <u-icon name="arrow-right"></u-icon>
  19. </view>
  20. <view class="se-c-red">
  21. {{getOrderStatus(item.orderStatus)}}
  22. </view>
  23. </view>
  24. <view class="se-flex">
  25. <view class="se-w-160 se-h-160">
  26. <image class="se-w-160 se-h-160 se-br-10" src="https://cdn.uviewui.com/uview/album/1.jpg"
  27. mode=""></image>
  28. </view>
  29. <view class="se-ml-20 se-flex se-flex-v-sa se-flex-ai-fs">
  30. <view class="se-fw-6 se-c-black se-fs-30 se-display-ib">{{item.companyName}}</view>
  31. <view class="se-fs-24 se-c-text-third se-display-ib">所属行业:{{item.industryName}}</view>
  32. <view class="se-fs-24 se-c-text-third se-display-ib">所属工种:{{item.industryName}}</view>
  33. </view>
  34. </view>
  35. <view class="se-flex se-flex-h-sb se-w-p-100 se-pt-20">
  36. <view class="se-fs-24 se-display-ib">
  37. <text class="se-c-black">总价格</text>
  38. <text class="se-c-orange se-fs-30 se-fw-6"><text
  39. class="se-fs-24"></text>{{item.payMoney}}</text>
  40. </view>
  41. <view
  42. class="po-r se-display-ib se-px-20 se-br-40 se-flex-h-c se-h-50 se-lh-50 se-ta-c se-fs-24 se-fs-24 se-c-66 se-b">
  43. <text>联系客服</text>
  44. <button open-type="contact" class="contact"></button>
  45. </view>
  46. </view>
  47. </view>
  48. </view>
  49. </view>
  50. </template>
  51. <script>
  52. import {
  53. bossOrderList
  54. } from "@/common/api.js"
  55. export default {
  56. components: {
  57. },
  58. data() {
  59. return {
  60. current: 0,
  61. nav: [{
  62. name: '全部',
  63. },
  64. {
  65. name: '待聘用',
  66. },
  67. {
  68. name: '已接单',
  69. },
  70. {
  71. name: '进行中',
  72. },
  73. {
  74. name: '试工完成',
  75. },
  76. {
  77. name: '企业确认',
  78. },
  79. {
  80. name: '已支付',
  81. },
  82. {
  83. name: '已完成',
  84. },
  85. {
  86. name: '已取消',
  87. },
  88. {
  89. name: '发起支付',
  90. }
  91. ],
  92. list: [],
  93. orderStatus: "",
  94. pageNo: 1,
  95. pageSize: 20,
  96. }
  97. },
  98. computed: {
  99. getOrderStatus() {
  100. return function(status) {
  101. let text = ''
  102. switch (status) {
  103. case 0:
  104. text = "待聘用"
  105. break;
  106. case 1:
  107. text = "已接单"
  108. break;
  109. case 2:
  110. text = "进行中"
  111. break;
  112. case 3:
  113. text = "试工完成"
  114. break;
  115. case 4:
  116. text = "企业确认"
  117. break;
  118. case 5:
  119. text = "已支付"
  120. break;
  121. case 6:
  122. text = "已完成"
  123. break;
  124. case 7:
  125. text = "已取消"
  126. break;
  127. case 8:
  128. text = "发起支付"
  129. break;
  130. }
  131. return text;
  132. }
  133. }
  134. },
  135. mounted() {
  136. this.onOrder();
  137. },
  138. methods: {
  139. onOrder(selectNew) {
  140. let that = this;
  141. let params = {
  142. orderStatus: that.orderStatus,
  143. pageNo: that.pageNo,
  144. pageSize: that.pageSize
  145. }
  146. bossOrderList(params).then(response => {
  147. const {
  148. code,
  149. result
  150. } = response
  151. if (code === 200) {
  152. if (selectNew) {
  153. this.list = response.result.records
  154. } else {
  155. this.list = [...this.list, ...response.result.records]
  156. }
  157. }
  158. }).catch(error => {
  159. })
  160. },
  161. handleChangeTab(item) {
  162. const {
  163. index
  164. } = item
  165. this.current = index
  166. this.orderStatus = index === 0 ? "" : index - 1
  167. this.pageNo = 1
  168. this.onOrder(true)
  169. },
  170. },
  171. onReachBottom() {
  172. console.log("触底加载")
  173. }
  174. }
  175. </script>
  176. <style scoped lang="scss">
  177. .po-r {
  178. position: relative;
  179. }
  180. .contact {
  181. width: 160rpx;
  182. height: 60rpx;
  183. position: absolute;
  184. left: 0;
  185. top: 0;
  186. opacity: 0;
  187. }
  188. </style>