Waitsent.vue 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <template>
  2. <div class="container">
  3. <van-search v-model="search" placeholder="请输入批次号" />
  4. <div class="batch">
  5. <div class="batch-top">
  6. <div style="font-size: 16px;">批次号:<span style="font-size: 16px;">ff123</span></div>
  7. <div class="jindu">派送进度 10/15</div>
  8. </div>
  9. <div class="batch-middel">
  10. <div class="batch-middel-text">
  11. <div class="batch-middel-text-style">【xx】运单号:xxxxx</div>
  12. <div class="batch-middel-text-style">收件人:xxx</div>
  13. <div class="batch-middel-text-style">部门:</div>
  14. <div class="batch-middel-text-style">楼层:</div>
  15. <div class="batch-middel-text-style">座位号:</div>
  16. <div style="display: flex;" class="batch-middel-text-style">联系方式:138XXXX1234 <van-button
  17. style="margin-top: -5px; border-radius: 6px;" type="info" size="mini">拨打</van-button></div>
  18. </div>
  19. <div style="display: flex; padding-top: 5px;">
  20. <van-button style="width: 100px; border-radius: 6px;" size="small" type="info"
  21. @click="onReceiving">签收
  22. </van-button>
  23. <van-button style="width: 100px; border-radius: 6px;" size="small" type="danger"
  24. @click="onRetention">设为滞留</van-button>
  25. </div>
  26. </div>
  27. <div class="batch-bottom">
  28. 展开.....
  29. </div>
  30. <!-- 签收 -->
  31. <van-popup v-model="receiving" style="width: 100%; height: 85%;">
  32. <div style="font-size: 20px; text-align: center; ">派件签收</div>
  33. <van-form @submit="onSubmit">
  34. <van-field label="运单号" value="xxx" readonly />
  35. <van-field label="快件类型" value="xxx" readonly />
  36. <van-field label="快递公司" value="xxx" readonly />
  37. <van-field label="部门" value="xxx" readonly />
  38. <van-field label="座位号" value="xxx" readonly />
  39. <van-field label="收件人" value="xxx" readonly />
  40. <van-field label="楼层" value="xxx" readonly />
  41. <van-field label="联系方式" value="xxx" readonly />
  42. <van-field readonly clickable name="picker" :value="selectedOption" label="签收类型"
  43. placeholder="点击签收类型" @click="showPicker = true" />
  44. <van-popup v-model="showPicker" position="bottom">
  45. <van-picker show-toolbar :columns="options" @confirm="onConfirm" @cancel="showPicker = false" />
  46. </van-popup>
  47. <van-field name="uploader" label="签收照片">
  48. <template #input>
  49. <van-uploader v-model="uploader" />
  50. </template>
  51. </van-field>
  52. <van-field v-if="wer == '他人签收'" v-model="qwe" label="代取手机号" placeholder="请输入代取手机号" />
  53. <div style="margin: 16px;">
  54. <van-button round block type="info" native-type="submit">签收完成</van-button>
  55. </div>
  56. </van-form>
  57. </van-popup>
  58. <!-- 设为滞留 -->
  59. <van-popup v-model="retention" style="width: 100%; height: 60%;">内容</van-popup>
  60. </div>
  61. </div>
  62. </template>
  63. <script>
  64. export default {
  65. name: 'waitsent',
  66. data() {
  67. return {
  68. qwe:'',
  69. search: '',
  70. receiving: false,//签收
  71. retention: false,//滞留
  72. selectedOption: '', // 设置为空字符串,等待选择
  73. value: '',
  74. options: ['本人签收', '他人签收'],
  75. showPicker: false,
  76. wer:'',
  77. uploader: [{ url: 'https://img01.yzcdn.cn/vant/leaf.jpg' }],
  78. };
  79. },
  80. methods: {
  81. // 签收
  82. onReceiving() {
  83. this.receiving = true;
  84. this.selectedOption = this.options[0];
  85. },
  86. // 滞留
  87. onRetention() {
  88. this.retention = true;
  89. },
  90. onConfirm(value) {
  91. this.selectedOption = value;
  92. this.showPicker = false;
  93. this.wer = value
  94. console.log(value,'123')
  95. },
  96. // 签收完成
  97. onSubmit() {
  98. }
  99. },
  100. mounted() {
  101. this.selectedOption = this.options[0]; // 默认选择第一个选项
  102. }
  103. };
  104. </script>
  105. <style lang="less" scoped>
  106. * {
  107. font-size: 12px;
  108. }
  109. .batch {
  110. background-color: #fff;
  111. margin: 10px;
  112. &-top {
  113. display: flex;
  114. justify-content: space-between;
  115. align-items: center;
  116. padding: 10px 0 6px 0;
  117. .jindu {
  118. color: #169bd5
  119. }
  120. }
  121. &-middel {
  122. height: 120px;
  123. background-color: #f2f2f2;
  124. border-radius: 12px;
  125. margin: 0 6px;
  126. &-text {
  127. display: flex;
  128. flex-wrap: wrap;
  129. &-style {
  130. width: 165px;
  131. margin-top: 10px;
  132. }
  133. }
  134. }
  135. &-bottom {
  136. padding: 14px 4px;
  137. color: #169bd5;
  138. }
  139. }
  140. </style>