uni-events-helper-wx
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.

327 lines
7.4 KiB

3 years ago
  1. <template>
  2. <view class="content flex_col flex_start">
  3. <view class="head flex_row flex_around">
  4. <view class="tap-btn" :class="[getTabClass(e)]" @click="clickHead(i)" v-for="(e,i) in headDate" :key="i">
  5. {{e.name}}
  6. </view>
  7. </view>
  8. <!-- item -->
  9. <view class="item flex_col flex_start_y bg-white " v-for="i in 2">
  10. <view class="title flex_row flex_start">
  11. <view class="text-m text-left">消息中心</view>
  12. <!-- <view class="bandage"></view> -->
  13. </view>
  14. <view class="info flex_row flex_between">
  15. <view class="time">2020.06.22</view>
  16. <view class="type">半决赛</view>
  17. </view>
  18. <view class="card flex_row flex_between">
  19. <view class="persion flex_row">
  20. <image class="bg-brown" src="../../static/images/event/event_lock.png" mode=""></image>
  21. <text>adjksk</text>
  22. </view>
  23. <view class="btn-box flex_row">
  24. <view class="btn state-0 flex_row">已打分</view>
  25. <view class="btn state-1 flex_row" @click="openGrade()">打分</view>
  26. <view class="btn state-2 flex_row" @click="openGradeMore()">数据</view>
  27. </view>
  28. </view>
  29. </view>
  30. <!-- 弹出交互 uview popup有bug,废弃重写-->
  31. <!-- <u-popup :show="showGrade" @close="close" @open="open" mode="center" :closeOnClickOverlay="true" :closeable="true" :round="10">
  32. <view class="grade flex_col flex_start" >
  33. <text class="g-title">赛事打分</text>
  34. <text class="g-txt">李静分数录入</text>
  35. <input type="text" value="" placeholder="请录入分数" />
  36. <view class="g-tip">请输入成员该赛程最终得分非累计</view>
  37. <view class="g-btn flex_row">保存</view>
  38. </view>
  39. </u-popup> -->
  40. <!-- 打分弹出 -->
  41. <view class="overlay flex_col" v-if="showGrade">
  42. <view class="grade flex_col flex_start" >
  43. <image class="g-close" src="../../static/images/event/event_close.png" mode="" @click="closeGrade()"></image>
  44. <text class="g-title">赛事打分</text>
  45. <text class="g-txt">李静分数录入</text>
  46. <input type="text" value="" placeholder="请录入分数" placeholder-class="place-style"/>
  47. <view class="g-tip">请输入成员该赛程最终得分非累计</view>
  48. <view class="g-btn flex_row" @click="closeGrade()">保存</view>
  49. </view>
  50. </view>
  51. <!-- 赛事数据弹出 -->
  52. <view class="overlay flex_col" v-if="showGradeMore">
  53. <view class="grade grade-more flex_col flex_start" >
  54. <image class="g-close" src="../../static/images/event/event_close.png" mode="" @click="closeGradeMore()"></image>
  55. <text class="g-title">入围赛数据</text>
  56. <text class="g-txt">李静分数录入</text>
  57. <view class="g-input-box">
  58. <view class="b-item flex_row">
  59. <text>篮板</text>
  60. <input type="text" value="" placeholder="请录入数据" placeholder-class="place-style"/>
  61. </view>
  62. <view class="b-item flex_row">
  63. <text>助攻</text>
  64. <input type="text" value="" placeholder="请录入数据" placeholder-class="place-style"/>
  65. </view>
  66. <view class="b-item flex_row">
  67. <text>场次</text>
  68. <input type="text" value="" placeholder="请录入数据" placeholder-class="place-style"/>
  69. </view>
  70. </view>
  71. <view class="g-tip">请输入成员该赛程最终得分非累计</view>
  72. <view class="g-btn flex_row" @click="closeGradeMore()">保存</view>
  73. </view>
  74. </view>
  75. <!-- <u-modal :show="showGrade" @confirm="open" ref="uModal" :asyncClose="true" @close="close" :closeOnClickOverlay="true">确认????</u-modal> -->
  76. </view>
  77. </template>
  78. <script>
  79. export default {
  80. data() {
  81. return {
  82. showGrade:false,
  83. showGradeMore:true,
  84. address:"",
  85. headIndex:0,
  86. headDate:[{name:'赛程打分'},{name:'赛事打分'}],
  87. login:true
  88. };
  89. },
  90. computed:{
  91. },
  92. onLoad(parms) {
  93. },
  94. onUnload() {
  95. },
  96. methods: {
  97. openGrade() {
  98. this.showGrade = ! this.showGrade
  99. console.log('open');
  100. },
  101. closeGrade() {
  102. this.showGrade = false
  103. console.log('close');
  104. },
  105. openGradeMore() {
  106. this.showGradeMore = ! this.showGradeMore
  107. console.log('open');
  108. },
  109. closeGradeMore() {
  110. this.showGradeMore = false
  111. console.log('close');
  112. },
  113. getTabClass(item){
  114. let {headDate,headIndex} = this
  115. return headDate[headIndex].name==item.name?'active':''
  116. },
  117. clickHead(index){
  118. this.headIndex = index
  119. },
  120. jumpPage(){
  121. this.$Router.push({name:"login"})
  122. },
  123. }
  124. }
  125. </script>
  126. <style lang="less" scoped>
  127. .content{
  128. .head{
  129. width: 100%;
  130. height: 112rpx;
  131. background-color: white;
  132. .tap-btn{
  133. font-size: 36rpx;
  134. color: #333333;
  135. font-weight: 700;
  136. width: 200rpx;
  137. height: 72rpx;
  138. text-align: center;
  139. line-height: 72rpx;
  140. }
  141. .active{
  142. color: white;
  143. background: #009874;
  144. border-radius: 36rpx;
  145. }
  146. }
  147. .item{
  148. color: #333333;
  149. position: relative;
  150. margin-top: 24rpx;
  151. // border-radius: 10rpx;
  152. width: 750rpx;
  153. // height: 124rpx;
  154. .title{
  155. font-size: 36rpx;
  156. color: #333333;
  157. // margin-bottom: 10rpx;
  158. font-weight: 700;
  159. height: 116rpx;
  160. width: 100%;
  161. padding-left: 60rpx;
  162. border-bottom: 1rpx solid #f2f2f7;
  163. }
  164. .info{
  165. font-weight: 700;
  166. font-size: 32rpx;
  167. color: #333333;
  168. height: 96rpx;
  169. width: 100%;
  170. padding: 26rpx 24rpx 26rpx 60rpx;
  171. border-bottom: 1rpx solid #f2f2f7;
  172. }
  173. .card{
  174. height: 188rpx;
  175. width: 100%;
  176. padding: 40rpx 24rpx 40rpx 50rpx;
  177. border-bottom: 1rpx solid #f2f2f7;
  178. .persion{
  179. > image{
  180. width: 108rpx;
  181. height: 108rpx;
  182. }
  183. > text{
  184. font-size: 32rpx;
  185. color: #333333;
  186. margin-left: 24rpx;
  187. }
  188. }
  189. .btn-box{
  190. .btn{
  191. margin-left: 20rpx;
  192. width: 132rpx;
  193. height: 60rpx;
  194. background: #FF873D;
  195. border-radius: 6rpx;
  196. color: white;
  197. }
  198. .state-0{
  199. background-color: #36C990;
  200. }
  201. .state-1{
  202. background-color: #009874;
  203. }
  204. .state-2{
  205. background-color: #FF873D;
  206. }
  207. }
  208. }
  209. .bandage{
  210. width: 16rpx;
  211. height: 16rpx;
  212. // position: absolute;
  213. // right: 60rpx;
  214. background: #EA5061;
  215. border-radius: 50%;
  216. font-size: 24rpx;
  217. color: white;
  218. text-align: center;
  219. line-height: 34rpx;
  220. margin-top: -16rpx;
  221. margin-left: 10rpx;
  222. }
  223. }
  224. }
  225. .overlay{
  226. position: fixed;
  227. height: 100vh;
  228. width: 100%;
  229. background: rgba(0,0,0,0.6);
  230. z-index: 90;
  231. .grade{
  232. z-index: 999;
  233. width: 620rpx;
  234. // height: 600rpx;
  235. background: #FFFFFF;
  236. padding: 50rpx;
  237. border-radius: 10rpx;
  238. .g-close{
  239. align-self: flex-end;
  240. width: 32rpx;
  241. height: 32rpx;
  242. }
  243. .g-title{
  244. margin-top: 20rpx;
  245. font-size: 32rpx;
  246. color: #333333;
  247. font-weight: 700;
  248. }
  249. .g-txt{
  250. margin: 58rpx auto 12rpx auto;
  251. font-size: 28rpx;
  252. color: #333333;
  253. }
  254. input{
  255. width: 456rpx;
  256. height: 88rpx;
  257. background: #FFFFFF;
  258. border: 2rpx solid #D8D8D8;
  259. border-radius: 10rpx;
  260. padding: 20rpx;
  261. }
  262. .g-tip{
  263. align-self: flex-start;
  264. font-size: 24rpx;
  265. color: #9A9A9D;
  266. margin-top: 10rpx;
  267. margin-bottom: 52rpx;
  268. margin-left: 32rpx;
  269. }
  270. .g-btn{
  271. width: 240rpx;
  272. height: 88rpx;
  273. background: #009874;
  274. border-radius: 10rpx;
  275. font-size: 32rpx;
  276. color: #FFFFFF;
  277. font-weight: 700;
  278. margin-bottom: 34rpx;
  279. }
  280. }
  281. .grade-more{
  282. padding-left:72rpx;
  283. padding-right: 80rpx;
  284. .g-input-box{
  285. .b-item{
  286. margin-top: 20rpx;
  287. > text{
  288. font-size: 28rpx;
  289. color: #9C9C9F;
  290. padding-right: 20rpx;
  291. }
  292. input {
  293. width: 384rpx;
  294. }
  295. }
  296. }
  297. .g-tip{
  298. margin-left: 12rpx;
  299. }
  300. }
  301. .place-style{
  302. font-size: 28rpx;
  303. color: #9A9A9D;
  304. }
  305. }
  306. </style>