index.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <template>
  2. <div class="secureselftest">
  3. <div class="toReadItem" v-for="item in msgList" @tap="showDialog(item)" >
  4. <div class="readTitle">【{{item.type}}】</div>
  5. <div class="readInfo">{{item.info}}</div>
  6. <div class="readTime">2024-04-25 09:00</div>
  7. </div>
  8. <van-dialog
  9. use-slot
  10. title="消息提醒"
  11. :show="show"
  12. :show-cancel-button="false"
  13. confirm-button-text="我知道了"
  14. confirm-button-color="rgba(87, 107, 149, 1)"
  15. @confirm="confirm"
  16. width="640rpx"
  17. >
  18. <div class="dialogBox">
  19. <div class="dialogInfoTitle">XXXXSSSSSXX企业名称XXXX企业的合同即将到期,请尽快续约。</div>
  20. <div class="dialogInfo">
  21. <div class="infoRow">
  22. <span class="infoTitle">合同编号:</span>
  23. <span class="infoMsg">HT20240514</span>
  24. </div>
  25. <div class="infoRow">
  26. <span class="infoTitle">关联载体:</span>
  27. <span class="infoMsg"></span>
  28. </div>
  29. <div class="infoRow">
  30. <span class="infoTitle">合同起止日期:</span>
  31. <span class="infoMsg">2023/01/01 ~ 2024/12/30</span>
  32. </div>
  33. </div>
  34. </div>
  35. </van-dialog>
  36. </div>
  37. </template>
  38. <script>
  39. export default {
  40. data(){
  41. return{
  42. msgList:[
  43. {type:'合同到期提醒',info:'xxxxsssSSXX企业名称XXXX企业的合同即将到期请尽快续约.'}
  44. ],
  45. show:false
  46. }
  47. },
  48. methods:{
  49. showDialog(item){
  50. if (item.type === '合同到期提醒'){
  51. this.show = true
  52. }
  53. },
  54. confirm(){
  55. }
  56. }
  57. }
  58. </script>
  59. <style lang="scss">
  60. .secureselftest{
  61. .toReadItem{
  62. margin-top: 24rpx;
  63. margin-left: 32rpx;
  64. display: flex;
  65. flex-direction: column;
  66. background: white;
  67. width: 686rpx;
  68. padding: 32rpx;
  69. box-sizing: border-box;
  70. border-radius: 16rpx;
  71. .readTitle{
  72. color: rgba(3, 101, 249, 1);
  73. font-size: 28rpx;
  74. }
  75. .readInfo{
  76. color: rgba(51, 51, 51, 1);
  77. font-size: 28rpx;
  78. line-height: 42rpx;
  79. padding: 16rpx 0;
  80. }
  81. .readTime{
  82. color: rgba(102, 102, 102, 1);
  83. font-size: 28rpx;
  84. }
  85. }
  86. .dialogBox{
  87. padding: 36rpx 24rpx;
  88. .dialogInfoTitle{
  89. color:rgba(53, 53, 53, 1);
  90. font-size: 32rpx;
  91. line-height: 48rpx;
  92. margin-bottom: 32rpx;
  93. }
  94. .dialogInfo{
  95. background: rgba(245, 247, 250, 1);
  96. border-radius: 8rpx;
  97. width: 592rpx;
  98. padding: 20rpx 16rpx;
  99. box-sizing: border-box;
  100. .infoRow{
  101. display: flex;
  102. align-items: center;
  103. line-height: 50rpx;
  104. }
  105. .infoTitle{
  106. width: 196rpx;
  107. font-size: 28rpx;
  108. color: rgba(51, 51, 51, 1);
  109. }
  110. .infoMsg{
  111. color:rgba(102, 102, 102, 1);
  112. font-size: 28rpx;
  113. }
  114. }
  115. }
  116. }
  117. </style>