zhanbo.xu

feat:合并代码

1 NODE_ENV = production 1 NODE_ENV = production
2 2
3 # 开发环境配置 3 # 开发环境配置
4 -ENV = 'deving' 4 +ENV = 'dev_erry'
5 5
6 -VUE_APP_BASE_ENV = "deving" 6 +VUE_APP_BASE_ENV = "dev"
7 7
8 VUE_APP_Version = '1.0.0' 8 VUE_APP_Version = '1.0.0'
9 9
......
...@@ -3,7 +3,7 @@ NODE_ENV = production ...@@ -3,7 +3,7 @@ NODE_ENV = production
3 # 预生产环境配置 3 # 预生产环境配置
4 4
5 # 文件名 5 # 文件名
6 -ENV = 'pre' 6 +ENV = 'pre_fedex'
7 # 没用到 7 # 没用到
8 VUE_APP_BASE_ENV = "pre" 8 VUE_APP_BASE_ENV = "pre"
9 9
......
1 # 生产环境配置 1 # 生产环境配置
2 -ENV = 'production' 2 +ENV = 'production_fedex'
3 3
4 VUE_APP_BASE_ENV = "prod" 4 VUE_APP_BASE_ENV = "prod"
5 5
......
1 NODE_ENV = production 1 NODE_ENV = production
2 2
3 # 测试环境配置 3 # 测试环境配置
4 -ENV = 'test' 4 +ENV = 'test_erry'
5 5
6 VUE_APP_BASE_ENV = "test" 6 VUE_APP_BASE_ENV = "test"
7 7
......
1 NODE_ENV = production 1 NODE_ENV = production
2 2
3 # 测试环境配置 3 # 测试环境配置
4 -ENV = 'uat' 4 +ENV = 'uat_erry'
5 5
6 VUE_APP_BASE_ENV = "uat" 6 VUE_APP_BASE_ENV = "uat"
7 7
......
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
9 "build:dev": "vue-cli-service build --mode deving", 9 "build:dev": "vue-cli-service build --mode deving",
10 "build:test": "vue-cli-service build --mode test", 10 "build:test": "vue-cli-service build --mode test",
11 "build:uat": "vue-cli-service build --mode uat", 11 "build:uat": "vue-cli-service build --mode uat",
12 - "build:pre": "vue-cli-service build --mode pre", 12 + "build:pre:fedex": "vue-cli-service build --mode pre",
13 - "build:prod": "vue-cli-service build", 13 + "build:prod:fedex": "vue-cli-service build",
14 "preview": "node build/index.js --preview", 14 "preview": "node build/index.js --preview",
15 "lint": "eslint --ext .js,.vue src" 15 "lint": "eslint --ext .js,.vue src"
16 }, 16 },
......
...@@ -243,3 +243,13 @@ export function declareUpload(data) { ...@@ -243,3 +243,13 @@ export function declareUpload(data) {
243 }, 243 },
244 }); 244 });
245 } 245 }
246 +
247 +// 根据提运单号 查询提运单号下的所有物流运单号
248 +// bus-customer/declareData/checkBillNo
249 +export function checkBillNo(data) {
250 + return request({
251 + url: "/bus-customer/declareData/checkBillNo",
252 + method: "post",
253 + data: data.declareIds,
254 + });
255 +}
......
...@@ -201,6 +201,39 @@ ...@@ -201,6 +201,39 @@
201 ></el-input> 201 ></el-input>
202 </Formitem> 202 </Formitem>
203 </el-col> 203 </el-col>
204 + <!-- 新增 -->
205 + <el-col :span="4">
206 + <Formitem label="第二数量" prop="secondQty">
207 + <el-input
208 + type="number"
209 + class="inputShadow"
210 + id="inputInner--secondQty"
211 + resize="none"
212 + v-model="tableRowformData.secondQty"
213 + clearable
214 + placeholder=""
215 + ></el-input>
216 + </Formitem>
217 + </el-col>
218 + <el-col :span="4">
219 + <Formitem label="第二计量单位" type="edit" prop="unitLegalSecondCode">
220 + <el-input
221 + type="text"
222 + class="inputShadow"
223 + id="inputInner-edit-unitLegalSecondCode"
224 + resize="none"
225 + :disabled="true"
226 + :value="
227 + mapDicDatas(
228 + $store.getters.dict.MEASUREMENT_UNIT,
229 + tableRowformData.unitLegalSecondCode
230 + )
231 + "
232 + ></el-input>
233 + </Formitem>
234 + </el-col>
235 +
236 + <!-- 截止 -->
204 <el-col :span="4"> 237 <el-col :span="4">
205 <Formitem label="币制" prop="currency" type="edit"> 238 <Formitem label="币制" prop="currency" type="edit">
206 <el-select 239 <el-select
...@@ -396,6 +429,10 @@ export default { ...@@ -396,6 +429,10 @@ export default {
396 { required: true, message: "请输入法定数量", trigger: "blur" }, 429 { required: true, message: "请输入法定数量", trigger: "blur" },
397 { validator: checkFractionalPart, trigger: "blur" }, 430 { validator: checkFractionalPart, trigger: "blur" },
398 ], 431 ],
432 + secondQty: [
433 + { required: false, message: "请输入第二数量", trigger: "blur" },
434 + { validator: checkFractionalPart, trigger: "blur" },
435 + ],
399 currency: [ 436 currency: [
400 { required: true, message: "请选择币制", trigger: "change" }, 437 { required: true, message: "请选择币制", trigger: "change" },
401 ], 438 ],
......
...@@ -536,6 +536,14 @@ ...@@ -536,6 +536,14 @@
536 ) 536 )
537 }}</span> 537 }}</span>
538 </template> 538 </template>
539 + <template v-slot:unitLegalSecondCode="scope">
540 + <span>{{
541 + mapDicDatas(
542 + $store.getters.dict.MEASUREMENT_UNIT,
543 + scope.row.unitLegalSecondCode
544 + )
545 + }}</span>
546 + </template>
539 <template v-slot:currency="scope"> 547 <template v-slot:currency="scope">
540 <span>{{ 548 <span>{{
541 mapCurrencyDatas($store.getters.dict.CURRENCY, scope.row.currency) 549 mapCurrencyDatas($store.getters.dict.CURRENCY, scope.row.currency)
...@@ -805,6 +813,19 @@ export default { ...@@ -805,6 +813,19 @@ export default {
805 slot: true, 813 slot: true,
806 }, 814 },
807 { 815 {
816 + name: "第二数量",
817 + value: "secondQty",
818 + width: "",
819 + align: "left",
820 + },
821 + {
822 + name: "第二计量单位",
823 + value: "unitLegalSecondCode",
824 + width: "",
825 + align: "left",
826 + slot: true,
827 + },
828 + {
808 name: "币制", 829 name: "币制",
809 value: "currency", 830 value: "currency",
810 width: "", 831 width: "",
...@@ -986,6 +1007,7 @@ export default { ...@@ -986,6 +1007,7 @@ export default {
986 enterpriseProductDescribe: "", 1007 enterpriseProductDescribe: "",
987 enterpriseProductName: "", 1008 enterpriseProductName: "",
988 legalQty: 0, 1009 legalQty: 0,
1010 + secondQty: 0,
989 model: "", 1011 model: "",
990 netWeight: 0, 1012 netWeight: 0,
991 price: 0, 1013 price: 0,
......
1 +<template>
2 + <el-dialog
3 + class="entryDialog classCUploadDialog"
4 + :title="dataPreviewTitle"
5 + :visible.sync="batchModifyVisible"
6 + :show-close="false"
7 + width="700px"
8 + :close-on-click-modal="false"
9 + >
10 + <div style="margin-bottom: 10px">
11 + <span>
12 + 提运单号 数量:<strong>{{ tableData.length }}</strong>
13 + </span>
14 + <span style="margin-left: 20px">
15 + 物流运单编号 数量:<strong>{{ logisticsTotal }}</strong>
16 + </span>
17 + </div>
18 + <Table
19 + class="fedexDetialTable fedexSreachTable"
20 + ref="entryTable"
21 + :data="tableData"
22 + :headerData="headerData"
23 + :border="true"
24 + :pagination="false"
25 + :order="false"
26 + :height="tableMaxheight + 'px'"
27 + :maxHeight="tableMaxheight + 'px'"
28 + >
29 + </Table>
30 + <div class="dialogOption entrySave revokeOperation">
31 + <el-button
32 + class="entrySaveButton entrySaveButton-background revokeSubmitBtn"
33 + type="primary"
34 + @click="formSubmit"
35 + >
36 + 确定
37 + </el-button>
38 + <el-button class="entrySaveButton" @click="cancelModify">关闭</el-button>
39 + </div>
40 + </el-dialog>
41 +</template>
42 +
43 +<script>
44 +import { checkBillNo } from "@/api/declareData-api.js";
45 +
46 +export default {
47 + props: {
48 + showDialog: {
49 + type: Boolean,
50 + default: false,
51 + },
52 + dataPreviewTitle: {
53 + type: String,
54 + default: "预览",
55 + },
56 + selectedDatas: {
57 + type: Array,
58 + default: () => [],
59 + },
60 + },
61 + data() {
62 + return {
63 + headerData: [
64 + {
65 + name: "提运单号",
66 + value: "billNo",
67 + width: "180px",
68 + align: "left",
69 + },
70 + {
71 + name: "物流运单编号",
72 + value: "logisticsWaybillNumber",
73 + width: "",
74 + align: "left",
75 + },
76 + ],
77 + tableData: [],
78 + batchModifyVisible: false,
79 + logisticsTotal: 0,
80 + tableMaxheight: 200,
81 + };
82 + },
83 + watch: {
84 + showDialog(val) {
85 + if (val) {
86 + this.batchModifyVisible = val;
87 + this.getBillNo();
88 + }
89 + },
90 + },
91 + created() {},
92 + methods: {
93 + getBillNo() {
94 + checkBillNo({
95 + declareIds: this.selectedDatas.map((item) => item.declareId),
96 + }).then((res) => {
97 + console.log(res);
98 + if (+res.code === 200) {
99 + this.tableData = res.data;
100 +
101 + const { total } = this.getLogisticsWaybillDetails(this.tableData);
102 + this.logisticsTotal = total;
103 + this.tableMaxheight =
104 + res.data.length >= 10 ? 500 : res.data.length * 50 + 50;
105 + }
106 + });
107 + },
108 + getLogisticsWaybillDetails(data) {
109 + const numbers = data.reduce((acc, item) => {
110 + const validNumbers = item.logisticsWaybillNumber
111 + .split(",")
112 + .filter((num) => num && num.trim());
113 + return [...acc, ...validNumbers];
114 + }, []);
115 +
116 + return {
117 + total: numbers.length,
118 + numbers: numbers,
119 + };
120 + },
121 +
122 + formSubmit() {
123 + this.cancelModify(1);
124 + },
125 +
126 + cancelModify(val) {
127 + this.batchModifyVisible = false;
128 + this.$emit("cancelDataPreview", val);
129 + },
130 + },
131 +};
132 +</script>
133 +
134 +<style lang="scss" scoped>
135 +@import "@/assets/styles/variables.scss";
136 +
137 +.revokeOperation {
138 + margin-bottom: 25px;
139 + .revokeSubmitBtn {
140 + margin-right: 30px;
141 + }
142 +}
143 +</style>
...@@ -137,6 +137,14 @@ ...@@ -137,6 +137,14 @@
137 > 137 >
138 批量修改 138 批量修改
139 </el-button> 139 </el-button>
140 + <!-- <el-button
141 + class="entrySaveButton"
142 + size="small"
143 + icon="el-icon-edit"
144 + @click="batchModify"
145 + >
146 + 重量调整
147 + </el-button> -->
140 <el-button 148 <el-button
141 class="entrySaveButton" 149 class="entrySaveButton"
142 size="small" 150 size="small"
...@@ -442,6 +450,13 @@ ...@@ -442,6 +450,13 @@
442 :selected="selected" 450 :selected="selected"
443 @close="dialogClose" 451 @close="dialogClose"
444 /> 452 />
453 + <!-- 数据预览 -->
454 + <DataPreview
455 + :showDialog="dataPreviewVisible"
456 + :dataPreviewTitle="dataPreviewTitle"
457 + :selectedDatas="selected"
458 + @cancelDataPreview="cancelDataPreview"
459 + />
445 </div> 460 </div>
446 </template> 461 </template>
447 462
...@@ -464,6 +479,7 @@ import TemplateDownloadDialog from "./templateDownloadDialog.vue"; ...@@ -464,6 +479,7 @@ import TemplateDownloadDialog from "./templateDownloadDialog.vue";
464 import ExportDialog from "./exportDialog.vue"; 479 import ExportDialog from "./exportDialog.vue";
465 import BatchModify from "./batchModify.vue"; 480 import BatchModify from "./batchModify.vue";
466 import TimeDialog from "./time-dialog.vue"; 481 import TimeDialog from "./time-dialog.vue";
482 +import DataPreview from "./data-preview.vue";
467 export default { 483 export default {
468 name: "ReportingData", 484 name: "ReportingData",
469 components: { 485 components: {
...@@ -473,6 +489,7 @@ export default { ...@@ -473,6 +489,7 @@ export default {
473 ExportDialog, 489 ExportDialog,
474 BatchModify, 490 BatchModify,
475 TimeDialog, 491 TimeDialog,
492 + DataPreview,
476 }, 493 },
477 data() { 494 data() {
478 return { 495 return {
...@@ -650,6 +667,11 @@ export default { ...@@ -650,6 +667,11 @@ export default {
650 datasExportVisible: false, 667 datasExportVisible: false,
651 batchModifyVisible: false, 668 batchModifyVisible: false,
652 timeVisible: false, 669 timeVisible: false,
670 + // 数据预览
671 + dataPreviewVisible: false,
672 + dataPreviewTitle: "",
673 + currentLoadingKey: "",
674 + paramsOjb: {},
653 }; 675 };
654 }, 676 },
655 created() { 677 created() {
...@@ -849,6 +871,39 @@ export default { ...@@ -849,6 +871,39 @@ export default {
849 } 871 }
850 this.timeVisible = true; 872 this.timeVisible = true;
851 }, 873 },
874 + // 申报
875 + postDeclareData(obj, loadingKey) {
876 + // 提交申报数据
877 + declareDataUpload(obj)
878 + .then((res) => {
879 + if (res.code === "200") {
880 + this.alertSuccessMsg("数据已成功提交申报,请等待海关回执。");
881 + } else {
882 + this.alertWarningMsg(res.message);
883 + }
884 + })
885 + .catch((err) => {
886 + console.error(err);
887 + this.alertWarningMsg("申报失败,请稍后重试。");
888 + })
889 + .finally(() => {
890 + // 无论成功或失败,都重置加载状态并刷新数据
891 + this.$set(this.loadings, loadingKey, false);
892 + this.search(0);
893 + });
894 + },
895 +
896 + cancelDataPreview(val) {
897 + this.dataPreviewVisible = false;
898 + this.dataPreviewTitle = "";
899 +
900 + if (val === 1) {
901 + this.postDeclareData(this.paramsOjb, this.currentLoadingKey);
902 + } else {
903 + this.$set(this.loadings, this.currentLoadingKey, false);
904 + this.paramsOjb = {};
905 + }
906 + },
852 907
853 /** 908 /**
854 * 通用申报方法 909 * 通用申报方法
...@@ -861,14 +916,21 @@ export default { ...@@ -861,14 +916,21 @@ export default {
861 this.alertWarningMsg("请选择数据!"); 916 this.alertWarningMsg("请选择数据!");
862 return; 917 return;
863 } 918 }
864 -
865 // 设置加载状态 919 // 设置加载状态
866 this.$set(this.loadings, loadingKey, true); 920 this.$set(this.loadings, loadingKey, true);
921 +
867 // 构造请求参数 922 // 构造请求参数
868 const obj = { 923 const obj = {
869 declareIds: this.selected.map((item) => item.declareId), 924 declareIds: this.selected.map((item) => item.declareId),
870 type: dropdownCode, 925 type: dropdownCode,
871 }; 926 };
927 + if (dropdownName === "一键申报" || dropdownName === "清单总分单申报") {
928 + this.dataPreviewVisible = true;
929 + this.dataPreviewTitle = `预览-${dropdownName}`;
930 + this.currentLoadingKey = loadingKey;
931 + this.paramsOjb = obj;
932 + return;
933 + }
872 934
873 // 如果是撤销单申报,显示弹窗并返回 935 // 如果是撤销单申报,显示弹窗并返回
874 if (dropdownName === "撤销单申报") { 936 if (dropdownName === "撤销单申报") {
...@@ -878,24 +940,7 @@ export default { ...@@ -878,24 +940,7 @@ export default {
878 return; 940 return;
879 } 941 }
880 942
881 - // 提交申报数据 943 + this.postDeclareData(obj, loadingKey);
882 - declareDataUpload(obj)
883 - .then((res) => {
884 - if (res.code === "200") {
885 - this.alertSuccessMsg("数据已成功提交申报,请等待海关回执。");
886 - } else {
887 - this.alertWarningMsg(res.message);
888 - }
889 - })
890 - .catch((err) => {
891 - console.error(err);
892 - this.alertWarningMsg("申报失败,请稍后重试。");
893 - })
894 - .finally(() => {
895 - // 无论成功或失败,都重置加载状态并刷新数据
896 - this.$set(this.loadings, loadingKey, false);
897 - this.search(0);
898 - });
899 }, 944 },
900 //切换申报模式 945 //切换申报模式
901 dropdownChange(val) { 946 dropdownChange(val) {
......
...@@ -2,15 +2,24 @@ ...@@ -2,15 +2,24 @@
2 <el-dialog 2 <el-dialog
3 class="entryDialog classCUploadDialog" 3 class="entryDialog classCUploadDialog"
4 title="离境单申报" 4 title="离境单申报"
5 - :visible.sync="timeVisible" 5 + :visible.sync="timeVisibleConfig"
6 :show-close="false" 6 :show-close="false"
7 - width="450px" 7 + width="700px"
8 :close-on-click-modal="false" 8 :close-on-click-modal="false"
9 :destroy-on-close="true" 9 :destroy-on-close="true"
10 v-loading="loadings.dialogLoading" 10 v-loading="loadings.dialogLoading"
11 @close="close(false)" 11 @close="close(false)"
12 > 12 >
13 - <div class="modelItem"> 13 + <div style="margin-bottom: 10px">
14 + <span>
15 + 提运单号 数量:<strong>{{ tableData.length }}</strong>
16 + </span>
17 + <span style="margin-left: 20px">
18 + 物流运单编号 数量:<strong>{{ logisticsTotal }}</strong>
19 + </span>
20 + </div>
21 +
22 + <div class="modelItem" style="margin-bottom: 10px">
14 <el-form 23 <el-form
15 class="fedexFormStyle" 24 class="fedexFormStyle"
16 ref="formData" 25 ref="formData"
...@@ -19,23 +28,8 @@ ...@@ -19,23 +28,8 @@
19 size="small" 28 size="small"
20 > 29 >
21 <el-row :gutter="5"> 30 <el-row :gutter="5">
22 - <el-col :span="24"> 31 + <el-col :span="18">
23 <Formitem label="离境时间" prop="leaveTime" type="edit"> 32 <Formitem label="离境时间" prop="leaveTime" type="edit">
24 - <!-- <el-select
25 - type="text"
26 - id="inputInner-edit-leaveTime"
27 - v-model="formData.leaveTimel-date-picker"
28 - clearable
29 - filterable
30 - placeholder=""
31 - >
32 - <el-option
33 - v-for="item in operatorCode"
34 - :key="item"
35 - :label="item"
36 - :value="item"
37 - ></el-option>
38 - </el-select> -->
39 <el-date-picker 33 <el-date-picker
40 class="inputInner--leaveTime" 34 class="inputInner--leaveTime"
41 id="inputInner-edit-leaveTime" 35 id="inputInner-edit-leaveTime"
...@@ -50,6 +44,19 @@ ...@@ -50,6 +44,19 @@
50 </el-row> 44 </el-row>
51 </el-form> 45 </el-form>
52 </div> 46 </div>
47 + <Table
48 + class="fedexDetialTable fedexSreachTable"
49 + ref="entryTable"
50 + :data="tableData"
51 + :headerData="headerData"
52 + :border="true"
53 + :pagination="false"
54 + :order="false"
55 + :height="tableMaxheight + 'px'"
56 + :maxHeight="tableMaxheight + 'px'"
57 + >
58 + </Table>
59 +
53 <div class="dialogOption entrySave"> 60 <div class="dialogOption entrySave">
54 <el-button 61 <el-button
55 class="entrySaveButton" 62 class="entrySaveButton"
...@@ -63,7 +70,7 @@ ...@@ -63,7 +70,7 @@
63 </template> 70 </template>
64 71
65 <script> 72 <script>
66 -import { declareUpload } from "@/api/declareData-api.js"; 73 +import { declareUpload, checkBillNo } from "@/api/declareData-api.js";
67 export default { 74 export default {
68 props: { 75 props: {
69 timeVisible: { 76 timeVisible: {
...@@ -83,15 +90,53 @@ export default { ...@@ -83,15 +90,53 @@ export default {
83 formData: { 90 formData: {
84 leaveTime: "", 91 leaveTime: "",
85 }, 92 },
86 - 93 + timeVisibleConfig: false,
94 + headerData: [
95 + {
96 + name: "提运单号",
97 + value: "billNo",
98 + width: "180px",
99 + align: "left",
100 + },
101 + {
102 + name: "物流运单编号",
103 + value: "logisticsWaybillNumber",
104 + width: "",
105 + align: "left",
106 + },
107 + ],
108 + tableData: [],
87 loadings: { 109 loadings: {
88 dialogLoading: false, 110 dialogLoading: false,
89 submitLoading: false, 111 submitLoading: false,
90 }, 112 },
91 loadingText: "", 113 loadingText: "",
114 + logisticsTotal: 0,
115 + tableMaxheight: 200,
92 }; 116 };
93 }, 117 },
118 + watch: {
119 + timeVisible(val) {
120 + if (val) {
121 + this.timeVisibleConfig = val;
122 + this.getBillNo();
123 + }
124 + },
125 + },
94 methods: { 126 methods: {
127 + getBillNo() {
128 + checkBillNo({
129 + declareIds: this.selected.map((item) => item.declareId),
130 + }).then((res) => {
131 + if (+res.code === 200) {
132 + this.tableData = res.data;
133 + const { total } = this.getLogisticsWaybillDetails(this.tableData);
134 + this.logisticsTotal = total;
135 + this.tableMaxheight =
136 + res.data.length >= 9 ? 500 : res.data.length * 50 + 50;
137 + }
138 + });
139 + },
95 //数据保存 140 //数据保存
96 submit() { 141 submit() {
97 let obj = { 142 let obj = {
...@@ -105,6 +150,19 @@ export default { ...@@ -105,6 +150,19 @@ export default {
105 } 150 }
106 }); 151 });
107 }, 152 },
153 + getLogisticsWaybillDetails(data) {
154 + const numbers = data.reduce((acc, item) => {
155 + const validNumbers = item.logisticsWaybillNumber
156 + .split(",")
157 + .filter((num) => num && num.trim());
158 + return [...acc, ...validNumbers];
159 + }, []);
160 +
161 + return {
162 + total: numbers.length,
163 + numbers: numbers,
164 + };
165 + },
108 //新增 166 //新增
109 addapi(val) { 167 addapi(val) {
110 this.loadings.dialogLoading = true; 168 this.loadings.dialogLoading = true;
...@@ -129,6 +187,7 @@ export default { ...@@ -129,6 +187,7 @@ export default {
129 leaveTime: "", 187 leaveTime: "",
130 }; 188 };
131 this.loadings.dialogLoading = false; 189 this.loadings.dialogLoading = false;
190 + this.timeVisibleConfig = false;
132 this.$emit("close", flag); 191 this.$emit("close", flag);
133 }, 192 },
134 }, 193 },
......
1 +<template>
2 + <el-dialog
3 + class="entryDialog classCUploadDialog"
4 + title="重量调整"
5 + :visible.sync="batchModifyVisible"
6 + :show-close="false"
7 + width="450px"
8 + :close-on-click-modal="false"
9 + >
10 + <div>
11 + <el-form
12 + class="fedexFormStyle"
13 + ref="batchModifyForm"
14 + :model="batchModifyFormData"
15 + :rules="batchModifyFormRules"
16 + label-position="left"
17 + size="small"
18 + >
19 + <Formitem label="提运单号" prop="modifyContent">
20 + <el-input
21 + type="text"
22 + class="inputShadow"
23 + resize="none"
24 + v-model="batchModifyFormData.modifyContent"
25 + clearable
26 + placeholder="请输入提运单号"
27 + ></el-input>
28 + </Formitem>
29 + <Formitem label="件数" prop="modifyContent">
30 + <el-input
31 + type="text"
32 + class="inputShadow"
33 + resize="none"
34 + v-model="batchModifyFormData.modifyContent"
35 + clearable
36 + placeholder="请输入修改内容"
37 + ></el-input>
38 + </Formitem>
39 + <Formitem label="原毛重" prop="modifyContent">
40 + <el-input
41 + type="text"
42 + class="inputShadow"
43 + resize="none"
44 + v-model="batchModifyFormData.modifyContent"
45 + clearable
46 + placeholder="请输入修改内容"
47 + ></el-input>
48 + </Formitem>
49 + <Formitem label="修改后毛重" prop="modifyData">
50 + <el-select
51 + type="text"
52 + v-model="batchModifyFormData.modifyData"
53 + clearable
54 + placeholder=""
55 + >
56 + <el-option
57 + v-for="item in modifyDataList"
58 + :key="item.itemValue"
59 + :label="item.itemChineseName"
60 + :value="item.itemValue"
61 + ></el-option>
62 + </el-select>
63 + </Formitem>
64 + <Formitem label="修改内容" prop="modifyContent">
65 + <el-input
66 + type="text"
67 + class="inputShadow"
68 + resize="none"
69 + v-model="batchModifyFormData.modifyContent"
70 + clearable
71 + placeholder="请输入修改内容"
72 + ></el-input>
73 + </Formitem>
74 + </el-form>
75 + </div>
76 + <div class="dialogOption entrySave revokeOperation">
77 + <el-button
78 + class="entrySaveButton entrySaveButton-background revokeSubmitBtn"
79 + type="primary"
80 + @click="formSubmit"
81 + >确定</el-button
82 + >
83 + <el-button class="entrySaveButton" @click="cancelModify">关闭</el-button>
84 + </div>
85 + </el-dialog>
86 +</template>
87 +
88 +<script>
89 +import { bathDeclareDate } from "@/api/declareData-api.js";
90 +import { getDictData } from "@/api/system/dict-api.js";
91 +export default {
92 + props: {
93 + showDialog: {
94 + type: Boolean,
95 + default: false,
96 + },
97 + selectedDatas: {
98 + type: Array,
99 + default: () => [],
100 + },
101 + },
102 + data() {
103 + return {
104 + batchModifyVisible: false,
105 + batchModifyFormData: {
106 + modifyData: "",
107 + modifyContent: "",
108 + },
109 + batchModifyFormRules: {
110 + modifyData: [
111 + { required: true, message: "请选择修改数据", trigger: "change" },
112 + ],
113 + modifyContent: [
114 + { required: true, message: "请输入修改内容", trigger: "blur" },
115 + ],
116 + },
117 + modifyDataList: [
118 + { name: "提运单号", value: "BILLNO" },
119 + { name: "航班航次号", value: "FLIGHT_NUMBER" },
120 + ],
121 + };
122 + },
123 + watch: {
124 + showDialog(val) {
125 + if (val) {
126 + this.batchModifyVisible = val;
127 + this.batchModifyFormData.modifyData = "";
128 + this.batchModifyFormData.modifyContent = "";
129 + }
130 + },
131 + },
132 + created() {
133 + this.getModifyDataList();
134 + },
135 + methods: {
136 + getModifyDataList() {
137 + getDictData({ doctCode: "DATABASE_FIELD" })
138 + .then((res) => {
139 + if (res.code == "200") {
140 + this.modifyDataList = res.data;
141 + }
142 + })
143 + .catch((err) => {
144 + console.error(err);
145 + });
146 + },
147 + formSubmit() {
148 + this.$refs.batchModifyForm.validate((valid) => {
149 + if (valid) {
150 + let obj = {
151 + declareIds: [],
152 + modifyData: this.batchModifyFormData.modifyData,
153 + modifyContent: this.batchModifyFormData.modifyContent,
154 + };
155 + this.selectedDatas.forEach((item) => {
156 + obj.declareIds.push(item.declareId);
157 + });
158 + console.log("datas==", obj);
159 + bathDeclareDate(obj)
160 + .then((res) => {
161 + if (res.code === "200") {
162 + this.msgSuccess("批量修改成功");
163 + this.cancelModify(1);
164 + } else {
165 + this.alertWarningMsg(res.message);
166 + }
167 + })
168 + .catch((err) => {
169 + console.log(err);
170 + this.alertWarningMsg(err.message);
171 + this.cancelModify(1);
172 + });
173 + } else {
174 + return false;
175 + }
176 + });
177 + },
178 +
179 + cancelModify(val) {
180 + this.batchModifyVisible = false;
181 + this.$emit("cancelBatchModify", val);
182 + },
183 + },
184 +};
185 +</script>
186 +
187 +<style lang="scss" scoped>
188 +@import "@/assets/styles/variables.scss";
189 +.modelItem {
190 + width: 100%;
191 + .modelItem-title {
192 + display: flex;
193 + justify-content: space-between;
194 + margin-bottom: 5px;
195 + font-size: 14px;
196 + font-weight: 600;
197 + color: #333;
198 + }
199 +}
200 +.revokeOperation {
201 + margin-bottom: 25px;
202 + .revokeSubmitBtn {
203 + margin-right: 30px;
204 + }
205 +}
206 +</style>
...@@ -169,10 +169,10 @@ export default { ...@@ -169,10 +169,10 @@ export default {
169 addMenuFn() { 169 addMenuFn() {
170 let params = { 170 let params = {
171 icon: "", 171 icon: "",
172 - menuName: "运抵单申报", 172 + menuName: "HSCODE 管理",
173 - order: 1, 173 + order: 6.2,
174 - parentMenuId: 96, 174 + parentMenuId: 90,
175 - physicalUrl: "/arrival-declare", //-management 175 + physicalUrl: "/hs-code", //-management
176 url: "", 176 url: "",
177 }; 177 };
178 addMenu(params).then((res) => { 178 addMenu(params).then((res) => {
......