铝交易,微信公众号
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.

417 lines
9.0 KiB

7 months ago
  1. <template>
  2. <view class="page">
  3. <navbar :title="$t('other.OrderInfo')" leftClick @leftClick="$utils.navigateBack"/>
  4. <view class="info">
  5. <view class="flex">
  6. <!--订单基本信息-->
  7. <view class="server-item">
  8. <view class="img-box">
  9. <img :src="orderInfo.pic" style="width: 100%;height: 100%;"/>
  10. </view>
  11. <view class="server-info">
  12. <view class="server-title">
  13. {{ $t('other.aluminumProducts') }}
  14. </view>
  15. <view class="current-price">
  16. <text class="unit">{{ $t('components.productSpecification') }}</text>
  17. <text class="text"> {{ $t('other.specification') }}</text>
  18. </view>
  19. <view class="sales-volume" style="margin-top: 5px;">
  20. <view class="desc"> {{ $t('other.pickupDate') }}{{ orderInfo.takeTime }}</view>
  21. </view>
  22. </view>
  23. </view>
  24. <!--收货地址-->
  25. <view class="line address">
  26. <view class="address-top">
  27. <view class="">
  28. {{ $t('components.shippingAddress') }}
  29. </view>
  30. <view class="copy">
  31. <img src="../static/order/copy.png"
  32. style="width:40rpx;height:40rpx;"
  33. @click="$utils.copyText('1')">
  34. </view>
  35. </view>
  36. <view class="addressDetail">
  37. <view class="">{{ orderInfo.userName }}&nbsp;&nbsp;&nbsp; {{ orderInfo.phone }}</view>
  38. <view class="">
  39. {{ orderInfo.address }}
  40. </view>
  41. </view>
  42. </view>
  43. <!-- 订单信息 -->
  44. <view class="line">
  45. <view class="t min_tips">
  46. <view class="">
  47. {{ $t('components.orderInfo') }}
  48. </view>
  49. </view>
  50. <view class="min_tips">
  51. <view class="">
  52. {{ $t('components.orderNumber') }}
  53. </view>
  54. <view class="">
  55. {{ orderInfo.id }}
  56. </view>
  57. </view>
  58. <view class="min_tips">
  59. <view class="">
  60. {{ $t('components.orderTime') }}
  61. </view>
  62. <view class="">
  63. {{ orderInfo.createTime }}
  64. </view>
  65. </view>
  66. </view>
  67. <!--&lt;!&ndash; 下单须知 &ndash;&gt;-->
  68. <!--<view class="line">-->
  69. <!-- <view class="t min_tips">-->
  70. <!-- <view class="">-->
  71. <!-- {{ $t('components.orderNotice') }}-->
  72. <!-- </view>-->
  73. <!-- </view>-->
  74. <!-- <view class="xdxz" style="line-height: 40rpx;">-->
  75. <!-- &lt;!&ndash;<uv-parse :content="content"></uv-parse>&ndash;&gt;-->
  76. <!-- <view>1. 请您在收货时间前15分钟内到货否则将视为放弃挂单</view>-->
  77. <!-- <view>2. 请您在收货地址提供的手机号码收到货物</view>-->
  78. <!-- </view>-->
  79. <!--</view>-->
  80. </view>
  81. </view>
  82. <!-- 联系客服弹框 -->
  83. <customerServicePopup ref="customerServicePopup"/>
  84. </view>
  85. </template>
  86. <script>
  87. import customerServicePopup from "@/components/config/customerServicePopup.vue";
  88. export default {
  89. name: "orderDetail2",
  90. components: {customerServicePopup},
  91. onLoad(options) {
  92. if (options.orderInfo) {
  93. this.orderInfo = JSON.parse(decodeURIComponent(options.orderInfo));
  94. console.log(this.orderInfo, "解析后的订单数据"); // 解析后的订单数据
  95. }
  96. },
  97. data() {
  98. return {
  99. orderInfo: {},
  100. }
  101. },
  102. onShow() {
  103. // this.queryOrderInfo()
  104. },
  105. methods: {
  106. // 采购商根据订单id查询订单信息
  107. queryOrderInfo() {
  108. this.$api('getMyOrderInfo', this.orderId, res => {
  109. console.log(res, "订单信息")
  110. this.orderInfo = res.result
  111. })
  112. },
  113. },
  114. }
  115. </script>
  116. <style lang="scss" scoped>
  117. .page {
  118. .info {
  119. margin: 10px;
  120. padding: 20rpx;
  121. background-color: #fff;
  122. width: calc(100% - 40px);
  123. border-radius: 10px;
  124. .head-title {
  125. font-family: PingFang SC, PingFang SC-Bold;
  126. color: #2f2e2e;
  127. line-height: 30rpx;
  128. margin-left: 10rpx;
  129. }
  130. .server-item {
  131. display: flex;
  132. flex-wrap: wrap;
  133. align-items: center;
  134. justify-content: space-between;
  135. background: white;
  136. border-radius: 15rpx;
  137. box-sizing: border-box;
  138. margin: 20rpx 0rpx;
  139. width: 100%;
  140. .img-box {
  141. width: 150rpx;
  142. height: 150rpx;
  143. border-radius: 10rpx;
  144. overflow: hidden;
  145. image {
  146. width: 100%;
  147. height: 100%;
  148. }
  149. }
  150. .server-info {
  151. display: flex;
  152. flex-direction: column;
  153. justify-content: space-around;
  154. width: calc(100% - 180rpx);
  155. box-sizing: border-box;
  156. padding: 10rpx 15rpx;
  157. .server-title {
  158. display: flex;
  159. margin-bottom: 10rpx;
  160. }
  161. .coupon {
  162. display: flex;
  163. justify-content: center;
  164. align-items: center;
  165. background: #F29E45;
  166. color: white;
  167. width: 120rpx;
  168. height: 40rpx;
  169. border-radius: 10rpx;
  170. margin-left: 10rpx;
  171. font-size: 22rpx;
  172. }
  173. .time-coupon,
  174. .price {
  175. display: flex;
  176. flex-wrap: wrap;
  177. align-items: center;
  178. }
  179. .time-coupon {
  180. margin: 10rpx 0rpx;
  181. font-size: 26rpx;
  182. justify-content: space-between;
  183. width: 100%;
  184. .flex {
  185. justify-content: center;
  186. align-items: center;
  187. }
  188. image {
  189. width: 25rpx;
  190. height: 25rpx;
  191. }
  192. .time {
  193. color: #B8B8B8;
  194. margin-left: 6rpx;
  195. }
  196. }
  197. .sales-volume {
  198. display: flex;
  199. align-items: center;
  200. color: #B8B8B8;
  201. font-size: 24rpx;
  202. image {
  203. width: 25rpx;
  204. height: 25rpx;
  205. }
  206. }
  207. }
  208. }
  209. .address {
  210. .address-top {
  211. display: flex;
  212. justify-content: space-between;
  213. align-items: center;
  214. image {
  215. width: 30rpx;
  216. height: 30rpx;
  217. }
  218. }
  219. .addressDetail {
  220. color: #777;
  221. font-size: 26rpx;
  222. padding: 5px 0;
  223. }
  224. text {
  225. background-color: #F29E45;
  226. padding: 8rpx 10rpx;
  227. color: #fff;
  228. font-size: 20rpx;
  229. margin-left: 10px;
  230. border-radius: 5px;
  231. }
  232. }
  233. .min_tips {
  234. font-size: 22rpx;
  235. color: #777;
  236. display: flex;
  237. justify-content: space-between;
  238. padding: 5px 0;
  239. align-items: center;
  240. }
  241. .btns {
  242. display: flex;
  243. justify-content: center;
  244. align-items: center;
  245. gap: 40rpx;
  246. .oneBtn {
  247. display: flex;
  248. align-items: center;
  249. justify-content: center;
  250. width: 40%;
  251. height: 70rpx;
  252. padding: 10rpx;
  253. border-radius: 40rpx;
  254. color: white;
  255. font-size: 28rpx;
  256. margin: 20rpx 10rpx 0 0;
  257. background: #293143;
  258. //margin-top: 20rpx;
  259. border-radius: 40rpx;
  260. }
  261. .twoBtn {
  262. display: flex;
  263. align-items: center;
  264. justify-content: center;
  265. width: 40%;
  266. height: 70rpx;
  267. padding: 10rpx;
  268. border-radius: 40rpx;
  269. color: #000000;
  270. font-size: 28rpx;
  271. margin: 20rpx 10rpx 0 0;
  272. background: #f2f2f2;
  273. //margin-top: 20rpx;
  274. border-radius: 40rpx;
  275. }
  276. }
  277. .xdxz {
  278. font-size: 24rpx;
  279. color: #777;
  280. line-height: 30rpx;
  281. }
  282. .current-price {
  283. font-size: 24rpx;
  284. color: #8c8888;
  285. .unit {
  286. }
  287. .text {
  288. }
  289. }
  290. .line {
  291. border-top: 2px dotted #00000011;
  292. padding: 20rpx 0;
  293. .t {
  294. padding: 5px 0;
  295. color: #000;
  296. font-size: 26rpx;
  297. }
  298. }
  299. .head-div {
  300. .nickname {
  301. font-size: 30rpx;
  302. font-weight: 600;
  303. text-align: left;
  304. line-height: 42rpx;
  305. display: flex;
  306. align-items: center;
  307. .tag {
  308. position: relative;
  309. display: flex;
  310. align-items: center;
  311. image {
  312. height: 45rpx;
  313. width: 90rpx;
  314. vertical-align: middle;
  315. }
  316. .auth {
  317. position: absolute;
  318. white-space: nowrap;
  319. color: $uni-color;
  320. left: 23rpx;
  321. font-size: 17rpx;
  322. }
  323. }
  324. }
  325. .days {
  326. font-size: 20rpx;
  327. font-weight: 400;
  328. text-align: left;
  329. line-height: 56rpx;
  330. display: flex;
  331. align-items: center;
  332. view {
  333. padding-left: 5px;
  334. }
  335. }
  336. }
  337. .btn-x {
  338. color: $uni-color;
  339. border: 1px solid $uni-color;
  340. padding: 10rpx 20rpx;
  341. border-radius: 30rpx;
  342. }
  343. .btns {
  344. display: flex;
  345. justify-content: center;
  346. .btn {
  347. color: $uni-color;
  348. border: 1px solid $uni-color;
  349. padding: 10rpx 20rpx;
  350. border-radius: 30rpx;
  351. }
  352. }
  353. }
  354. }
  355. </style>