特易招,招聘小程序
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.

156 lines
3.0 KiB

4 months ago
7 months ago
4 months ago
4 months ago
7 months ago
7 months ago
4 months ago
7 months ago
4 months ago
7 months ago
7 months ago
7 months ago
7 months ago
5 months ago
7 months ago
5 months ago
7 months ago
5 months ago
4 months ago
7 months ago
7 months ago
  1. <template>
  2. <!-- 电子合同 -->
  3. <view>
  4. <navbar title="电子合同"
  5. leftClick
  6. @leftClick="$utils.navigateBack"/>
  7. <view class="">
  8. <uv-tabs :list="tabs"
  9. lineColor="#3796F8"
  10. lineHeight="8rpx"
  11. lineWidth="50rpx"
  12. :scrollable="false"
  13. @click="clickTabs"></uv-tabs>
  14. </view>
  15. <view class="content">
  16. <view class="projectContent"
  17. v-for="(item, index) in list"
  18. @click="showPDF(item)"
  19. :key="index">
  20. <image src="/static/image/contract/contract.png" mode="aspectFill"/>
  21. <view class="itemList">
  22. <view class="projectName">
  23. <!-- xxxx电子合同 -->
  24. {{ item.title }}
  25. </view>
  26. <view class="buyer">
  27. <!-- 甲方湖南瀚海科技有限公司 -->
  28. 甲方{{ item.companyName }}
  29. </view>
  30. <view class="seller">
  31. <!-- 乙方四川特能博世科技有限公司 -->
  32. 乙方{{ item.employeeName }}
  33. </view>
  34. </view>
  35. <view class="run">
  36. <uv-icon
  37. name="arrow-right"
  38. color="#2979ff"
  39. size="30rpx"></uv-icon>
  40. </view>
  41. </view>
  42. </view>
  43. </view>
  44. </template>
  45. <script>
  46. import mixinList from '@/mixins/list.js'
  47. import { mapState } from 'vuex'
  48. export default {
  49. mixins : [mixinList],
  50. data() {
  51. return {
  52. tabs: [
  53. {
  54. name: '全部合同'
  55. },
  56. {
  57. name: '待我签署'
  58. },
  59. {
  60. name: '他人签署'
  61. },
  62. {
  63. name: '签约完成'
  64. },
  65. ],
  66. type : 0,
  67. mixinsListApi : 'queryContractList',
  68. }
  69. },
  70. computed : {
  71. },
  72. onLoad() {
  73. this.queryParams.role = this.role ? 1 : 0
  74. },
  75. methods: {
  76. clickTabs({index}) {
  77. this.type = index
  78. this.getData()
  79. },
  80. showPDF(item){
  81. this.$utils.
  82. navigateTo('/pages_order/contract/contractDetail?id='
  83. + item.id)
  84. // uni.showModal({
  85. // title: '签署前请熟知合同内容!',
  86. // cancelText: '已知晓',
  87. // confirmText: '查看内容',
  88. // success : e => {
  89. // if(e.confirm){
  90. // uni.downloadFile({
  91. // url : item.contract,
  92. // success : res => {
  93. // uni.openDocument({
  94. // filePath: res.tempFilePath,
  95. // })
  96. // }
  97. // })
  98. // }else{
  99. // this.$utils.
  100. // navigateTo('/pages_order/contract/contractDetail?id='
  101. // + item.id)
  102. // }
  103. // }
  104. // })
  105. },
  106. }
  107. }
  108. </script>
  109. <style scoped lang="scss">
  110. .content {
  111. width: 100%;
  112. height: 100%;
  113. .projectContent {
  114. background-color: #fff;
  115. display: flex;
  116. margin: 30rpx;
  117. border-radius: 20rpx;
  118. image {
  119. width: 140rpx;
  120. height: 120rpx;
  121. margin: 20rpx;
  122. }
  123. .itemList {
  124. margin: 28rpx 10rpx;
  125. .projectName {
  126. font-size: 32rpx;
  127. }
  128. .buyer {
  129. font-size: 24rpx;
  130. }
  131. .seller {
  132. font-size: 24rpx;
  133. }
  134. }
  135. .run{
  136. margin: auto;
  137. margin-right: 30rpx;
  138. height: 60rpx;
  139. width: 60rpx;
  140. border-radius: 50%;
  141. border: 1px solid $uni-color;
  142. display: flex;
  143. justify-content: center;
  144. align-items: center;
  145. }
  146. }
  147. }
  148. </style>