jiaxing.zhou

feat(customerConfig): 添加加密方式字段并设置默认值

- 在客户配置对话框中添加加密方式选择框
- 实现加密方式的默认值设置功能
- 更新权限管理,加载新的字典项
...@@ -8,7 +8,7 @@ const whiteList = ['/login', '/auth-redirect', '/bind', '/register', '/relogin'] ...@@ -8,7 +8,7 @@ const whiteList = ['/login', '/auth-redirect', '/bind', '/register', '/relogin']
8 8
9 9
10 router.beforeEach((to, from, next) => { 10 router.beforeEach((to, from, next) => {
11 - 11 +
12 if (to.path == '/relogin') { 12 if (to.path == '/relogin') {
13 next() 13 next()
14 } else { 14 } else {
...@@ -24,7 +24,7 @@ router.beforeEach((to, from, next) => { ...@@ -24,7 +24,7 @@ router.beforeEach((to, from, next) => {
24 store.dispatch('GetInfo').then((res) => { 24 store.dispatch('GetInfo').then((res) => {
25 // if (res.success) { 25 // if (res.success) {
26 store.dispatch('GenerateRoutes').then(accessRoutes => { 26 store.dispatch('GenerateRoutes').then(accessRoutes => {
27 - store.dispatch("GetDict", ['DECLARE_F_FLAG', 'MEASUREMENT_UNIT','TEMPLATE_TYPE','PACKAGE_TYPE_CODE', 'RECEIPT_STATUS', 'DECLARE_APPTYPE', 'CURRENCY','COUNTRY_REGION_CODE', 'DECLARE_STATISTICS_FLAG', 'ORDER_DECLARATION_PARTY','APP_STATUS']); 27 + store.dispatch("GetDict", ['DECLARE_F_FLAG', 'MEASUREMENT_UNIT','TEMPLATE_TYPE','PACKAGE_TYPE_CODE', 'RECEIPT_STATUS', 'DECLARE_APPTYPE', 'CURRENCY','COUNTRY_REGION_CODE', 'DECLARE_STATISTICS_FLAG', 'ORDER_DECLARATION_PARTY','APP_STATUS','METHOD_OF_SIGNATURE']);
28 // 根据roles权限生成可访问的路由表 28 // 根据roles权限生成可访问的路由表
29 router.addRoutes(accessRoutes) // 动态添加可访问路由表 29 router.addRoutes(accessRoutes) // 动态添加可访问路由表
30 next({ ...to, replace: true }) // hack方法 确保addRoutes已完成 30 next({ ...to, replace: true }) // hack方法 确保addRoutes已完成
......
...@@ -76,12 +76,6 @@ ...@@ -76,12 +76,6 @@
76 maxlength="4" 76 maxlength="4"
77 placeholder="" 77 placeholder=""
78 > 78 >
79 - <!-- <el-option
80 - v-for="(item, index) in dict.orderRequester"
81 - :key="index"
82 - :label="item.name"
83 - :value="item.value"
84 - ></el-option> -->
85 <el-option 79 <el-option
86 v-for="(item, index) in $store.getters.dict.ORDER_DECLARATION_PARTY" 80 v-for="(item, index) in $store.getters.dict.ORDER_DECLARATION_PARTY"
87 :key="index" 81 :key="index"
...@@ -91,7 +85,26 @@ ...@@ -91,7 +85,26 @@
91 </el-select> 85 </el-select>
92 </Formitem> 86 </Formitem>
93 </el-col> 87 </el-col>
94 - 88 + <!-- 加密方式 -->
89 + <el-col :span="8">
90 + <Formitem label="加密方式" prop="methodOfSignature" type="edit">
91 + <el-select
92 + type="text"
93 + id="inputInner-edit-methodOfSignature"
94 + v-model="formData.methodOfSignature"
95 + clearable
96 + maxlength="4"
97 + placeholder=""
98 + >
99 + <el-option
100 + v-for="(item, index) in $store.getters.dict.METHOD_OF_SIGNATURE"
101 + :key="index"
102 + :label="item.itemChineseName"
103 + :value="item.itemValue"
104 + ></el-option>
105 + </el-select>
106 + </Formitem>
107 + </el-col>
95 </el-row> 108 </el-row>
96 <div v-if="formData.orderRequester=='2'"> 109 <div v-if="formData.orderRequester=='2'">
97 <div class="checkTitle"> 110 <div class="checkTitle">
...@@ -220,7 +233,7 @@ ...@@ -220,7 +233,7 @@
220 class="el-icon-user-solid" 233 class="el-icon-user-solid"
221 icon-class="exl" 234 icon-class="exl"
222 style="font-size: 18px; color: #de002e" 235 style="font-size: 18px; color: #de002e"
223 - /> 236 + />
224 <Tooltip 237 <Tooltip
225 :content="formData.qingdaoFile ? formData.qingdaoFile.name : formData.qingdaoCertificatePath.split('/').pop()" 238 :content="formData.qingdaoFile ? formData.qingdaoFile.name : formData.qingdaoCertificatePath.split('/').pop()"
226 :refName="formData.qingdaoFile ? formData.qingdaoFile.name : formData.qingdaoCertificatePath.split('/').pop()" 239 :refName="formData.qingdaoFile ? formData.qingdaoFile.name : formData.qingdaoCertificatePath.split('/').pop()"
...@@ -414,6 +427,7 @@ export default { ...@@ -414,6 +427,7 @@ export default {
414 ecomEntEmail: "", 427 ecomEntEmail: "",
415 ecomEntName: "", 428 ecomEntName: "",
416 orderRequester: "", 429 orderRequester: "",
430 + methodOfSignature: this.getDefaultMethodOfSignature(), // 设置默认值
417 certificateSerialNumber: "", 431 certificateSerialNumber: "",
418 certificateIndexNumber: "", 432 certificateIndexNumber: "",
419 qingdaoKey: "", 433 qingdaoKey: "",
...@@ -421,6 +435,7 @@ export default { ...@@ -421,6 +435,7 @@ export default {
421 qingdaoDanyiUserDxpid:"", 435 qingdaoDanyiUserDxpid:"",
422 qingdaoUserId: "", 436 qingdaoUserId: "",
423 qdCheck: false, 437 qdCheck: false,
438 + methodOfSignatureCheck: false,
424 bjCheck: false, 439 bjCheck: false,
425 checkboxState:"",//后端要求 北京 和青岛 用这种方式传 第一个是青岛 第二个是北京 440 checkboxState:"",//后端要求 北京 和青岛 用这种方式传 第一个是青岛 第二个是北京
426 file: null, 441 file: null,
...@@ -440,7 +455,7 @@ export default { ...@@ -440,7 +455,7 @@ export default {
440 trigger: "blur", 455 trigger: "blur",
441 message: "电商企业名称不能为空!", 456 message: "电商企业名称不能为空!",
442 }, 457 },
443 - 458 +
444 ], 459 ],
445 orderRequester: [ 460 orderRequester: [
446 { 461 {
...@@ -449,6 +464,13 @@ export default { ...@@ -449,6 +464,13 @@ export default {
449 message: "订单申报方不能为空!", 464 message: "订单申报方不能为空!",
450 }, 465 },
451 ], 466 ],
467 + methodOfSignature: [
468 + {
469 + required: true,
470 + trigger: "change",
471 + message: "加密方式不能为空!",
472 + },
473 + ],
452 // declarationUnit18: [ 474 // declarationUnit18: [
453 // { 475 // {
454 // required: true, 476 // required: true,
...@@ -515,8 +537,39 @@ export default { ...@@ -515,8 +537,39 @@ export default {
515 } 537 }
516 } 538 }
517 }, 539 },
540 + type(newVal) {
541 + if (newVal === "add") {
542 + this.setDefaultMethodOfSignature(); // 确保默认值被设置
543 + }
544 + },
545 + },
546 + created() {
547 + // 确保字典数据已加载
548 + if (this.$store.getters.dict.METHOD_OF_SIGNATURE.length > 0) {
549 + this.setDefaultMethodOfSignature();
550 + } else {
551 + // 监听字典数据变化
552 + this.$store.watch(
553 + (state) => state.dict.METHOD_OF_SIGNATURE,
554 + (newVal) => {
555 + if (newVal.length > 0) {
556 + this.setDefaultMethodOfSignature();
557 + }
558 + }
559 + );
560 + }
518 }, 561 },
519 methods: { 562 methods: {
563 + getDefaultMethodOfSignature() {
564 + const methodOfSignatureDict = this.$store.getters.dict.METHOD_OF_SIGNATURE;
565 + if (methodOfSignatureDict.length > 0) {
566 + return methodOfSignatureDict[0].itemValue;
567 + }
568 + return "";
569 + },
570 + setDefaultMethodOfSignature() {
571 + this.formData.methodOfSignature = this.getDefaultMethodOfSignature();
572 + },
520 changeQDCheckBox(){ 573 changeQDCheckBox(){
521 this.$forceUpdate() 574 this.$forceUpdate()
522 if(!this.formData.qdCheck){ 575 if(!this.formData.qdCheck){
...@@ -557,7 +610,7 @@ export default { ...@@ -557,7 +610,7 @@ export default {
557 fileUpload({ file }) { 610 fileUpload({ file }) {
558 611
559 const reader = new FileReader(); 612 const reader = new FileReader();
560 - reader.readAsDataURL(file); 613 + reader.readAsDataURL(file);
561 reader.onload = (e) => { 614 reader.onload = (e) => {
562 console.log(e); 615 console.log(e);
563 let obj = { 616 let obj = {
...@@ -566,12 +619,12 @@ export default { ...@@ -566,12 +619,12 @@ export default {
566 }; 619 };
567 this.formData.file = obj; 620 this.formData.file = obj;
568 }; 621 };
569 - 622 +
570 }, 623 },
571 qingdaoFileUpload({ file }) { 624 qingdaoFileUpload({ file }) {
572 625
573 const reader = new FileReader(); 626 const reader = new FileReader();
574 - reader.readAsDataURL(file); 627 + reader.readAsDataURL(file);
575 reader.onload = (e) => { 628 reader.onload = (e) => {
576 console.log(e); 629 console.log(e);
577 let obj = { 630 let obj = {
...@@ -580,7 +633,7 @@ export default { ...@@ -580,7 +633,7 @@ export default {
580 }; 633 };
581 this.formData.qingdaoFile = obj; 634 this.formData.qingdaoFile = obj;
582 }; 635 };
583 - 636 +
584 }, 637 },
585 fileChange(val) {}, 638 fileChange(val) {},
586 qingdaoFileChange(val) {}, 639 qingdaoFileChange(val) {},
...@@ -695,13 +748,13 @@ export default { ...@@ -695,13 +748,13 @@ export default {
695 if (res.code === "200") { 748 if (res.code === "200") {
696 if (this.formData.file) { 749 if (this.formData.file) {
697 this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file,this.formData.file.name)); 750 this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file,this.formData.file.name));
698 - } 751 + }
699 if (this.formData.qingdaoFile) { 752 if (this.formData.qingdaoFile) {
700 this.uploadQingdaoCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.qingdaoFile.file,this.formData.qingdaoFile.name)); 753 this.uploadQingdaoCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.qingdaoFile.file,this.formData.qingdaoFile.name));
701 - } 754 + }
702 this.msgSuccess("客户添加成功!"); 755 this.msgSuccess("客户添加成功!");
703 this.close(); 756 this.close();
704 - 757 +
705 } else { 758 } else {
706 this.alertWarningMsg(res.message); 759 this.alertWarningMsg(res.message);
707 this.loadings.dialogLoading = false; 760 this.loadings.dialogLoading = false;
...@@ -713,7 +766,7 @@ export default { ...@@ -713,7 +766,7 @@ export default {
713 }); 766 });
714 }, 767 },
715 uploadCertificate(ecomEntCode, file) { 768 uploadCertificate(ecomEntCode, file) {
716 - 769 +
717 uploadCertificate(ecomEntCode, file) 770 uploadCertificate(ecomEntCode, file)
718 .then((uploadRes) => { 771 .then((uploadRes) => {
719 if (uploadRes.code === "200") { 772 if (uploadRes.code === "200") {
...@@ -731,7 +784,7 @@ export default { ...@@ -731,7 +784,7 @@ export default {
731 }, 784 },
732 785
733 uploadQingdaoCertificate(ecomEntCode, file) { 786 uploadQingdaoCertificate(ecomEntCode, file) {
734 - 787 +
735 uploadQingdaoCertificate(ecomEntCode, file) 788 uploadQingdaoCertificate(ecomEntCode, file)
736 .then((uploadRes) => { 789 .then((uploadRes) => {
737 if (uploadRes.code === "200") { 790 if (uploadRes.code === "200") {
...@@ -762,7 +815,7 @@ export default { ...@@ -762,7 +815,7 @@ export default {
762 } 815 }
763 this.msgSuccess("客户修改成功!"); 816 this.msgSuccess("客户修改成功!");
764 this.close(); 817 this.close();
765 - 818 +
766 } else { 819 } else {
767 this.alertWarningMsg(res.message); 820 this.alertWarningMsg(res.message);
768 this.loadings.dialogLoading = false; 821 this.loadings.dialogLoading = false;
...@@ -785,7 +838,7 @@ export default { ...@@ -785,7 +838,7 @@ export default {
785 this.formData.qdCheck=checkboxStateBooleans[0]; 838 this.formData.qdCheck=checkboxStateBooleans[0];
786 this.formData.bjCheck=checkboxStateBooleans[1]; 839 this.formData.bjCheck=checkboxStateBooleans[1];
787 } 840 }
788 - 841 +
789 }, 842 },
790 close() { 843 close() {
791 this.formData = { 844 this.formData = {
...@@ -797,6 +850,7 @@ export default { ...@@ -797,6 +850,7 @@ export default {
797 ecomEntEmail: "", 850 ecomEntEmail: "",
798 ecomEntName: "", 851 ecomEntName: "",
799 orderRequester: "", 852 orderRequester: "",
853 + methodOfSignature: this.getDefaultMethodOfSignature(), // 重置默认值
800 certificateSerialNumber: "", 854 certificateSerialNumber: "",
801 certificateIndexNumber: "", 855 certificateIndexNumber: "",
802 qingdaoKey: "", 856 qingdaoKey: "",
......