index.vue 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274
  1. <template>
  2. <div class="station">
  3. <div class="station-head">
  4. <div class="station-head-title">运单基本信息</div>
  5. <div class="station-head-content flex">
  6. <div v-for="item in dataInfo" :key="item.id">{{item.name}}:{{item.value}}</div>
  7. </div>
  8. </div>
  9. <div class="station-status flex">
  10. <div class="station-status-info flex-wrap">
  11. <div class="manageTitle">运单跟踪信息</div>
  12. <div class="status">正常</div>
  13. </div>
  14. <div class="station-status-search">
  15. <Search @clear="clear" @search="search" />
  16. </div>
  17. </div>
  18. <div class="station-list flex-wrap">
  19. <div class="station-list-left">
  20. <div class="title flex-wrap">
  21. <div class="title-list">航班号CA1001</div>
  22. <div class="title-list">出港: 深圳机场</div>
  23. <div class="title-list">日期:2022/09/10</div>
  24. </div>
  25. <Steps :datas="datas1" />
  26. </div>
  27. <div class="station-list-right">
  28. <div class="title flex-wrap">
  29. <div class="title-list">出港: 深圳机场</div>
  30. <div class="title-list">日期:2022/09/10</div>
  31. </div>
  32. <Steps :datas="datas" />
  33. </div>
  34. </div>
  35. <div class="station-list flex-wrap">
  36. <div class="station-list-left">
  37. <div class="title flex-wrap">
  38. <div class="title-list">航班号CA1001</div>
  39. <div class="title-list">出港: 深圳机场</div>
  40. <div class="title-list">日期:2022/09/10</div>
  41. </div>
  42. <Steps :datas="datas1" />
  43. </div>
  44. <div class="station-list-right">
  45. <div class="title flex-wrap">
  46. <div class="title-list">出港: 深圳机场</div>
  47. <div class="title-list">日期:2022/09/10</div>
  48. </div>
  49. <Steps :datas="datas" />
  50. </div>
  51. </div>
  52. <div class="station-table">
  53. <Table :tableHeader="tableHeader" :tableData="tableData" />
  54. </div>
  55. </div>
  56. </template>
  57. <script setup lang="ts">
  58. import Search from "@/components/search/index.vue";
  59. import Steps from "@/components/steps/index.vue";
  60. import Table from "@/components/tableTemp/index.vue";
  61. import { ElMessage } from "element-plus";
  62. const dataInfo = [
  63. {
  64. id: 1,
  65. name: "运单",
  66. value: "FA56888829",
  67. },
  68. {
  69. id: 2,
  70. name: "货代公司",
  71. value: "深圳市联运通货有限公司",
  72. },
  73. {
  74. id: 3,
  75. name: "品名",
  76. value: "电路板、手机外壳",
  77. },
  78. {
  79. id: 4,
  80. name: "特货信息",
  81. value: "特",
  82. },
  83. {
  84. id: 5,
  85. name: "始发机场",
  86. value: "SZX",
  87. },
  88. {
  89. id: 6,
  90. name: "目的机场",
  91. value: "CTU",
  92. },
  93. {
  94. id: 7,
  95. name: "货物数量",
  96. value: "7件",
  97. },
  98. {
  99. id: 8,
  100. name: "货物总重",
  101. value: "82KG",
  102. },
  103. ];
  104. const datas = [
  105. {
  106. id: 1,
  107. name: "收货核单",
  108. flag: true,
  109. labelWidth: 100,
  110. children: ["A32", "534件", "通过", "10:25"],
  111. },
  112. {
  113. id: 2,
  114. name: "安检",
  115. flag: true,
  116. children: ["A32", "534件", "通过", "10:25"],
  117. },
  118. {
  119. id: 3,
  120. name: "安检",
  121. flag: true,
  122. children: ["A32", "534件", "通过", "10:25"],
  123. },
  124. {
  125. id: 4,
  126. name: "安检",
  127. flag: true,
  128. children: ["A32", "534件", "通过", "10:25"],
  129. },
  130. {
  131. id: 5,
  132. name: "安检",
  133. flag: true,
  134. children: ["A32", "534件", "通过", "10:25"],
  135. },
  136. {
  137. id: 6,
  138. name: "安检",
  139. flag: false,
  140. children: ["A32", "534件", "通过", "10:25"],
  141. },
  142. {
  143. id: 7,
  144. name: "安检安检",
  145. flag: false,
  146. labelWidth: 100,
  147. children: ["A32", "534件", "通过", "10:25"],
  148. },
  149. ];
  150. const datas1 = [
  151. {
  152. id: 1,
  153. name: "收货核单",
  154. flag: true,
  155. labelWidth: 100,
  156. children: ["A32", "534件", "通过", "10:25"],
  157. },
  158. {
  159. id: 2,
  160. name: "安检",
  161. flag: true,
  162. children: ["A32", "534件", "通过", "10:25"],
  163. },
  164. {
  165. id: 3,
  166. name: "安检",
  167. flag: true,
  168. children: ["A32", "534件", "通过", "10:25"],
  169. },
  170. {
  171. id: 4,
  172. name: "安检",
  173. flag: false,
  174. children: ["A32", "534件", "通过", "10:25"],
  175. },
  176. ];
  177. const tableHeader = [
  178. { label: "账号组名称", key: "appName" },
  179. { label: "账号组描述", key: "appDesc", lableClass: "scoreColumn" },
  180. { label: "appId", key: "appId" },
  181. ];
  182. const tableData = [
  183. {
  184. id: 1,
  185. appName: "11",
  186. appId: "22",
  187. appDesc: "33",
  188. },
  189. {
  190. id: 2,
  191. appName: "11",
  192. appId: "22",
  193. appDesc: "33",
  194. },
  195. {
  196. id: 3,
  197. appName: "11",
  198. appId: "22",
  199. appDesc: "33",
  200. },
  201. {
  202. id: 4,
  203. appName: "11",
  204. appId: "22",
  205. appDesc: "33",
  206. },
  207. ];
  208. const search = (val) => {
  209. ElMessage.success(`搜索成功:${val}`);
  210. };
  211. const clear = () => {
  212. ElMessage.success(`清除`);
  213. };
  214. </script>
  215. <style lang="scss" scoped>
  216. .station {
  217. &-head {
  218. height: 144px;
  219. background: #410425;
  220. padding: 24px 30px;
  221. color: #ffffff;
  222. &-title {
  223. font-size: 18px;
  224. font-family: Microsoft YaHei;
  225. font-weight: bold;
  226. margin-bottom: 40px;
  227. }
  228. }
  229. &-status {
  230. margin: 24px 0;
  231. line-height: 32px;
  232. .status {
  233. font-size: 16px;
  234. font-family: Microsoft YaHei;
  235. font-weight: bold;
  236. color: #519f6b;
  237. }
  238. }
  239. &-list {
  240. margin-bottom: 8px;
  241. &:last-child {
  242. margin-bottom: 0;
  243. }
  244. .title {
  245. font-size: 16px;
  246. font-family: Microsoft YaHei;
  247. font-weight: bold;
  248. color: #101116;
  249. margin-bottom: 28px;
  250. &-list {
  251. margin-right: 50px;
  252. }
  253. }
  254. &-left {
  255. background: #ffffff;
  256. padding: 24px 24px 12px 24px;
  257. flex: 1;
  258. margin-right: 8px;
  259. }
  260. &-right {
  261. width: 1090px;
  262. background: #ffffff;
  263. padding: 24px 24px 12px 24px;
  264. }
  265. }
  266. :deep &-table {
  267. .scoreColumn {
  268. background: #eef3d6;
  269. }
  270. }
  271. }
  272. </style>