zhengquan.bai

物流离境单数据查询

...@@ -117,7 +117,7 @@ export const constantRoutes = [ ...@@ -117,7 +117,7 @@ export const constantRoutes = [
117 { 117 {
118 path: '/exportListDetail', 118 path: '/exportListDetail',
119 component: (resolve) => require(['@/views/exportListDetail/index'], resolve), 119 component: (resolve) => require(['@/views/exportListDetail/index'], resolve),
120 - hidden: false, 120 + hidden: true,
121 meta: { title: '出口清单详情', icon: 'api' }, 121 meta: { title: '出口清单详情', icon: 'api' },
122 }, 122 },
123 { 123 {
...@@ -133,14 +133,29 @@ export const constantRoutes = [ ...@@ -133,14 +133,29 @@ export const constantRoutes = [
133 meta: { title: '出口清单查询', icon: 'dashboard' } 133 meta: { title: '出口清单查询', icon: 'dashboard' }
134 }, 134 },
135 { 135 {
136 - path: 'index', 136 + path: '/listBranchQuery',
137 - component: (resolve) => require(['@/views/index'], resolve), 137 + component: (resolve) => require(['@/views/listBranchQuery/index'], resolve),
138 name: '首页', 138 name: '首页',
139 + hidden: false,
139 meta: { title: '清单总分单查询', icon: 'dashboard' } 140 meta: { title: '清单总分单查询', icon: 'dashboard' }
140 }, 141 },
141 { 142 {
142 - path: 'index', 143 + path: '/listBranchDetail',
143 - component: (resolve) => require(['@/views/index'], resolve), 144 + component: (resolve) => require(['@/views/listBranchDetail/index'], resolve),
145 + name: '首页',
146 + hidden: true,
147 + meta: { title: '清单总分单详情', icon: 'dashboard' }
148 + },
149 + {
150 + path: '/logisticsExitDetail',
151 + component: (resolve) => require(['@/views/logisticsExitDetail/index'], resolve),
152 + name: '首页',
153 + hidden: true,
154 + meta: { title: '物流离境单详情', icon: 'dashboard' }
155 + },
156 + {
157 + path: '/logisticsExitQuery',
158 + component: (resolve) => require(['@/views/logisticsExitQuery/index'], resolve),
144 name: '首页', 159 name: '首页',
145 meta: { title: '物流离境单查询', icon: 'dashboard' } 160 meta: { title: '物流离境单查询', icon: 'dashboard' }
146 }, 161 },
......
1 +<template>
2 + <div class="export-bill-detail">
3 + <h5 class="first-header">
4 + 清单总分单详情
5 + <div class="returnButton" @click="$router.back()">返回</div>
6 + </h5>
7 + <el-form
8 + class="fedexFormStyle fedexformSreach fedexformSreachBottomBorder"
9 + ref="sreachForm"
10 + :model="searchForm"
11 + label-position="top"
12 + disabled
13 + size="small"
14 + >
15 + <el-row class="row-border">
16 + <el-col :span="5">
17 + <Formitem label="提运单号" prop="consignmentCode">
18 + <el-popover
19 + placement="bottom"
20 + width="320"
21 + trigger="manual"
22 + popper-class="popoverconsignmentCode"
23 + v-model="textareaVisible.formItemconsignmentCode"
24 + >
25 + <el-input
26 + name="consignmentCode-textarea"
27 + type="textarea"
28 + :rows="5"
29 + id="popoverInputconsignmentCode"
30 + class="inputShadow textareaPopover"
31 + v-model="searchForm.consignmentCode"
32 + resize="none"
33 + maxlength="13000"
34 + placeholder=""
35 + @blur="textareaBlur"
36 + ></el-input>
37 + <el-input
38 + slot="reference"
39 + name="consignmentCode"
40 + type="textarea"
41 + :rows="1"
42 + class="inputShadow"
43 + id="inputInner--consignmentCode"
44 + v-model="searchForm.consignmentCode"
45 + resize="none"
46 + placeholder=""
47 + @focus="textareaFocus"
48 + ></el-input>
49 + </el-popover>
50 + </Formitem>
51 + </el-col>
52 + <el-col :span="4">
53 + <Formitem label="申报地海关" prop="factoryCode">
54 + <el-popover
55 + placement="bottom"
56 + width="320"
57 + trigger="manual"
58 + popper-class="popoverconsignmentCode"
59 + v-model="textareaVisible.formItemconsignmentCode"
60 + >
61 + <el-input
62 + name="consignmentCode-textarea"
63 + type="textarea"
64 + :rows="5"
65 + id="popoverInputconsignmentCode"
66 + class="inputShadow textareaPopover"
67 + v-model="searchForm.consignmentCode"
68 + resize="none"
69 + maxlength="13000"
70 + placeholder=""
71 + @blur="textareaBlur"
72 + ></el-input>
73 + <el-input
74 + slot="reference"
75 + name="consignmentCode"
76 + type="textarea"
77 + :rows="1"
78 + class="inputShadow"
79 + id="inputInner--consignmentCode"
80 + v-model="searchForm.consignmentCode"
81 + resize="none"
82 + placeholder=""
83 + @focus="textareaFocus"
84 + ></el-input>
85 + </el-popover>
86 + </Formitem>
87 + </el-col>
88 + <el-col :span="5">
89 + <Formitem label="电子口岸编号" prop="consignmentCode">
90 + <el-popover
91 + placement="bottom"
92 + width="320"
93 + trigger="manual"
94 + popper-class="popoverconsignmentCode"
95 + v-model="textareaVisible.formItemconsignmentCode"
96 + >
97 + <el-input
98 + name="consignmentCode-textarea"
99 + type="textarea"
100 + :rows="5"
101 + id="popoverInputconsignmentCode"
102 + class="inputShadow textareaPopover"
103 + v-model="searchForm.consignmentCode"
104 + resize="none"
105 + maxlength="13000"
106 + placeholder=""
107 + @blur="textareaBlur"
108 + ></el-input>
109 + <el-input
110 + slot="reference"
111 + name="consignmentCode"
112 + type="textarea"
113 + :rows="1"
114 + class="inputShadow"
115 + id="inputInner--consignmentCode"
116 + v-model="searchForm.consignmentCode"
117 + resize="none"
118 + placeholder=""
119 + @focus="textareaFocus"
120 + ></el-input>
121 + </el-popover>
122 + </Formitem>
123 + </el-col>
124 + <el-col :span="5">
125 + <Formitem label="监管场所代码" prop="consignmentCode">
126 + <el-popover
127 + placement="bottom"
128 + width="320"
129 + trigger="manual"
130 + popper-class="popoverconsignmentCode"
131 + v-model="textareaVisible.formItemconsignmentCode"
132 + >
133 + <el-input
134 + name="consignmentCode-textarea"
135 + type="textarea"
136 + :rows="5"
137 + id="popoverInputconsignmentCode"
138 + class="inputShadow textareaPopover"
139 + v-model="searchForm.consignmentCode"
140 + resize="none"
141 + maxlength="13000"
142 + placeholder=""
143 + @blur="textareaBlur"
144 + ></el-input>
145 + <el-input
146 + slot="reference"
147 + name="consignmentCode"
148 + type="textarea"
149 + :rows="1"
150 + class="inputShadow"
151 + id="inputInner--consignmentCode"
152 + v-model="searchForm.consignmentCode"
153 + resize="none"
154 + placeholder=""
155 + @focus="textareaFocus"
156 + ></el-input>
157 + </el-popover>
158 + </Formitem>
159 + </el-col>
160 + <el-col :span="5">
161 + <Formitem label="申报企业代码" prop="consignmentCode">
162 + <el-popover
163 + placement="bottom"
164 + width="320"
165 + trigger="manual"
166 + popper-class="popoverconsignmentCode"
167 + v-model="textareaVisible.formItemconsignmentCode"
168 + >
169 + <el-input
170 + name="consignmentCode-textarea"
171 + type="textarea"
172 + :rows="5"
173 + id="popoverInputconsignmentCode"
174 + class="inputShadow textareaPopover"
175 + v-model="searchForm.consignmentCode"
176 + resize="none"
177 + maxlength="13000"
178 + placeholder=""
179 + @blur="textareaBlur"
180 + ></el-input>
181 + <el-input
182 + slot="reference"
183 + name="consignmentCode"
184 + type="textarea"
185 + :rows="1"
186 + class="inputShadow"
187 + id="inputInner--consignmentCode"
188 + v-model="searchForm.consignmentCode"
189 + resize="none"
190 + placeholder=""
191 + @focus="textareaFocus"
192 + ></el-input>
193 + </el-popover>
194 + </Formitem>
195 + </el-col>
196 + </el-row>
197 + <el-row>
198 + <el-col :span="5">
199 + <Formitem label="申报企业名称" prop="consignmentCode">
200 + <el-popover
201 + placement="bottom"
202 + width="320"
203 + trigger="manual"
204 + popper-class="popoverconsignmentCode"
205 + v-model="textareaVisible.formItemconsignmentCode"
206 + >
207 + <el-input
208 + name="consignmentCode-textarea"
209 + type="textarea"
210 + :rows="5"
211 + id="popoverInputconsignmentCode"
212 + class="inputShadow textareaPopover"
213 + v-model="searchForm.consignmentCode"
214 + resize="none"
215 + maxlength="13000"
216 + placeholder=""
217 + @blur="textareaBlur"
218 + ></el-input>
219 + <el-input
220 + slot="reference"
221 + name="consignmentCode"
222 + type="textarea"
223 + :rows="1"
224 + class="inputShadow"
225 + id="inputInner--consignmentCode"
226 + v-model="searchForm.consignmentCode"
227 + resize="none"
228 + placeholder=""
229 + @focus="textareaFocus"
230 + ></el-input>
231 + </el-popover>
232 + </Formitem>
233 + </el-col>
234 + <el-col :span="4">
235 + <Formitem label="运输方式" prop="factoryCode">
236 + <el-select
237 + type="text"
238 + id="inputInner--declaredPort"
239 + v-model="searchForm.declaredPort"
240 + clearable
241 + placeholder=""
242 + >
243 + <el-option
244 + v-for="(item, index) in dictData.userport"
245 + :key="index"
246 + :label="item.name"
247 + :value="item.name"
248 + ></el-option>
249 + </el-select>
250 + </Formitem>
251 + </el-col>
252 + <el-col :span="5">
253 + <Formitem label="运输工具名称" prop="consignmentCode">
254 + <el-popover
255 + placement="bottom"
256 + width="320"
257 + trigger="manual"
258 + popper-class="popoverconsignmentCode"
259 + v-model="textareaVisible.formItemconsignmentCode"
260 + >
261 + <el-input
262 + name="consignmentCode-textarea"
263 + type="textarea"
264 + :rows="5"
265 + id="popoverInputconsignmentCode"
266 + class="inputShadow textareaPopover"
267 + v-model="searchForm.consignmentCode"
268 + resize="none"
269 + maxlength="13000"
270 + placeholder=""
271 + @blur="textareaBlur"
272 + ></el-input>
273 + <el-input
274 + slot="reference"
275 + name="consignmentCode"
276 + type="textarea"
277 + :rows="1"
278 + class="inputShadow"
279 + id="inputInner--consignmentCode"
280 + v-model="searchForm.consignmentCode"
281 + resize="none"
282 + placeholder=""
283 + @focus="textareaFocus"
284 + ></el-input>
285 + </el-popover>
286 + </Formitem>
287 + </el-col>
288 +
289 + <el-col :span="5">
290 + <Formitem label="航班航次号" prop="consignmentCode">
291 + <el-popover
292 + placement="bottom"
293 + width="320"
294 + trigger="manual"
295 + popper-class="popoverconsignmentCode"
296 + v-model="textareaVisible.formItemconsignmentCode"
297 + >
298 + <el-input
299 + name="consignmentCode-textarea"
300 + type="textarea"
301 + :rows="5"
302 + id="popoverInputconsignmentCode"
303 + class="inputShadow textareaPopover"
304 + v-model="searchForm.consignmentCode"
305 + resize="none"
306 + maxlength="13000"
307 + placeholder=""
308 + @blur="textareaBlur"
309 + ></el-input>
310 + <el-input
311 + slot="reference"
312 + name="consignmentCode"
313 + type="textarea"
314 + :rows="1"
315 + class="inputShadow"
316 + id="inputInner--consignmentCode"
317 + v-model="searchForm.consignmentCode"
318 + resize="none"
319 + placeholder=""
320 + @focus="textareaFocus"
321 + ></el-input>
322 + </el-popover>
323 + </Formitem>
324 + </el-col>
325 +
326 + <el-col :span="5">
327 + <Formitem label="境内运输工具编号" prop="consignmentCode">
328 + <el-popover
329 + placement="bottom"
330 + width="320"
331 + trigger="manual"
332 + popper-class="popoverconsignmentCode"
333 + v-model="textareaVisible.formItemconsignmentCode"
334 + >
335 + <el-input
336 + name="consignmentCode-textarea"
337 + type="textarea"
338 + :rows="5"
339 + id="popoverInputconsignmentCode"
340 + class="inputShadow textareaPopover"
341 + v-model="searchForm.consignmentCode"
342 + resize="none"
343 + maxlength="13000"
344 + placeholder=""
345 + @blur="textareaBlur"
346 + ></el-input>
347 + <el-input
348 + slot="reference"
349 + name="consignmentCode"
350 + type="textarea"
351 + :rows="1"
352 + class="inputShadow"
353 + id="inputInner--consignmentCode"
354 + v-model="searchForm.consignmentCode"
355 + resize="none"
356 + placeholder=""
357 + @focus="textareaFocus"
358 + ></el-input>
359 + </el-popover>
360 + </Formitem>
361 + </el-col>
362 +
363 + <el-col :span="5">
364 + <Formitem label="毛重" prop="consignmentCode">
365 + <el-popover
366 + placement="bottom"
367 + width="320"
368 + trigger="manual"
369 + popper-class="popoverconsignmentCode"
370 + v-model="textareaVisible.formItemconsignmentCode"
371 + >
372 + <el-input
373 + name="consignmentCode-textarea"
374 + type="textarea"
375 + :rows="5"
376 + id="popoverInputconsignmentCode"
377 + class="inputShadow textareaPopover"
378 + v-model="searchForm.consignmentCode"
379 + resize="none"
380 + maxlength="13000"
381 + placeholder=""
382 + @blur="textareaBlur"
383 + ></el-input>
384 + <el-input
385 + slot="reference"
386 + name="consignmentCode"
387 + type="textarea"
388 + :rows="1"
389 + class="inputShadow"
390 + id="inputInner--consignmentCode"
391 + v-model="searchForm.consignmentCode"
392 + resize="none"
393 + placeholder=""
394 + @focus="textareaFocus"
395 + ></el-input>
396 + </el-popover>
397 + </Formitem>
398 + </el-col>
399 +
400 + <el-col :span="5">
401 + <Formitem label="物流企业名称" prop="consignmentCode">
402 + <el-popover
403 + placement="bottom"
404 + width="320"
405 + trigger="manual"
406 + popper-class="popoverconsignmentCode"
407 + v-model="textareaVisible.formItemconsignmentCode"
408 + >
409 + <el-input
410 + name="consignmentCode-textarea"
411 + type="textarea"
412 + :rows="5"
413 + id="popoverInputconsignmentCode"
414 + class="inputShadow textareaPopover"
415 + v-model="searchForm.consignmentCode"
416 + resize="none"
417 + maxlength="13000"
418 + placeholder=""
419 + @blur="textareaBlur"
420 + ></el-input>
421 + <el-input
422 + slot="reference"
423 + name="consignmentCode"
424 + type="textarea"
425 + :rows="1"
426 + class="inputShadow"
427 + id="inputInner--consignmentCode"
428 + v-model="searchForm.consignmentCode"
429 + resize="none"
430 + placeholder=""
431 + @focus="textareaFocus"
432 + ></el-input>
433 + </el-popover>
434 + </Formitem>
435 + </el-col>
436 +
437 + <el-col :span="4">
438 + <Formitem label="报文总数" prop="factoryCode">
439 + <el-select
440 + type="text"
441 + id="inputInner--declaredPort"
442 + v-model="searchForm.declaredPort"
443 + clearable
444 + placeholder=""
445 + >
446 + <el-option
447 + v-for="(item, index) in dictData.userport"
448 + :key="index"
449 + :label="item.name"
450 + :value="item.name"
451 + ></el-option>
452 + </el-select>
453 + </Formitem>
454 + </el-col>
455 +
456 + <el-col :span="5">
457 + <Formitem label="报文序号" prop="consignmentCode">
458 + <el-popover
459 + placement="bottom"
460 + width="320"
461 + trigger="manual"
462 + popper-class="popoverconsignmentCode"
463 + v-model="textareaVisible.formItemconsignmentCode"
464 + >
465 + <el-input
466 + name="consignmentCode-textarea"
467 + type="textarea"
468 + :rows="5"
469 + id="popoverInputconsignmentCode"
470 + class="inputShadow textareaPopover"
471 + v-model="searchForm.consignmentCode"
472 + resize="none"
473 + maxlength="13000"
474 + placeholder=""
475 + @blur="textareaBlur"
476 + ></el-input>
477 + <el-input
478 + slot="reference"
479 + name="consignmentCode"
480 + type="textarea"
481 + :rows="1"
482 + class="inputShadow"
483 + id="inputInner--consignmentCode"
484 + v-model="searchForm.consignmentCode"
485 + resize="none"
486 + placeholder=""
487 + @focus="textareaFocus"
488 + ></el-input>
489 + </el-popover>
490 + </Formitem>
491 + </el-col>
492 + </el-row>
493 + <el-row>
494 + <el-col :span="4">
495 + <Formitem label="业务状态" prop="factoryCode">
496 + <el-select
497 + type="text"
498 + id="inputInner--declaredPort"
499 + v-model="searchForm.declaredPort"
500 + clearable
501 + placeholder=""
502 + >
503 + <el-option
504 + v-for="(item, index) in dictData.userport"
505 + :key="index"
506 + :label="item.name"
507 + :value="item.name"
508 + ></el-option>
509 + </el-select>
510 + </Formitem>
511 + </el-col>
512 + <el-col :span="4">
513 + <Formitem label="申报类型" prop="factoryCode">
514 + <el-select
515 + type="text"
516 + id="inputInner--declaredPort"
517 + v-model="searchForm.declaredPort"
518 + clearable
519 + placeholder=""
520 + >
521 + <el-option
522 + v-for="(item, index) in dictData.userport"
523 + :key="index"
524 + :label="item.name"
525 + :value="item.name"
526 + ></el-option>
527 + </el-select>
528 + </Formitem>
529 + </el-col>
530 + <el-col :span="4">
531 + <Formitem label="申报日期" prop="declareDate">
532 + <el-date-picker
533 + v-model="value1"
534 + type="date"
535 + placeholder="选择日期">
536 + </el-date-picker>
537 + </Formitem>
538 + </el-col>
539 + <el-col :span="5">
540 + <Formitem label="备注" prop="consignmentCode">
541 + <el-popover
542 + placement="bottom"
543 + width="320"
544 + trigger="manual"
545 + popper-class="popoverconsignmentCode"
546 + v-model="textareaVisible.formItemconsignmentCode"
547 + >
548 + <el-input
549 + name="consignmentCode-textarea"
550 + type="textarea"
551 + :rows="5"
552 + id="popoverInputconsignmentCode"
553 + class="inputShadow textareaPopover"
554 + v-model="searchForm.consignmentCode"
555 + resize="none"
556 + maxlength="13000"
557 + placeholder=""
558 + @blur="textareaBlur"
559 + ></el-input>
560 + <el-input
561 + slot="reference"
562 + name="consignmentCode"
563 + type="textarea"
564 + :rows="1"
565 + class="inputShadow"
566 + id="inputInner--consignmentCode"
567 + v-model="searchForm.consignmentCode"
568 + resize="none"
569 + placeholder=""
570 + @focus="textareaFocus"
571 + ></el-input>
572 + </el-popover>
573 + </Formitem>
574 + </el-col>
575 + </el-row>
576 + </el-form>
577 +
578 + <h5>回执信息</h5>
579 + <ReceiptInfoTable />
580 +
581 + <h5>商品明细</h5>
582 + <ProductDetailTable />
583 + </div>
584 +</template>
585 +
586 +<script>
587 +import ReceiptInfoTable from "@/components/ReceiptInfoTable/index.vue";
588 +import ProductDetailTable from "@/components/ProductDetailTable/index.vue";
589 +
590 +export default {
591 + name: "index.vue",
592 + components: {ProductDetailTable, ReceiptInfoTable},
593 + data() {
594 + return {
595 + searchForm: {
596 + declaredPort: "",
597 + consStatus: "",
598 + consignmentCode: "",
599 + accsDataImportTime: [],
600 + ownerName: "",
601 + consignmentHeadCode: "",
602 + isPushCustomsSys: "",
603 + waitOperStatus: "",
604 + declTime: [],
605 + },
606 + textareaVisible: {
607 + formItemconsignmentCode: false,
608 + formItemconsignmentHeadCode: false,
609 + },
610 + dictData: {
611 + userport: [
612 + {name: "Shanghai Port", code: "SH"},
613 + {name: "Beijing Port", code: "BJ"},
614 + {name: "Guangzhou Port", code: "GZ"},
615 + {name: "Shenzhen Port", code: "SZ"},
616 + {name: "Tianjin Port", code: "TJ"},
617 + ],
618 + },
619 + }
620 + },
621 + methods: {
622 + textareaBlur(val) {
623 + let inputInner = document.querySelector(
624 + "#inputInner--" + val.target.name.split("-")[0]
625 + );
626 + this.textareaVisible["formItem" + val.target.name.split("-")[0]] = false;
627 + inputInner.style.display = "block";
628 + this.$nextTick(() => {
629 + inputInner.blur();
630 + if (
631 + inputInner.value != undefined &&
632 + inputInner.value != "" &&
633 + inputInner.value != null
634 + ) {
635 + inputInner.classList.add("inputFocus");
636 + } else {
637 + inputInner.classList.remove("inputFocus");
638 + }
639 + });
640 + let arr = [];
641 + this.searchForm[val.target.name.split("-")[0]]
642 + .replace(/[\n\,\;\;]/g, ",")
643 + .replace(/[\t]/g, "")
644 + .split(",")
645 + .forEach((str, index) => {
646 + if (str != null && str != "" && index <= 1000) {
647 + arr.push(str.trim());
648 + }
649 + });
650 + this.searchForm[val.target.name.split("-")[0]] = arr.join("\n");
651 + this.$forceUpdate();
652 + },
653 + //文本域展示状态切换
654 + textareaFocus(val) {
655 + this.textareaVisible["formItem" + val.target.name.split("-")[0]] = true;
656 + this.$nextTick(() => {
657 + document
658 + .querySelector("#popoverInput" + val.target.name.split("-")[0])
659 + .focus();
660 + document.querySelector(
661 + "#inputInner--" + val.target.name.split("-")[0]
662 + ).style.display = "none";
663 + });
664 + },
665 + }
666 +}
667 +</script>
668 +
669 +<style scoped lang="scss">
670 +.export-bill-detail {
671 + background-color: white;
672 + padding-left: 20px;
673 + //border: 1px solid black;
674 + height: 100%;
675 + .fedexFormItem {
676 + background-color: #f5f5f5;
677 + margin-right: 5px;
678 + margin-bottom: 5px;
679 + }
680 + .fedexformSreach {
681 + border-bottom: none;
682 + }
683 + .first-header {
684 + margin-top: 0;
685 + padding-top: 20px;
686 + display: flex;
687 + justify-content: space-between;
688 + position: relative;
689 + .returnButton {
690 + font-size: 14px;
691 + color: red;
692 + position: absolute;
693 + right: 0;
694 + top: 0px;
695 + width: 80px;
696 + height: 30px;
697 + line-height: 30px;
698 + text-align: center;
699 + background-color: white;
700 + border-radius: 5px;
701 + margin-right: 20px;
702 + margin-top: 20px;
703 + cursor: pointer;
704 + border: 1px solid red;
705 + }
706 + }
707 +}
708 +</style>
1 +<template>
2 + <div>
3 + <el-form
4 + class="fedexFormStyle fedexformSreach fedexformSreachBottomBorder"
5 + ref="sreachForm"
6 + :model="searchForm"
7 + label-position="top"
8 + size="small"
9 + >
10 + <el-row class="row-border">
11 + <el-col :span="5">
12 + <Formitem label="提运单号" prop="consignmentCode">
13 + <el-popover
14 + placement="bottom"
15 + width="320"
16 + trigger="manual"
17 + popper-class="popoverconsignmentCode"
18 + v-model="textareaVisible.formItemconsignmentCode"
19 + >
20 + <el-input
21 + name="consignmentCode-textarea"
22 + type="textarea"
23 + :rows="5"
24 + id="popoverInputconsignmentCode"
25 + class="inputShadow textareaPopover"
26 + v-model="searchForm.consignmentCode"
27 + resize="none"
28 + maxlength="13000"
29 + placeholder=""
30 + @blur="textareaBlur"
31 + @input="input"
32 + ></el-input>
33 + <el-input
34 + slot="reference"
35 + name="consignmentCode"
36 + type="textarea"
37 + :rows="1"
38 + class="inputShadow"
39 + id="inputInner--consignmentCode"
40 + v-model="searchForm.consignmentCode"
41 + resize="none"
42 + placeholder=""
43 + @focus="textareaFocus"
44 + @input="input"
45 + ></el-input>
46 + </el-popover>
47 + </Formitem>
48 + </el-col>
49 + <el-col :span="5">
50 + <Formitem label="回执状态" prop="declaredPort">
51 + <el-select
52 + type="text"
53 + id="inputInner--receiptStatus"
54 + v-model="searchForm.receiptStatus"
55 + clearable
56 + placeholder=""
57 + >
58 + <el-option
59 + v-for="(item, index) in dictData.userport"
60 + :key="index"
61 + :label="item.name"
62 + :value="item.name"
63 + ></el-option>
64 + </el-select>
65 + </Formitem>
66 + </el-col>
67 + <el-col :span="4">
68 + <Formitem label="创建日期" prop="receiptTime">
69 + <el-date-picker
70 + class="inputInner--accsDataImportTime"
71 + id="inputInner--accsDataImportTime"
72 + v-model="searchForm.accsDataImportTime"
73 + type="daterange"
74 + format="yyyy-MM-dd"
75 + prefix-icon="none"
76 + value-format="yyyyMMdd"
77 + range-separator="至"
78 + start-placeholder=""
79 + clearable
80 + end-placeholder=""
81 + :picker-options="importTimePickerOptions"
82 + @blur="datePickerBlur"
83 + @change="accsDataImportTimeChange"
84 + >
85 + </el-date-picker>
86 + </Formitem>
87 + </el-col>
88 +
89 + <el-col :span="2">
90 + <el-form-item class="textCenter">
91 + <el-button
92 + class="entrySreachButton"
93 + type="text"
94 + icon="el-icon-search"
95 + :loading="loadings.searchLoading"
96 + @click="search(0)"
97 + ></el-button>
98 + </el-form-item>
99 + </el-col>
100 +
101 + <el-col :span="4">
102 + <el-form-item class="textCenter">
103 + <el-button
104 + icon="el-icon-refresh"
105 + size="small"
106 + :loading="loadings.searchLoading"
107 + @click="search(0)"
108 + >重置
109 + </el-button>
110 + </el-form-item>
111 + </el-col>
112 + </el-row>
113 + </el-form>
114 +
115 + <div style="text-align: right; margin: 10px">
116 + <el-button
117 + size="small"
118 + :loading="loadings.downloadLoading2"
119 + @click="downloadBpiData('log')"
120 + >
121 + <svg-icon class="el-icon-user-solid" icon-class="fedexUpBlue"></svg-icon>
122 + 导出
123 + </el-button>
124 + </div>
125 +
126 + <Table
127 + class="fedexDetialTable fedexSreachTable"
128 + ref="entryTable"
129 + :data="tableData"
130 + :headerData="headerData"
131 + :maxHeight="tableMaxheight"
132 + :border="true"
133 + :pagination="true"
134 + :order="false"
135 + :loading="loadings.sreachLoading"
136 + :page="page.pageIndex"
137 + :pageSizes="[20, 30, 50, 100]"
138 + :totalCount="total"
139 + @sizeChange="sizeChange"
140 + @currentChange="currentChange"
141 + :selection="true"
142 + :selectFixed="false"
143 + @rowClick="handleRowClick"
144 + @tableSelect="tableSelect"
145 + @tableSelectAll="tableSelectAll"
146 + :rowSelectDataType="false"
147 + :selected="selected"
148 + >
149 + <template v-slot:waveName="scope">
150 + <span>{{ `${scope.row.waveName}(${scope.row.waveExt2})` }}</span>
151 + </template>
152 + </Table>
153 + </div>
154 +</template>
155 +
156 +<script>
157 +import {getAllExportingBills, getAllTransportBills} from "@/api/query/query";
158 +
159 +export default {
160 + name: "index",
161 + data() {
162 + return {
163 + searchForm: {
164 + declaredPort: "",
165 + consStatus: "",
166 + consignmentCode: "",
167 + accsDataImportTime: [],
168 + ownerName: "",
169 + consignmentHeadCode: "",
170 + isPushCustomsSys: "",
171 + waitOperStatus: "",
172 + declTime: [],
173 + },
174 + loadings: {
175 + searchLoading: false,
176 + },
177 + page: {
178 + pageIndex: 1,
179 + pageSize: 20,
180 + },
181 + textareaVisible: {
182 + formItemconsignmentCode: false,
183 + formItemconsignmentHeadCode: false,
184 + },
185 + sizeChange(val) {
186 + this.page.pageSize = val;
187 + this.sreach(1);
188 + },
189 + //分页
190 + currentChange(val) {
191 + this.page.pageIndex = val.page;
192 + this.search(1);
193 + },
194 + tableData: [],
195 + total: 0,
196 + tableMaxheight: null,
197 + headerData: [
198 + {
199 + name: "回执状态",
200 + value: "returnStatus",
201 + width: "150",
202 + align: "left",
203 + },
204 + {
205 + name: "提运单号",
206 + value: "orderNo",
207 + width: '150',
208 + align: 'left'
209 + },
210 + {
211 + name: '电子口岸编号',
212 + value: 'orderType',
213 + width: '150',
214 + align: 'left'
215 + },
216 + {
217 + name: '物流企业名称',
218 + value: 'ebccode',
219 + width: '200',
220 + align: 'left'
221 + },
222 + {
223 + name: '申报地海关',
224 + value: 'ebcname',
225 + width: '200',
226 + align: 'left'
227 + },
228 + {
229 + name: '创建时间',
230 + value: 'createTime',
231 + width: '150',
232 + align: 'left'
233 + },
234 + {
235 + name: '申报企业',
236 + value: 'declaringEnterprise',
237 + width: '200',
238 + align: 'left'
239 + },
240 + {
241 + name: '申报类型',
242 + value: 'declaringType',
243 + width: '100',
244 + align: 'left'
245 + }
246 + ],
247 + dictData: {
248 + userport: [
249 + {name: "Shanghai Port", code: "SH"},
250 + {name: "Beijing Port", code: "BJ"},
251 + {name: "Guangzhou Port", code: "GZ"},
252 + {name: "Shenzhen Port", code: "SZ"},
253 + {name: "Tianjin Port", code: "TJ"},
254 + ],
255 + },
256 + }
257 + },
258 + created() {
259 + getAllTransportBills({
260 + pageIndex: 1,
261 + pageSize: 20
262 + }).then((res) => {
263 + console.log('res', res)
264 + this.tableData = res.data.value;
265 + this.total = res.data.totalItems;
266 + debugger;
267 + })
268 + },
269 + methods: {
270 + tableSelect(val) {
271 + this.selected = val.selection;
272 + },
273 + tableSelectAll(val) {
274 + this.selected = val;
275 + },
276 + handleRowClick(row) {
277 + const declareId = row.declareId;
278 + this.$router.push({
279 + path: '/listBranchDetail',
280 + query: {
281 + declareId
282 + }
283 + });
284 + },
285 + async search(val) {
286 + try {
287 +
288 + } catch (error) {
289 + console.error("搜索出错:", error);
290 + } finally {
291 + // 无论成功还是失败,关闭加载状态
292 + this.loadings.sreachLoading = false;
293 + }
294 + },
295 + }
296 +}
297 +</script>
298 +
299 +<style scoped lang="scss">
300 +@import "@/assets/styles/variables.scss";
301 +
302 +.entrySreachButton {
303 + display: inline-block;
304 + font-size: 20px;
305 + color: $fedexButton !important;
306 +}
307 +</style>
1 +<template>
2 + <div class="export-bill-detail">
3 + <h5 class="first-header">
4 + 离境单详情
5 + <div class="returnButton" @click="$router.back()">返回</div>
6 + </h5>
7 + <el-form
8 + class="fedexFormStyle fedexformSreach fedexformSreachBottomBorder"
9 + ref="sreachForm"
10 + :model="searchForm"
11 + label-position="top"
12 + disabled
13 + size="small"
14 + >
15 + <el-row class="row-border">
16 + <el-col :span="5">
17 + <Formitem label="提运单号" prop="consignmentCode">
18 + <el-popover
19 + placement="bottom"
20 + width="320"
21 + trigger="manual"
22 + popper-class="popoverconsignmentCode"
23 + v-model="textareaVisible.formItemconsignmentCode"
24 + >
25 + <el-input
26 + name="consignmentCode-textarea"
27 + type="textarea"
28 + :rows="5"
29 + id="popoverInputconsignmentCode"
30 + class="inputShadow textareaPopover"
31 + v-model="searchForm.consignmentCode"
32 + resize="none"
33 + maxlength="13000"
34 + placeholder=""
35 + @blur="textareaBlur"
36 + ></el-input>
37 + <el-input
38 + slot="reference"
39 + name="consignmentCode"
40 + type="textarea"
41 + :rows="1"
42 + class="inputShadow"
43 + id="inputInner--consignmentCode"
44 + v-model="searchForm.consignmentCode"
45 + resize="none"
46 + placeholder=""
47 + @focus="textareaFocus"
48 + ></el-input>
49 + </el-popover>
50 + </Formitem>
51 + </el-col>
52 + <el-col :span="4">
53 + <Formitem label="报送类型" prop="factoryCode">
54 + <el-select
55 + type="text"
56 + id="inputInner--declaredPort"
57 + v-model="searchForm.declaredPort"
58 + clearable
59 + placeholder=""
60 + >
61 + <el-option
62 + v-for="(item, index) in dictData.userport"
63 + :key="index"
64 + :label="item.name"
65 + :value="item.name"
66 + ></el-option>
67 + </el-select>
68 + </Formitem>
69 + </el-col>
70 + <el-col :span="4">
71 + <Formitem label="业务状态" prop="factoryCode">
72 + <el-select
73 + type="text"
74 + id="inputInner--declaredPort"
75 + v-model="searchForm.declaredPort"
76 + clearable
77 + placeholder=""
78 + >
79 + <el-option
80 + v-for="(item, index) in dictData.userport"
81 + :key="index"
82 + :label="item.name"
83 + :value="item.name"
84 + ></el-option>
85 + </el-select>
86 + </Formitem>
87 + </el-col>
88 + <el-col :span="5">
89 + <Formitem label="报送时间" prop="consignmentCode">
90 + <el-popover
91 + placement="bottom"
92 + width="320"
93 + trigger="manual"
94 + popper-class="popoverconsignmentCode"
95 + v-model="textareaVisible.formItemconsignmentCode"
96 + >
97 + <el-input
98 + name="consignmentCode-textarea"
99 + type="textarea"
100 + :rows="5"
101 + id="popoverInputconsignmentCode"
102 + class="inputShadow textareaPopover"
103 + v-model="searchForm.consignmentCode"
104 + resize="none"
105 + maxlength="13000"
106 + placeholder=""
107 + @blur="textareaBlur"
108 + ></el-input>
109 + <el-input
110 + slot="reference"
111 + name="consignmentCode"
112 + type="textarea"
113 + :rows="1"
114 + class="inputShadow"
115 + id="inputInner--consignmentCode"
116 + v-model="searchForm.consignmentCode"
117 + resize="none"
118 + placeholder=""
119 + @focus="textareaFocus"
120 + ></el-input>
121 + </el-popover>
122 + </Formitem>
123 + </el-col>
124 + <el-col :span="4">
125 + <Formitem label="物流企业名称" prop="factoryCode">
126 + <el-popover
127 + placement="bottom"
128 + width="320"
129 + trigger="manual"
130 + popper-class="popoverconsignmentCode"
131 + v-model="textareaVisible.formItemconsignmentCode"
132 + >
133 + <el-input
134 + name="consignmentCode-textarea"
135 + type="textarea"
136 + :rows="5"
137 + id="popoverInputconsignmentCode"
138 + class="inputShadow textareaPopover"
139 + v-model="searchForm.consignmentCode"
140 + resize="none"
141 + maxlength="13000"
142 + placeholder=""
143 + @blur="textareaBlur"
144 + ></el-input>
145 + <el-input
146 + slot="reference"
147 + name="consignmentCode"
148 + type="textarea"
149 + :rows="1"
150 + class="inputShadow"
151 + id="inputInner--consignmentCode"
152 + v-model="searchForm.consignmentCode"
153 + resize="none"
154 + placeholder=""
155 + @focus="textareaFocus"
156 + ></el-input>
157 + </el-popover>
158 + </Formitem>
159 + </el-col>
160 + <el-col :span="5">
161 + <Formitem label="物流企业代码" prop="consignmentCode">
162 + <el-popover
163 + placement="bottom"
164 + width="320"
165 + trigger="manual"
166 + popper-class="popoverconsignmentCode"
167 + v-model="textareaVisible.formItemconsignmentCode"
168 + >
169 + <el-input
170 + name="consignmentCode-textarea"
171 + type="textarea"
172 + :rows="5"
173 + id="popoverInputconsignmentCode"
174 + class="inputShadow textareaPopover"
175 + v-model="searchForm.consignmentCode"
176 + resize="none"
177 + maxlength="13000"
178 + placeholder=""
179 + @blur="textareaBlur"
180 + ></el-input>
181 + <el-input
182 + slot="reference"
183 + name="consignmentCode"
184 + type="textarea"
185 + :rows="1"
186 + class="inputShadow"
187 + id="inputInner--consignmentCode"
188 + v-model="searchForm.consignmentCode"
189 + resize="none"
190 + placeholder=""
191 + @focus="textareaFocus"
192 + ></el-input>
193 + </el-popover>
194 + </Formitem>
195 + </el-col>
196 + <el-col :span="5">
197 + <Formitem label="申报地海关代码" prop="consignmentCode">
198 + <el-popover
199 + placement="bottom"
200 + width="320"
201 + trigger="manual"
202 + popper-class="popoverconsignmentCode"
203 + v-model="textareaVisible.formItemconsignmentCode"
204 + >
205 + <el-input
206 + name="consignmentCode-textarea"
207 + type="textarea"
208 + :rows="5"
209 + id="popoverInputconsignmentCode"
210 + class="inputShadow textareaPopover"
211 + v-model="searchForm.consignmentCode"
212 + resize="none"
213 + maxlength="13000"
214 + placeholder=""
215 + @blur="textareaBlur"
216 + ></el-input>
217 + <el-input
218 + slot="reference"
219 + name="consignmentCode"
220 + type="textarea"
221 + :rows="1"
222 + class="inputShadow"
223 + id="inputInner--consignmentCode"
224 + v-model="searchForm.consignmentCode"
225 + resize="none"
226 + placeholder=""
227 + @focus="textareaFocus"
228 + ></el-input>
229 + </el-popover>
230 + </Formitem>
231 + </el-col>
232 + <el-col :span="4">
233 + <Formitem label="运输方式" prop="factoryCode">
234 + <el-select
235 + type="text"
236 + id="inputInner--declaredPort"
237 + v-model="searchForm.declaredPort"
238 + clearable
239 + placeholder=""
240 + >
241 + <el-option
242 + v-for="(item, index) in dictData.userport"
243 + :key="index"
244 + :label="item.name"
245 + :value="item.name"
246 + ></el-option>
247 + </el-select>
248 + </Formitem>
249 + </el-col>
250 + <el-col :span="5">
251 + <Formitem label="运输工具名称" prop="consignmentCode">
252 + <el-popover
253 + placement="bottom"
254 + width="320"
255 + trigger="manual"
256 + popper-class="popoverconsignmentCode"
257 + v-model="textareaVisible.formItemconsignmentCode"
258 + >
259 + <el-input
260 + name="consignmentCode-textarea"
261 + type="textarea"
262 + :rows="5"
263 + id="popoverInputconsignmentCode"
264 + class="inputShadow textareaPopover"
265 + v-model="searchForm.consignmentCode"
266 + resize="none"
267 + maxlength="13000"
268 + placeholder=""
269 + @blur="textareaBlur"
270 + ></el-input>
271 + <el-input
272 + slot="reference"
273 + name="consignmentCode"
274 + type="textarea"
275 + :rows="1"
276 + class="inputShadow"
277 + id="inputInner--consignmentCode"
278 + v-model="searchForm.consignmentCode"
279 + resize="none"
280 + placeholder=""
281 + @focus="textareaFocus"
282 + ></el-input>
283 + </el-popover>
284 + </Formitem>
285 + </el-col>
286 + </el-row>
287 + <el-row>
288 + <el-col :span="5">
289 + <Formitem label="离境时间" prop="consignmentCode">
290 + <el-popover
291 + placement="bottom"
292 + width="320"
293 + trigger="manual"
294 + popper-class="popoverconsignmentCode"
295 + v-model="textareaVisible.formItemconsignmentCode"
296 + >
297 + <el-input
298 + name="consignmentCode-textarea"
299 + type="textarea"
300 + :rows="5"
301 + id="popoverInputconsignmentCode"
302 + class="inputShadow textareaPopover"
303 + v-model="searchForm.consignmentCode"
304 + resize="none"
305 + maxlength="13000"
306 + placeholder=""
307 + @blur="textareaBlur"
308 + ></el-input>
309 + <el-input
310 + slot="reference"
311 + name="consignmentCode"
312 + type="textarea"
313 + :rows="1"
314 + class="inputShadow"
315 + id="inputInner--consignmentCode"
316 + v-model="searchForm.consignmentCode"
317 + resize="none"
318 + placeholder=""
319 + @focus="textareaFocus"
320 + ></el-input>
321 + </el-popover>
322 + </Formitem>
323 + </el-col>
324 + <el-col :span="5">
325 + <Formitem label="申报日期" prop="consignmentCode">
326 + <el-popover
327 + placement="bottom"
328 + width="320"
329 + trigger="manual"
330 + popper-class="popoverconsignmentCode"
331 + v-model="textareaVisible.formItemconsignmentCode"
332 + >
333 + <el-input
334 + name="consignmentCode-textarea"
335 + type="textarea"
336 + :rows="5"
337 + id="popoverInputconsignmentCode"
338 + class="inputShadow textareaPopover"
339 + v-model="searchForm.consignmentCode"
340 + resize="none"
341 + maxlength="13000"
342 + placeholder=""
343 + @blur="textareaBlur"
344 + ></el-input>
345 + <el-input
346 + slot="reference"
347 + name="consignmentCode"
348 + type="textarea"
349 + :rows="1"
350 + class="inputShadow"
351 + id="inputInner--consignmentCode"
352 + v-model="searchForm.consignmentCode"
353 + resize="none"
354 + placeholder=""
355 + @focus="textareaFocus"
356 + ></el-input>
357 + </el-popover>
358 + </Formitem>
359 + </el-col>
360 +
361 + <el-col :span="5">
362 + <Formitem label="备注" prop="consignmentCode">
363 + <el-popover
364 + placement="bottom"
365 + width="320"
366 + trigger="manual"
367 + popper-class="popoverconsignmentCode"
368 + v-model="textareaVisible.formItemconsignmentCode"
369 + >
370 + <el-input
371 + name="consignmentCode-textarea"
372 + type="textarea"
373 + :rows="5"
374 + id="popoverInputconsignmentCode"
375 + class="inputShadow textareaPopover"
376 + v-model="searchForm.consignmentCode"
377 + resize="none"
378 + maxlength="13000"
379 + placeholder=""
380 + @blur="textareaBlur"
381 + ></el-input>
382 + <el-input
383 + slot="reference"
384 + name="consignmentCode"
385 + type="textarea"
386 + :rows="1"
387 + class="inputShadow"
388 + id="inputInner--consignmentCode"
389 + v-model="searchForm.consignmentCode"
390 + resize="none"
391 + placeholder=""
392 + @focus="textareaFocus"
393 + ></el-input>
394 + </el-popover>
395 + </Formitem>
396 + </el-col>
397 + </el-row>
398 + <el-row>
399 + <el-col :span="4">
400 + <Formitem label="业务状态" prop="factoryCode">
401 + <el-select
402 + type="text"
403 + id="inputInner--declaredPort"
404 + v-model="searchForm.declaredPort"
405 + clearable
406 + placeholder=""
407 + >
408 + <el-option
409 + v-for="(item, index) in dictData.userport"
410 + :key="index"
411 + :label="item.name"
412 + :value="item.name"
413 + ></el-option>
414 + </el-select>
415 + </Formitem>
416 + </el-col>
417 + <el-col :span="4">
418 + <Formitem label="申报类型" prop="factoryCode">
419 + <el-select
420 + type="text"
421 + id="inputInner--declaredPort"
422 + v-model="searchForm.declaredPort"
423 + clearable
424 + placeholder=""
425 + >
426 + <el-option
427 + v-for="(item, index) in dictData.userport"
428 + :key="index"
429 + :label="item.name"
430 + :value="item.name"
431 + ></el-option>
432 + </el-select>
433 + </Formitem>
434 + </el-col>
435 + <el-col :span="4">
436 + <Formitem label="申报日期" prop="declareDate">
437 + <el-date-picker
438 + v-model="value1"
439 + type="date"
440 + placeholder="选择日期">
441 + </el-date-picker>
442 + </Formitem>
443 + </el-col>
444 + <el-col :span="5">
445 + <Formitem label="备注" prop="consignmentCode">
446 + <el-popover
447 + placement="bottom"
448 + width="320"
449 + trigger="manual"
450 + popper-class="popoverconsignmentCode"
451 + v-model="textareaVisible.formItemconsignmentCode"
452 + >
453 + <el-input
454 + name="consignmentCode-textarea"
455 + type="textarea"
456 + :rows="5"
457 + id="popoverInputconsignmentCode"
458 + class="inputShadow textareaPopover"
459 + v-model="searchForm.consignmentCode"
460 + resize="none"
461 + maxlength="13000"
462 + placeholder=""
463 + @blur="textareaBlur"
464 + ></el-input>
465 + <el-input
466 + slot="reference"
467 + name="consignmentCode"
468 + type="textarea"
469 + :rows="1"
470 + class="inputShadow"
471 + id="inputInner--consignmentCode"
472 + v-model="searchForm.consignmentCode"
473 + resize="none"
474 + placeholder=""
475 + @focus="textareaFocus"
476 + ></el-input>
477 + </el-popover>
478 + </Formitem>
479 + </el-col>
480 + </el-row>
481 + </el-form>
482 +
483 + <h5>回执信息</h5>
484 + <ReceiptInfoTable />
485 +
486 + <h5>商品明细</h5>
487 + <ProductDetailTable />
488 + </div>
489 +</template>
490 +
491 +<script>
492 +import ReceiptInfoTable from "@/components/ReceiptInfoTable/index.vue";
493 +import ProductDetailTable from "@/components/ProductDetailTable/index.vue";
494 +
495 +export default {
496 + name: "index.vue",
497 + components: {ProductDetailTable, ReceiptInfoTable},
498 + data() {
499 + return {
500 + searchForm: {
501 + declaredPort: "",
502 + consStatus: "",
503 + consignmentCode: "",
504 + accsDataImportTime: [],
505 + ownerName: "",
506 + consignmentHeadCode: "",
507 + isPushCustomsSys: "",
508 + waitOperStatus: "",
509 + declTime: [],
510 + },
511 + textareaVisible: {
512 + formItemconsignmentCode: false,
513 + formItemconsignmentHeadCode: false,
514 + },
515 + dictData: {
516 + userport: [
517 + {name: "Shanghai Port", code: "SH"},
518 + {name: "Beijing Port", code: "BJ"},
519 + {name: "Guangzhou Port", code: "GZ"},
520 + {name: "Shenzhen Port", code: "SZ"},
521 + {name: "Tianjin Port", code: "TJ"},
522 + ],
523 + },
524 + }
525 + },
526 + methods: {
527 + textareaBlur(val) {
528 + let inputInner = document.querySelector(
529 + "#inputInner--" + val.target.name.split("-")[0]
530 + );
531 + this.textareaVisible["formItem" + val.target.name.split("-")[0]] = false;
532 + inputInner.style.display = "block";
533 + this.$nextTick(() => {
534 + inputInner.blur();
535 + if (
536 + inputInner.value != undefined &&
537 + inputInner.value != "" &&
538 + inputInner.value != null
539 + ) {
540 + inputInner.classList.add("inputFocus");
541 + } else {
542 + inputInner.classList.remove("inputFocus");
543 + }
544 + });
545 + let arr = [];
546 + this.searchForm[val.target.name.split("-")[0]]
547 + .replace(/[\n\,\;\;]/g, ",")
548 + .replace(/[\t]/g, "")
549 + .split(",")
550 + .forEach((str, index) => {
551 + if (str != null && str != "" && index <= 1000) {
552 + arr.push(str.trim());
553 + }
554 + });
555 + this.searchForm[val.target.name.split("-")[0]] = arr.join("\n");
556 + this.$forceUpdate();
557 + },
558 + //文本域展示状态切换
559 + textareaFocus(val) {
560 + this.textareaVisible["formItem" + val.target.name.split("-")[0]] = true;
561 + this.$nextTick(() => {
562 + document
563 + .querySelector("#popoverInput" + val.target.name.split("-")[0])
564 + .focus();
565 + document.querySelector(
566 + "#inputInner--" + val.target.name.split("-")[0]
567 + ).style.display = "none";
568 + });
569 + },
570 + }
571 +}
572 +</script>
573 +
574 +<style scoped lang="scss">
575 +.export-bill-detail {
576 + background-color: white;
577 + padding-left: 20px;
578 + //border: 1px solid black;
579 + height: 100%;
580 + .fedexFormItem {
581 + background-color: #f5f5f5;
582 + margin-right: 5px;
583 + margin-bottom: 5px;
584 + }
585 + .fedexformSreach {
586 + border-bottom: none;
587 + }
588 + .first-header {
589 + margin-top: 0;
590 + padding-top: 20px;
591 + display: flex;
592 + justify-content: space-between;
593 + position: relative;
594 + .returnButton {
595 + font-size: 14px;
596 + color: red;
597 + position: absolute;
598 + right: 0;
599 + top: 0px;
600 + width: 80px;
601 + height: 30px;
602 + line-height: 30px;
603 + text-align: center;
604 + background-color: white;
605 + border-radius: 5px;
606 + margin-right: 20px;
607 + margin-top: 20px;
608 + cursor: pointer;
609 + border: 1px solid red;
610 + }
611 + }
612 +}
613 +</style>
1 +<template>
2 + <div>
3 + <el-form
4 + class="fedexFormStyle fedexformSreach fedexformSreachBottomBorder"
5 + ref="sreachForm"
6 + :model="searchForm"
7 + label-position="top"
8 + size="small"
9 + >
10 + <el-row class="row-border">
11 + <el-col :span="5">
12 + <Formitem label="提运单号" prop="consignmentCode">
13 + <el-popover
14 + placement="bottom"
15 + width="320"
16 + trigger="manual"
17 + popper-class="popoverconsignmentCode"
18 + v-model="textareaVisible.formItemconsignmentCode"
19 + >
20 + <el-input
21 + name="consignmentCode-textarea"
22 + type="textarea"
23 + :rows="5"
24 + id="popoverInputconsignmentCode"
25 + class="inputShadow textareaPopover"
26 + v-model="searchForm.consignmentCode"
27 + resize="none"
28 + maxlength="13000"
29 + placeholder=""
30 + @blur="textareaBlur"
31 + @input="input"
32 + ></el-input>
33 + <el-input
34 + slot="reference"
35 + name="consignmentCode"
36 + type="textarea"
37 + :rows="1"
38 + class="inputShadow"
39 + id="inputInner--consignmentCode"
40 + v-model="searchForm.consignmentCode"
41 + resize="none"
42 + placeholder=""
43 + @focus="textareaFocus"
44 + @input="input"
45 + ></el-input>
46 + </el-popover>
47 + </Formitem>
48 + </el-col>
49 + <el-col :span="5">
50 + <Formitem label="业务状态" prop="declaredPort">
51 + <el-select
52 + type="text"
53 + id="inputInner--receiptStatus"
54 + v-model="searchForm.receiptStatus"
55 + clearable
56 + placeholder=""
57 + >
58 + <el-option
59 + v-for="(item, index) in dictData.userport"
60 + :key="index"
61 + :label="item.name"
62 + :value="item.name"
63 + ></el-option>
64 + </el-select>
65 + </Formitem>
66 + </el-col>
67 + <el-col :span="5">
68 + <Formitem label="运单号" prop="consignmentCode">
69 + <el-popover
70 + placement="bottom"
71 + width="320"
72 + trigger="manual"
73 + popper-class="popoverconsignmentCode"
74 + v-model="textareaVisible.formItemconsignmentCode"
75 + >
76 + <el-input
77 + name="consignmentCode-textarea"
78 + type="textarea"
79 + :rows="5"
80 + id="popoverInputconsignmentCode"
81 + class="inputShadow textareaPopover"
82 + v-model="searchForm.consignmentCode"
83 + resize="none"
84 + maxlength="13000"
85 + placeholder=""
86 + @blur="textareaBlur"
87 + @input="input"
88 + ></el-input>
89 + <el-input
90 + slot="reference"
91 + name="consignmentCode"
92 + type="textarea"
93 + :rows="1"
94 + class="inputShadow"
95 + id="inputInner--consignmentCode"
96 + v-model="searchForm.consignmentCode"
97 + resize="none"
98 + placeholder=""
99 + @focus="textareaFocus"
100 + @input="input"
101 + ></el-input>
102 + </el-popover>
103 + </Formitem>
104 + </el-col>
105 + <el-col :span="4">
106 + <Formitem label="申报日期" prop="receiptTime">
107 + <el-date-picker
108 + class="inputInner--accsDataImportTime"
109 + id="inputInner--accsDataImportTime"
110 + v-model="searchForm.accsDataImportTime"
111 + type="daterange"
112 + format="yyyy-MM-dd"
113 + prefix-icon="none"
114 + value-format="yyyyMMdd"
115 + range-separator="至"
116 + start-placeholder=""
117 + clearable
118 + end-placeholder=""
119 + :picker-options="importTimePickerOptions"
120 + @blur="datePickerBlur"
121 + @change="accsDataImportTimeChange"
122 + >
123 + </el-date-picker>
124 + </Formitem>
125 + </el-col>
126 +
127 + <el-col :span="2">
128 + <el-form-item class="textCenter">
129 + <el-button
130 + class="entrySreachButton"
131 + type="text"
132 + icon="el-icon-search"
133 + :loading="loadings.searchLoading"
134 + @click="search(0)"
135 + ></el-button>
136 + </el-form-item>
137 + </el-col>
138 +
139 + <el-col :span="3">
140 + <el-form-item class="textCenter">
141 + <el-button
142 + icon="el-icon-refresh"
143 + size="small"
144 + :loading="loadings.searchLoading"
145 + @click="search(0)"
146 + >重置
147 + </el-button>
148 + </el-form-item>
149 + </el-col>
150 + </el-row>
151 + </el-form>
152 +
153 + <div style="text-align: right; margin: 10px">
154 + <el-button
155 + size="small"
156 + :loading="loadings.downloadLoading2"
157 + @click="downloadBpiData('log')"
158 + >
159 + <svg-icon class="el-icon-user-solid" icon-class="fedexUpBlue"></svg-icon>
160 + 导出
161 + </el-button>
162 + </div>
163 +
164 + <Table
165 + class="fedexDetialTable fedexSreachTable"
166 + ref="entryTable"
167 + :data="tableData"
168 + :headerData="headerData"
169 + :maxHeight="tableMaxheight"
170 + :border="true"
171 + :pagination="true"
172 + :order="false"
173 + :loading="loadings.sreachLoading"
174 + :page="page.pageIndex"
175 + :pageSizes="[20, 30, 50, 100]"
176 + :totalCount="total"
177 + @sizeChange="sizeChange"
178 + @currentChange="currentChange"
179 + :selection="true"
180 + :selectFixed="false"
181 + @rowClick="handleRowClick"
182 + @tableSelect="tableSelect"
183 + @tableSelectAll="tableSelectAll"
184 + :rowSelectDataType="false"
185 + :selected="selected"
186 + >
187 + <template v-slot:waveName="scope">
188 + <span>{{ `${scope.row.waveName}(${scope.row.waveExt2})` }}</span>
189 + </template>
190 + </Table>
191 + </div>
192 +</template>
193 +
194 +<script>
195 +import {getAllExportingBills, getAllTransportBills} from "@/api/query/query";
196 +
197 +export default {
198 + name: "index",
199 + data() {
200 + return {
201 + searchForm: {
202 + declaredPort: "",
203 + consStatus: "",
204 + consignmentCode: "",
205 + accsDataImportTime: [],
206 + ownerName: "",
207 + consignmentHeadCode: "",
208 + isPushCustomsSys: "",
209 + waitOperStatus: "",
210 + declTime: [],
211 + },
212 + loadings: {
213 + searchLoading: false,
214 + },
215 + page: {
216 + pageIndex: 1,
217 + pageSize: 20,
218 + },
219 + textareaVisible: {
220 + formItemconsignmentCode: false,
221 + formItemconsignmentHeadCode: false,
222 + },
223 + sizeChange(val) {
224 + this.page.pageSize = val;
225 + this.sreach(1);
226 + },
227 + //分页
228 + currentChange(val) {
229 + this.page.pageIndex = val.page;
230 + this.search(1);
231 + },
232 + tableData: [],
233 + total: 0,
234 + tableMaxheight: null,
235 + headerData: [
236 + {
237 + name: "回执状态",
238 + value: "returnStatus",
239 + width: "150",
240 + align: "left",
241 + },
242 + {
243 + name: "提运单号",
244 + value: "orderNo",
245 + width: '150',
246 + align: 'left'
247 + },
248 + {
249 + name: '运单编号',
250 + value: 'orderType',
251 + width: '150',
252 + align: 'left'
253 + },
254 + {
255 + name: '物流企业名称',
256 + value: 'ebccode',
257 + width: '200',
258 + align: 'left'
259 + },
260 + {
261 + name: '运输方式',
262 + value: 'ebcname',
263 + width: '200',
264 + align: 'left'
265 + },
266 + {
267 + name: '运输工具名称',
268 + value: 'createTime',
269 + width: '150',
270 + align: 'left'
271 + },
272 + {
273 + name: '航班航次号',
274 + value: 'declaringEnterprise',
275 + width: '200',
276 + align: 'left'
277 + },
278 + {
279 + name: '离境时间',
280 + value: 'declaringEnterprise',
281 + width: '200',
282 + align: 'left'
283 + },
284 + {
285 + name: '报送类型',
286 + value: 'declaringEnterprise',
287 + width: '200',
288 + align: 'left'
289 + },
290 + {
291 + name: '业务状态',
292 + value: 'declaringType',
293 + width: '100',
294 + align: 'left'
295 + },
296 + {
297 + name: '申报日期',
298 + value: 'declaringType',
299 + width: '100',
300 + align: 'left'
301 + }
302 + ],
303 + dictData: {
304 + userport: [
305 + {name: "Shanghai Port", code: "SH"},
306 + {name: "Beijing Port", code: "BJ"},
307 + {name: "Guangzhou Port", code: "GZ"},
308 + {name: "Shenzhen Port", code: "SZ"},
309 + {name: "Tianjin Port", code: "TJ"},
310 + ],
311 + },
312 + }
313 + },
314 + created() {
315 + getAllTransportBills({
316 + pageIndex: 1,
317 + pageSize: 20
318 + }).then((res) => {
319 + console.log('res', res)
320 + this.tableData = res.data.value;
321 + this.total = res.data.totalItems;
322 + debugger;
323 + })
324 + },
325 + methods: {
326 + tableSelect(val) {
327 + this.selected = val.selection;
328 + },
329 + tableSelectAll(val) {
330 + this.selected = val;
331 + },
332 + handleRowClick(row) {
333 + const declareId = row.declareId;
334 + this.$router.push({
335 + path: '/logisticsExitDetail',
336 + query: {
337 + declareId
338 + }
339 + });
340 + },
341 + async search(val) {
342 + try {
343 +
344 + } catch (error) {
345 + console.error("搜索出错:", error);
346 + } finally {
347 + // 无论成功还是失败,关闭加载状态
348 + this.loadings.sreachLoading = false;
349 + }
350 + },
351 + }
352 +}
353 +</script>
354 +
355 +<style scoped lang="scss">
356 +@import "@/assets/styles/variables.scss";
357 +
358 +.entrySreachButton {
359 + display: inline-block;
360 + font-size: 20px;
361 + color: $fedexButton !important;
362 +}
363 +</style>