time.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <template>
  2. <div class="c_box">
  3. <div class="choice_box">
  4. <div class="title" style="display: flex;align-items: center;">
  5. <span class="g_t_index" style="min-width: fit-content;">{{ tindex + 1}}</span>
  6. <span>{{ checkJson.title }}</span>
  7. </div>
  8. <div class="detail" v-if="checkJson.detail" v-html="checkJson.detail"
  9. style="color: #00000066;margin-top: 5px;">
  10. </div>
  11. <div style="margin-top: 10px;" class="datePicker">
  12. <el-date-picker
  13. :readonly="checktype == 2"
  14. v-model="checkJson.answer2"
  15. type="date"
  16. format="yyyy 年 MM 月 dd 日"
  17. value-format="yyyy年MM月dd日"
  18. placeholder="年/月/日 (请选择日期)">
  19. </el-date-picker>
  20. </div>
  21. </div>
  22. </div>
  23. </template>
  24. <script>
  25. export default {
  26. props: {
  27. tindex: {
  28. type: Number
  29. },
  30. cJson: {
  31. type: Object,
  32. },
  33. checktype: {
  34. type: Number,
  35. default: 1
  36. },
  37. see: {
  38. type: Boolean,
  39. default: false
  40. }
  41. },
  42. data() {
  43. return {
  44. option: {
  45. 1: { name: '附件' },
  46. },
  47. userid: this.$route.query.userid,
  48. checkJson: undefined,
  49. progress: 0,
  50. isFinishSize: 0,
  51. proVisible: false,
  52. isAllSize: 0,
  53. wurl: "",
  54. isTong: false
  55. }
  56. },
  57. watch: {
  58. checkJson: {
  59. handler(newValue) {
  60. this.$emit('update:cJson', newValue)
  61. },
  62. deep: true
  63. },
  64. },
  65. methods: {
  66. depthCopy(s) {
  67. return JSON.parse(JSON.stringify(s));
  68. },
  69. },
  70. mounted() {
  71. this.checkJson = this.cJson ? this.depthCopy(this.cJson) : undefined
  72. }
  73. }
  74. </script>
  75. <style scoped>
  76. .c_box {
  77. width: 100%;
  78. position: relative;
  79. overflow: unset;
  80. padding-left: 45px;
  81. }
  82. /* .mask {
  83. position: absolute;
  84. height: 100%;
  85. width: 100%;
  86. z-index: 2;
  87. } */
  88. .choice_box {
  89. white-space: pre-line;
  90. }
  91. .choice_box>.title {
  92. font-weight: bold;
  93. width: 100%;
  94. word-break: break-all;
  95. }
  96. .g_t_index{
  97. color: #3681FC;
  98. font-size: 28px;
  99. font-weight: bold;
  100. position: relative;
  101. margin-right: 30px;
  102. margin-left: -40px;
  103. }
  104. .g_t_index+span{
  105. font-weight: bold;
  106. font-size: 18px;
  107. }
  108. .g_t_index::after{
  109. content: "";
  110. width: 18px;
  111. height: 2px;
  112. position: absolute;
  113. right: -18px;
  114. top: 50%;
  115. transform: translateY(-50%);
  116. background: #3681FC;
  117. }
  118. .g_t_index::before{
  119. content: "";
  120. width: 6px;
  121. height: 6px;
  122. border-right: 2px solid #3681FC;
  123. border-top: 2px solid #3681FC;
  124. position: absolute;
  125. right: -15px;
  126. top: 50%;
  127. transform: rotate(45deg) translateY(-5px);
  128. }
  129. .datePicker>>>.el-date-editor{
  130. width: 100%;
  131. }
  132. .datePicker>>>.el-input__inner{
  133. border: none;
  134. outline: none;
  135. font-size: 16px;
  136. border-bottom: solid 1px #E7E7E7;
  137. }
  138. </style>