zhanbo.xu

feat: demo优化

...@@ -151,31 +151,24 @@ ...@@ -151,31 +151,24 @@
151 :selected="selected" 151 :selected="selected"
152 > 152 >
153 <template v-slot:billNo="scope"> 153 <template v-slot:billNo="scope">
154 - <el-button type="text" @click.stop="linkChange(scope)"> 154 + <el-button type="text" @click.stop="linkChange(scope, 0)">
155 {{ scope.row.billNo }} 155 {{ scope.row.billNo }}
156 </el-button> 156 </el-button>
157 </template> 157 </template>
158 - <!-- <template v-slot:listReceiptStatus="scope"> 158 + <template v-slot:listReceiptStatus="scope">
159 - <TablePopover 159 + 海关审结:
160 - ref="listReceiptStatusPopover" 160 + <el-button type="text" @click.stop="linkChange(scope, 1)">
161 - dataKey="listReceiptStatus" 161 + {{ scope.row.uncompletedCount }}
162 - idKey="declareId" 162 + </el-button>
163 - :parentDom="$refs.entryTable" 163 + /
164 - :receiptDataHead="receiptDataHead" 164 + <el-button
165 - :rowData="scope.row" 165 + type="text"
166 - :tableData="tableData" 166 + @click.stop="linkChange(scope, 2)"
167 - @popoverChange="popoverChange" 167 + style="margin-left: 0"
168 - @popoverClose="popoverClose"
169 > 168 >
170 - <div slot="title"> 169 + {{ scope.row.completedCount }}
171 - <span style="font-weight: 700; color: #515a6e">订单编号:</span 170 + </el-button>
172 - >{{ scope.row.orderno }} 171 + </template>
173 - </div>
174 - <div slot="buttonLabel">
175 - {{ scope.row.listReceiptStatus }}
176 - </div>
177 - </TablePopover>
178 - </template> -->
179 <template v-slot:arrivalInReceiptStatus="scope"> 172 <template v-slot:arrivalInReceiptStatus="scope">
180 <TablePopover 173 <TablePopover
181 ref="arrivalInReceiptStatusPopover" 174 ref="arrivalInReceiptStatusPopover"
...@@ -268,14 +261,13 @@ export default { ...@@ -268,14 +261,13 @@ export default {
268 align: "left", 261 align: "left",
269 }, 262 },
270 { 263 {
271 - name: "清单回执", 264 + name: "清单审结进度",
272 value: "listReceiptStatus", 265 value: "listReceiptStatus",
273 width: "", 266 width: "",
274 align: "left", 267 align: "left",
275 - // slot: true, 268 + slot: true,
276 }, 269 },
277 { 270 {
278 - // release-v1.0.9
279 name: "运抵单回执", 271 name: "运抵单回执",
280 value: "arrivalInReceiptStatus", 272 value: "arrivalInReceiptStatus",
281 width: "", 273 width: "",
...@@ -328,12 +320,21 @@ export default { ...@@ -328,12 +320,21 @@ export default {
328 }, 320 },
329 methods: { 321 methods: {
330 // 运单号跳转 322 // 运单号跳转
331 - linkChange(record) { 323 + linkChange(record, type) {
332 - const { billNo } = record.row; 324 + const { billNo, completedLogisticsNo, uncompletedLogisticsNo } =
333 - console.log(record); 325 + record.row;
326 + const query = { billNo, search: true };
327 + if (+type === 1) {
328 + query["logisticsNo"] = uncompletedLogisticsNo;
329 + }
330 + if (+type === 2) {
331 + query["logisticsNo"] = completedLogisticsNo;
332 + }
333 + console.log(query, record);
334 +
334 this.$router.push({ 335 this.$router.push({
335 path: "/reportingData", 336 path: "/reportingData",
336 - query: { billNo, search: true }, 337 + query: { ...query },
337 }); 338 });
338 }, 339 },
339 tableSelect(val) { 340 tableSelect(val) {
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
29 clearable 29 clearable
30 filterable 30 filterable
31 placeholder="" 31 placeholder=""
32 - @change="getOrderList" 32 + @change="receiptXml"
33 > 33 >
34 <el-option 34 <el-option
35 v-for="item in receiptTypeList" 35 v-for="item in receiptTypeList"
...@@ -42,7 +42,18 @@ ...@@ -42,7 +42,18 @@
42 </el-col> 42 </el-col>
43 <el-col :span="8"> 43 <el-col :span="8">
44 <Formitem label="物流运单编号" prop="logisticsNo" type="edit"> 44 <Formitem label="物流运单编号" prop="logisticsNo" type="edit">
45 - <el-select 45 + <el-input
46 + type="text"
47 + class="inputShadow"
48 + id="inputInner-edit-logisticsNo"
49 + resize="none"
50 + v-model="formData.logisticsNo"
51 + clearable
52 + disabled
53 + placeholder=""
54 + @blur="handleOtherInfo"
55 + ></el-input>
56 + <!-- <el-select
46 type="text" 57 type="text"
47 id="inputInner-edit-logisticsNo" 58 id="inputInner-edit-logisticsNo"
48 v-model="formData.logisticsNo" 59 v-model="formData.logisticsNo"
...@@ -62,7 +73,7 @@ ...@@ -62,7 +73,7 @@
62 :label="item" 73 :label="item"
63 :value="item" 74 :value="item"
64 ></el-option> 75 ></el-option>
65 - </el-select> 76 + </el-select> -->
66 </Formitem> 77 </Formitem>
67 </el-col> 78 </el-col>
68 <el-col :span="8"> 79 <el-col :span="8">
...@@ -159,7 +170,6 @@ ...@@ -159,7 +170,6 @@
159 170
160 <script> 171 <script>
161 import { 172 import {
162 - searchOrderNo,
163 generateReceiptXml, 173 generateReceiptXml,
164 addInfo, 174 addInfo,
165 getListInfo, 175 getListInfo,
...@@ -293,26 +303,26 @@ export default { ...@@ -293,26 +303,26 @@ export default {
293 } 303 }
294 }); 304 });
295 }, 305 },
296 - remoteMethod(query) { 306 + // remoteMethod(query) {
297 - console.log(query); 307 + // console.log(query);
298 - this.getOrderList(query, true); 308 + // this.getOrderList(query, true);
299 - }, 309 + // },
300 - getOrderList(val, flag) { 310 + // getOrderList(val, flag) {
301 - if (!this.formData.receiptType) { 311 + // if (!this.formData.receiptType) {
302 - return; 312 + // return;
303 - } 313 + // }
304 - searchOrderNo({ 314 + // searchOrderNo({
305 - receiptType: this.formData.receiptType, 315 + // receiptType: this.formData.receiptType,
306 - logisticsNo: flag ? val : "", 316 + // logisticsNo: flag ? val : "",
307 - }).then((res) => { 317 + // }).then((res) => {
308 - if (res.code === "200") { 318 + // if (res.code === "200") {
309 - this.orderNoList = res.data; 319 + // this.orderNoList = res.data;
310 - } else { 320 + // } else {
311 - this.alertWarningMsg(res.message); 321 + // this.alertWarningMsg(res.message);
312 - } 322 + // }
313 - }); 323 + // });
314 - this.receiptXml(); 324 + // this.receiptXml();
315 - }, 325 + // },
316 getOtherInfo(e) { 326 getOtherInfo(e) {
317 getListInfo(e).then((res) => { 327 getListInfo(e).then((res) => {
318 console.log(res); 328 console.log(res);
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
29 clearable 29 clearable
30 filterable 30 filterable
31 placeholder="" 31 placeholder=""
32 - @change="getOrderList" 32 + @change="receiptXml"
33 > 33 >
34 <el-option 34 <el-option
35 v-for="item in receiptTypeList" 35 v-for="item in receiptTypeList"
...@@ -42,7 +42,17 @@ ...@@ -42,7 +42,17 @@
42 </el-col> 42 </el-col>
43 <el-col :span="8"> 43 <el-col :span="8">
44 <Formitem label="物流运单编号" prop="logisticsNo" type="edit"> 44 <Formitem label="物流运单编号" prop="logisticsNo" type="edit">
45 - <el-select 45 + <el-input
46 + type="text"
47 + class="inputShadow"
48 + id="inputInner-edit-logisticsNo"
49 + resize="none"
50 + v-model="formData.logisticsNo"
51 + clearable
52 + placeholder=""
53 + @blur="handleOtherInfo"
54 + ></el-input>
55 + <!-- <el-select
46 type="text" 56 type="text"
47 id="inputInner-edit-logisticsNo" 57 id="inputInner-edit-logisticsNo"
48 v-model="formData.logisticsNo" 58 v-model="formData.logisticsNo"
...@@ -61,7 +71,7 @@ ...@@ -61,7 +71,7 @@
61 :label="item" 71 :label="item"
62 :value="item" 72 :value="item"
63 ></el-option> 73 ></el-option>
64 - </el-select> 74 + </el-select> -->
65 </Formitem> 75 </Formitem>
66 </el-col> 76 </el-col>
67 <el-col :span="8"> 77 <el-col :span="8">
...@@ -158,7 +168,6 @@ ...@@ -158,7 +168,6 @@
158 168
159 <script> 169 <script>
160 import { 170 import {
161 - searchOrderNo,
162 generateReceiptXml, 171 generateReceiptXml,
163 addInfo, 172 addInfo,
164 getListInfo, 173 getListInfo,
...@@ -287,26 +296,26 @@ export default { ...@@ -287,26 +296,26 @@ export default {
287 } 296 }
288 }); 297 });
289 }, 298 },
290 - remoteMethod(query) { 299 + // remoteMethod(query) {
291 - console.log(query); 300 + // console.log(query);
292 - this.getOrderList(query, true); 301 + // this.getOrderList(query, true);
293 - }, 302 + // },
294 - getOrderList(val, flag) { 303 + // getOrderList(val, flag) {
295 - if (!this.formData.receiptType) { 304 + // if (!this.formData.receiptType) {
296 - return; 305 + // return;
297 - } 306 + // }
298 - searchOrderNo({ 307 + // searchOrderNo({
299 - receiptType: this.formData.receiptType, 308 + // receiptType: this.formData.receiptType,
300 - logisticsNo: flag ? val : "", 309 + // logisticsNo: flag ? val : "",
301 - }).then((res) => { 310 + // }).then((res) => {
302 - if (res.code === "200") { 311 + // if (res.code === "200") {
303 - this.orderNoList = res.data; 312 + // this.orderNoList = res.data;
304 - } else { 313 + // } else {
305 - this.alertWarningMsg(res.message); 314 + // this.alertWarningMsg(res.message);
306 - } 315 + // }
307 - }); 316 + // });
308 - this.receiptXml(); 317 + // this.receiptXml();
309 - }, 318 + // },
310 getOtherInfo(e) { 319 getOtherInfo(e) {
311 getListInfo(e).then((res) => { 320 getListInfo(e).then((res) => {
312 console.log(res); 321 console.log(res);
...@@ -343,6 +352,7 @@ export default { ...@@ -343,6 +352,7 @@ export default {
343 this.close(true); 352 this.close(true);
344 } else { 353 } else {
345 this.alertWarningMsg(res.message); 354 this.alertWarningMsg(res.message);
355 + this.close(false);
346 } 356 }
347 }) 357 })
348 .catch((err) => { 358 .catch((err) => {
......
...@@ -184,6 +184,12 @@ export default { ...@@ -184,6 +184,12 @@ export default {
184 showOverflowTooltip: false, 184 showOverflowTooltip: false,
185 }, 185 },
186 { 186 {
187 + name: "创建人",
188 + value: "createUserName",
189 + width: "",
190 + align: "left",
191 + },
192 + {
187 name: "创建时间", 193 name: "创建时间",
188 value: "createTime", 194 value: "createTime",
189 width: "", 195 width: "",
......
...@@ -91,13 +91,21 @@ ...@@ -91,13 +91,21 @@
91 <el-row class="backgroundRow"> 91 <el-row class="backgroundRow">
92 <!-- 回执状态 --> 92 <!-- 回执状态 -->
93 <el-col :span="5"> 93 <el-col :span="5">
94 - <Formitem label="回执状态" prop="receiptStatus"> 94 + <Formitem
95 + label="回执状态"
96 + prop="receiptStatus"
97 + :activeType="activeType"
98 + >
95 <el-select 99 <el-select
96 - type="text" 100 + class="multipleElSelect"
97 id="inputInner--receiptStatus" 101 id="inputInner--receiptStatus"
98 v-model="sreachFormData.receiptStatus" 102 v-model="sreachFormData.receiptStatus"
99 clearable 103 clearable
100 placeholder="" 104 placeholder=""
105 + multiple
106 + @visible-change="visibleChange"
107 + @remove-tag="removeTag"
108 + @clear="clear"
101 > 109 >
102 <el-option 110 <el-option
103 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 111 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
...@@ -493,6 +501,7 @@ export default { ...@@ -493,6 +501,7 @@ export default {
493 }, 501 },
494 data() { 502 data() {
495 return { 503 return {
504 + activeType: false,
496 // 控制日志弹窗的显示和隐藏 505 // 控制日志弹窗的显示和隐藏
497 allLogDataReceiptStatusPopoverType: false, 506 allLogDataReceiptStatusPopoverType: false,
498 // 存储选中的日志数据 507 // 存储选中的日志数据
...@@ -501,7 +510,7 @@ export default { ...@@ -501,7 +510,7 @@ export default {
501 billNo: "", 510 billNo: "",
502 logisticsNo: "", 511 logisticsNo: "",
503 orderNo: "", 512 orderNo: "",
504 - receiptStatus: null, 513 + receiptStatus: [],
505 receiptType: null, 514 receiptType: null,
506 createTime: [], 515 createTime: [],
507 }, 516 },
...@@ -680,6 +689,7 @@ export default { ...@@ -680,6 +689,7 @@ export default {
680 try { 689 try {
681 if (this.$route.query.billNo && this.$route.query.search == "true") { 690 if (this.$route.query.billNo && this.$route.query.search == "true") {
682 this.sreachFormData.billNo = this.$route.query.billNo; 691 this.sreachFormData.billNo = this.$route.query.billNo;
692 + this.sreachFormData.logisticsNo = this.$route.query.logisticsNo;
683 } 693 }
684 } catch (error) { 694 } catch (error) {
685 console.log(error); 695 console.log(error);
...@@ -709,6 +719,36 @@ export default { ...@@ -709,6 +719,36 @@ export default {
709 }); 719 });
710 }, 720 },
711 methods: { 721 methods: {
722 + visibleChange(type) {
723 + if (type) {
724 + this.activeType = true;
725 + } else {
726 + if (this.sreachFormData.receiptStatus.length > 0) {
727 + this.activeType = true;
728 + } else {
729 + this.activeType = false;
730 + document
731 + .querySelector("#inputInner--receiptStatus")
732 + .classList.remove("inputFocus");
733 + }
734 + }
735 + },
736 + removeTag(val) {
737 + if (this.sreachFormData.receiptStatus.length > 0) {
738 + this.activeType = true;
739 + } else {
740 + this.activeType = false;
741 + document
742 + .querySelector("#inputInner--receiptStatus")
743 + .classList.remove("inputFocus");
744 + }
745 + },
746 + clear() {
747 + this.activeType = false;
748 + document
749 + .querySelector("#inputInner--receiptStatus")
750 + .classList.remove("inputFocus");
751 + },
712 dialogClose(flag = false) { 752 dialogClose(flag = false) {
713 this.timeVisible = false; 753 this.timeVisible = false;
714 if (flag) { 754 if (flag) {
...@@ -767,7 +807,7 @@ export default { ...@@ -767,7 +807,7 @@ export default {
767 billNo: "", 807 billNo: "",
768 logisticsNo: "", 808 logisticsNo: "",
769 orderNo: "", 809 orderNo: "",
770 - receiptStatus: null, 810 + receiptStatus: [],
771 receiptType: null, 811 receiptType: null,
772 createTime: [], 812 createTime: [],
773 }; 813 };
......
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
15 <span style="margin-left: 20px"> 15 <span style="margin-left: 20px">
16 汇总申报地海关:{{ pageData.portCode }} 16 汇总申报地海关:{{ pageData.portCode }}
17 </span> 17 </span>
18 + <span style="margin-left: 20px">
19 + 商品种类总数量:{{ pageData.skuCount }}
20 + </span>
18 </div> 21 </div>
19 <Table 22 <Table
20 class="fedexDetialTable fedexSreachTable" 23 class="fedexDetialTable fedexSreachTable"
...@@ -29,6 +32,11 @@ ...@@ -29,6 +32,11 @@
29 :totalCount="page.total" 32 :totalCount="page.total"
30 @sizeChange="sizeChange" 33 @sizeChange="sizeChange"
31 @currentChange="currentChange" 34 @currentChange="currentChange"
35 + :selection="true"
36 + :selectFixed="false"
37 + @tableSelect="tableSelect"
38 + @tableSelectAll="tableSelectAll"
39 + :selected="tableSelected"
32 > 40 >
33 </Table> 41 </Table>
34 <div class="dialogOption entrySave"> 42 <div class="dialogOption entrySave">
...@@ -75,6 +83,7 @@ export default { ...@@ -75,6 +83,7 @@ export default {
75 submitLoading: false, 83 submitLoading: false,
76 }, 84 },
77 title: "", 85 title: "",
86 + tableSelected: [],
78 page: { 87 page: {
79 pageIndex: 1, 88 pageIndex: 1,
80 pageSize: 20, 89 pageSize: 20,
...@@ -106,6 +115,12 @@ export default { ...@@ -106,6 +115,12 @@ export default {
106 align: "left", 115 align: "left",
107 }, 116 },
108 { 117 {
118 + name: "商品种类数量",
119 + value: "skuCount",
120 + width: "",
121 + align: "left",
122 + },
123 + {
109 name: "清单申报时间", 124 name: "清单申报时间",
110 value: "createTime", 125 value: "createTime",
111 width: "", 126 width: "",
...@@ -115,6 +130,12 @@ export default { ...@@ -115,6 +130,12 @@ export default {
115 }; 130 };
116 }, 131 },
117 methods: { 132 methods: {
133 + tableSelect(val) {
134 + this.tableSelected = val.selection;
135 + },
136 + tableSelectAll(val) {
137 + this.tableSelected = val;
138 + },
118 fetchPreview() { 139 fetchPreview() {
119 preview({ 140 preview({
120 ...this.selected, 141 ...this.selected,
...@@ -147,7 +168,10 @@ export default { ...@@ -147,7 +168,10 @@ export default {
147 }, 168 },
148 //数据保存 169 //数据保存
149 submit() { 170 submit() {
150 - declareSummaryApplication(this.selected).then((response) => { 171 + declareSummaryApplication({
172 + ...this.selected,
173 + logisticsNos: this.tableSelected.map((item) => item.logisticsNo),
174 + }).then((response) => {
151 if (response.data) { 175 if (response.data) {
152 this.msgSuccess("汇总申报成功"); 176 this.msgSuccess("汇总申报成功");
153 this.$router.push("summaryDataSearch"); 177 this.$router.push("summaryDataSearch");
......