xingru.liu

Bug修复

1 import request from '@/utils/request' 1 import request from '@/utils/request'
2 2
3 -// 获取路由 3 +// 获取路由所有路由
4 export const getRouters = () => { 4 export const getRouters = () => {
5 return request({ 5 return request({
6 url: '/bus-customer/menu/selectMenu', 6 url: '/bus-customer/menu/selectMenu',
...@@ -8,3 +8,10 @@ export const getRouters = () => { ...@@ -8,3 +8,10 @@ export const getRouters = () => {
8 }) 8 })
9 } 9 }
10 10
11 +//获取用户可访问的路由
12 +export const getUserRouters = () => {
13 + return request({
14 + url: '/bus-customer/obtainUserRights',
15 + method: 'post'
16 + })
17 +}
......
1 import request from '@/utils/request' 1 import request from '@/utils/request'
2 +import axios from "axios";
3 +
4 +const baseUrl = process.env.VUE_APP_BASE_API; //接口地址
2 5
3 // 查询客户数据 6 // 查询客户数据
4 /** 7 /**
...@@ -56,15 +59,62 @@ export function addCustomerData(data) { ...@@ -56,15 +59,62 @@ export function addCustomerData(data) {
56 //上传证书 59 //上传证书
57 export function uploadCertificate(ecomEntCode, certificate) { 60 export function uploadCertificate(ecomEntCode, certificate) {
58 const formData = new FormData(); 61 const formData = new FormData();
59 - formData.append('certificate', certificate.multipartFile); 62 + formData.append('certificate', certificate);
60 - 63 + formData.append('ecomEntCode', ecomEntCode);
61 return request({ 64 return request({
62 - url: '/bus-customer/customers/uploadCertificate?ecomEntCode=' + ecomEntCode, 65 + url: '/bus-customer/customers/uploadCertificate',
63 method: 'post', 66 method: 'post',
64 data: formData, 67 data: formData,
65 - headers: { 68 + });
66 - 'Content-Type': 'multipart/form-data' 69 +}
67 - } 70 +
71 +//删除证书
72 +export function delCertificate(id, certificate) {
73 +
74 + return request({
75 + url: '/bus-customer/customers/deleteCertificate',
76 + method: 'post',
77 + params: {id:id,certificate:certificate},
78 + });
79 +}
80 +
81 +//下载证书
82 +export function downloadCertificate(id,filename) {
83 +
84 + // return request({
85 + // url: '/bus-customer/customers/getCertificate/' + id,
86 + // method: 'get',
87 + // responseType: 'blob', // 确保响应类型为 blob
88 + // // data: formData,
89 + // });
90 + console.log("fileName"+filename);
91 + return new Promise((resolve, reject) => {
92 + // axios({
93 + // method: "get",
94 + // url: '/bus-customer/customers/getCertificate/' + id,
95 + // responseType: "blob",
96 + // })
97 + var url = baseUrl + '/bus-customer/customers/getCertificate/'+id;
98 + request({
99 + url: url,
100 + method: 'get',
101 + responseType: 'blob', // 确保响应类型为 blob
102 + params: id,
103 + })
104 + .then((res) => {
105 + console.log("aaaaaa"+res);
106 + const aLink = document.createElement("a");
107 + aLink.href = URL.createObjectURL(res);
108 + aLink.setAttribute("download", filename); // 设置下载文件名称
109 + document.body.appendChild(aLink);
110 + aLink.click();
111 + document.body.removeChild(aLink);
112 + resolve(res);
113 +
114 + })
115 + .catch((err) => {
116 + reject(err);
117 + });
68 }); 118 });
69 } 119 }
70 120
...@@ -98,7 +148,7 @@ export function updateCustomerData(data) { ...@@ -98,7 +148,7 @@ export function updateCustomerData(data) {
98 // formData.append("qingdaoUserId", data.qingdaoUserId); 148 // formData.append("qingdaoUserId", data.qingdaoUserId);
99 return request({ 149 return request({
100 url: '/bus-customer/customers/update', 150 url: '/bus-customer/customers/update',
101 - method: 'post', 151 + method: 'put',
102 data: data 152 data: data
103 }) 153 })
104 } 154 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -51,3 +51,15 @@ export function updatePortData(data) { ...@@ -51,3 +51,15 @@ export function updatePortData(data) {
51 data: data 51 data: data
52 }) 52 })
53 } 53 }
54 +
55 +// 获取口岸字典
56 +/**
57 + * @param
58 + */
59 +export function getPortCodeList() {
60 + return request({
61 + url: '/bus-customer/portInfo/getPortCodeList',
62 + method: 'get',
63 + // params: data
64 + })
65 + }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -119,13 +119,13 @@ export function updateUserData(data) { ...@@ -119,13 +119,13 @@ export function updateUserData(data) {
119 */ 119 */
120 export function updateUserRoleChange(data) { 120 export function updateUserRoleChange(data) {
121 return request({ 121 return request({
122 - url: '/bus-customer/user/updateUser', 122 + url: '/bus-customer/user/roleEditing',
123 method: 'put', 123 method: 'put',
124 data: data 124 data: data
125 }) 125 })
126 } 126 }
127 127
128 -// 获取口岸字典 128 +// 获取用户口岸字典
129 /** 129 /**
130 * @param 130 * @param
131 */ 131 */
...@@ -160,3 +160,15 @@ export function getUserRoleType(data) { ...@@ -160,3 +160,15 @@ export function getUserRoleType(data) {
160 params: data 160 params: data
161 }) 161 })
162 } 162 }
163 +/**
164 + * 获取role已绑定的Menue
165 + * @param {} roleId
166 + * @returns
167 + */
168 +export function getMenuByRoleId(roleId) {
169 + return request({
170 + url: '/bus-customer/role/selectMenu?roleId='+roleId,
171 + method: 'get',
172 + // params: data
173 + })
174 +}
......
...@@ -72,6 +72,13 @@ export const constantRoutes = [ ...@@ -72,6 +72,13 @@ export const constantRoutes = [
72 // name: '首页', 72 // name: '首页',
73 // meta: { title: '首页', icon: 'dashboard' } 73 // meta: { title: '首页', icon: 'dashboard' }
74 // }, 74 // },
75 + // {
76 + // path: '/customerConfig',
77 + // component: (resolve) => require(['@/views/customerConfig/index'], resolve),
78 + // hidden: false,
79 + // name: 'CustomerConfig',
80 + // meta: { title: '客户管理', icon: '' }
81 + // },
75 // ] 82 // ]
76 // }, 83 // },
77 { 84 {
...@@ -86,7 +93,8 @@ export const constantRoutes = [ ...@@ -86,7 +93,8 @@ export const constantRoutes = [
86 hidden: false, 93 hidden: false,
87 name: 'ReportingData', 94 name: 'ReportingData',
88 meta: { title: '申报数据管理', icon: 'upload' } 95 meta: { title: '申报数据管理', icon: 'upload' }
89 - } 96 + },
97 +
90 ] 98 ]
91 }, 99 },
92 { 100 {
...@@ -95,13 +103,13 @@ export const constantRoutes = [ ...@@ -95,13 +103,13 @@ export const constantRoutes = [
95 hidden: false, 103 hidden: false,
96 meta: { title: '查询管理', icon: 'fedexExportIcon' }, 104 meta: { title: '查询管理', icon: 'fedexExportIcon' },
97 children: [ 105 children: [
98 - { 106 + // {
99 - path: '/exportBillQuery', 107 + // path: '/exportBillQuery',
100 - component: (resolve) => require(['@/views/exportBillQuery/index'], resolve), 108 + // component: (resolve) => require(['@/views/exportBillQuery/index'], resolve),
101 - hidden: false, 109 + // hidden: false,
102 - name: 'ExportBillQuery', 110 + // name: 'ExportBillQuery',
103 - meta: { title: '出口订单查询', icon: '' }, 111 + // meta: { title: '出口订单查询', icon: '' },
104 - }, 112 + // },
105 { 113 {
106 path: '/exportBillDetail', 114 path: '/exportBillDetail',
107 component: (resolve) => require(['@/views/exportBillDetail/index'], resolve), 115 component: (resolve) => require(['@/views/exportBillDetail/index'], resolve),
...@@ -123,27 +131,27 @@ export const constantRoutes = [ ...@@ -123,27 +131,27 @@ export const constantRoutes = [
123 name: 'ExportListDetail', 131 name: 'ExportListDetail',
124 meta: { title: '出口清单详情', icon: '' }, 132 meta: { title: '出口清单详情', icon: '' },
125 }, 133 },
126 - { 134 + // {
127 - path: '/exportTransportBillQuery', 135 + // path: '/exportTransportBillQuery',
128 - component: (resolve) => require(['@/views/exportTransportBillQuery/index'], resolve), 136 + // component: (resolve) => require(['@/views/exportTransportBillQuery/index'], resolve),
129 - hidden: false, 137 + // hidden: false,
130 - name: 'ExportTransportBillQuery', 138 + // name: 'ExportTransportBillQuery',
131 - meta: { title: '出口运单查询', icon: '' }, 139 + // meta: { title: '出口运单查询', icon: '' },
132 - }, 140 + // },
133 - { 141 + // {
134 - path: '/exportListQuery', 142 + // path: '/exportListQuery',
135 - component: (resolve) => require(['@/views/exportListQuery/index'], resolve), 143 + // component: (resolve) => require(['@/views/exportListQuery/index'], resolve),
136 - name: '首页', 144 + // name: '首页',
137 - name: 'ExportListQuery', 145 + // name: 'ExportListQuery',
138 - meta: { title: '出口清单查询', icon: '' } 146 + // meta: { title: '出口清单查询', icon: '' }
139 - }, 147 + // },
140 - { 148 + // {
141 - path: '/listBranchQuery', 149 + // path: '/listBranchQuery',
142 - component: (resolve) => require(['@/views/listBranchQuery/index'], resolve), 150 + // component: (resolve) => require(['@/views/listBranchQuery/index'], resolve),
143 - name: 'ListBranchQuery', 151 + // name: 'ListBranchQuery',
144 - hidden: false, 152 + // hidden: false,
145 - meta: { title: '清单总分单查询', icon: '' } 153 + // meta: { title: '清单总分单查询', icon: '' }
146 - }, 154 + // },
147 { 155 {
148 path: '/listBranchDetail', 156 path: '/listBranchDetail',
149 component: (resolve) => require(['@/views/listBranchDetail/index'], resolve), 157 component: (resolve) => require(['@/views/listBranchDetail/index'], resolve),
...@@ -158,85 +166,85 @@ export const constantRoutes = [ ...@@ -158,85 +166,85 @@ export const constantRoutes = [
158 hidden: true, 166 hidden: true,
159 meta: { title: '物流离境单详情', icon: '' } 167 meta: { title: '物流离境单详情', icon: '' }
160 }, 168 },
161 - { 169 + // {
162 - path: '/logisticsExitQuery', 170 + // path: '/logisticsExitQuery',
163 - component: (resolve) => require(['@/views/logisticsExitQuery/index'], resolve), 171 + // component: (resolve) => require(['@/views/logisticsExitQuery/index'], resolve),
164 - name: 'LogisticsExitQuery', 172 + // name: 'LogisticsExitQuery',
165 - meta: { title: '物流离境单查询', icon: '' } 173 + // meta: { title: '物流离境单查询', icon: '' }
166 - }, 174 + // },
167 - { 175 + // {
168 - path: 'exportRevokeBillQuery', 176 + // path: 'exportRevokeBillQuery',
169 - component: (resolve) => require(['@/views/exportRevokeBillQuery/index'], resolve), 177 + // component: (resolve) => require(['@/views/exportRevokeBillQuery/index'], resolve),
170 - name: 'ExportRevokeBillQuery', 178 + // name: 'ExportRevokeBillQuery',
171 - meta: { title: '出口撤销单查询', icon: '' } 179 + // meta: { title: '出口撤销单查询', icon: '' }
172 - } 180 + // }
173 - ]
174 - },
175 - {
176 - path: '/summary',
177 - component: Layout,
178 - hidden: false,
179 - meta: { title: '汇总申报', icon: 'fedexSummary' },
180 - children: [
181 - {
182 - path: '/summary',
183 - component: (resolve) => require(['@/views/summaryEdit/index'], resolve),
184 - hidden: false,
185 - name: 'Summary',
186 - meta: { title: '汇总申报', icon: '' }
187 - },
188 - {
189 - path: '/summaryDataSearch',
190 - component: (resolve) => require(['@/views/summaryDataSearch/index'], resolve),
191 - hidden: false,
192 - name: 'SummaryDataSearch',
193 - meta: { title: '汇总申请单查询', icon: '' }
194 - }
195 - ]
196 - },
197 - {
198 - path: '/system',
199 - component: Layout,
200 - hidden: false,
201 - meta: { title: '系统管理', icon: 'fedexQueue' },
202 - children: [
203 - {
204 - path: '/portConfig',
205 - component: (resolve) => require(['@/views/portConfig/index'], resolve),
206 - hidden: false,
207 - name: 'PortConfig',
208 - meta: { title: '口岸信息管理', icon: '' }
209 - },
210 - {
211 - path: '/customerConfig',
212 - component: (resolve) => require(['@/views/customerConfig/index'], resolve),
213 - hidden: false,
214 - name: 'CustomerConfig',
215 - meta: { title: '客户管理', icon: '' }
216 - },
217 - {
218 - path: '/cipherMachineConfig',
219 - component: (resolve) => require(['@/views/cipherMachineConfig/index'], resolve),
220 - hidden: false,
221 - name: 'CipherMachineConfig',
222 - meta: { title: '密码机管理', icon: '' }
223 - },
224 - {
225 - path: '/userRoleConfig',
226 - component: (resolve) => require(['@/views/userRoleConfig/index'], resolve),
227 - hidden: false,
228 - name: 'UserRoleConfig',
229 - meta: { title: '用户管理权限', icon: '' }
230 - },
231 - {
232 - path: '/roleConfig',
233 - component: (resolve) => require(['@/views/roleConfig/index'], resolve),
234 - hidden: false,
235 - name: 'RoleConfig',
236 - meta: { title: '角色管理权限', icon: '' }
237 - },
238 ] 181 ]
239 }, 182 },
183 + // {
184 + // path: '/summary',
185 + // component: Layout,
186 + // hidden: false,
187 + // meta: { title: '汇总申报', icon: 'fedexSummary' },
188 + // children: [
189 + // {
190 + // path: '/summary',
191 + // component: (resolve) => require(['@/views/summaryEdit/index'], resolve),
192 + // hidden: false,
193 + // name: 'Summary',
194 + // meta: { title: '汇总申报', icon: '' }
195 + // },
196 + // {
197 + // path: '/summaryDataSearch',
198 + // component: (resolve) => require(['@/views/summaryDataSearch/index'], resolve),
199 + // hidden: false,
200 + // name: 'SummaryDataSearch',
201 + // meta: { title: '汇总申请单查询', icon: '' }
202 + // }
203 + // ]
204 + // },
205 + // {
206 + // path: '/system',
207 + // component: Layout,
208 + // hidden: false,
209 + // meta: { title: '系统管理', icon: 'fedexQueue' },
210 + // children: [
211 + // {
212 + // path: '/portConfig',
213 + // component: (resolve) => require(['@/views/portConfig/index'], resolve),
214 + // hidden: false,
215 + // name: 'PortConfig',
216 + // meta: { title: '口岸信息管理', icon: '' }
217 + // },
218 + // {
219 + // path: '/customerConfig',
220 + // component: (resolve) => require(['@/views/customerConfig/index'], resolve),
221 + // hidden: false,
222 + // name: 'CustomerConfig',
223 + // meta: { title: '客户管理', icon: '' }
224 + // },
225 + // {
226 + // path: '/cipherMachineConfig',
227 + // component: (resolve) => require(['@/views/cipherMachineConfig/index'], resolve),
228 + // hidden: false,
229 + // name: 'CipherMachineConfig',
230 + // meta: { title: '密码机管理', icon: '' }
231 + // },
232 + // {
233 + // path: '/userRoleConfig',
234 + // component: (resolve) => require(['@/views/userRoleConfig/index'], resolve),
235 + // hidden: false,
236 + // name: 'UserRoleConfig',
237 + // meta: { title: '用户管理权限', icon: '' }
238 + // },
239 + // {
240 + // path: '/roleConfig',
241 + // component: (resolve) => require(['@/views/roleConfig/index'], resolve),
242 + // hidden: false,
243 + // name: 'RoleConfig',
244 + // meta: { title: '角色管理权限', icon: '' }
245 + // },
246 + // ]
247 + // },
240 ] 248 ]
241 249
242 export default new Router({ 250 export default new Router({
......
1 import { constantRoutes } from '@/router' 1 import { constantRoutes } from '@/router'
2 -import { getRouters } from '@/api/menu' 2 +import { getRouters,getUserRouters } from '@/api/menu'
3 import Layout from '@/layout/index' 3 import Layout from '@/layout/index'
4 import ParentView from '@/components/ParentView'; 4 import ParentView from '@/components/ParentView';
5 import { titleCase } from '@/utils/index.js' 5 import { titleCase } from '@/utils/index.js'
...@@ -16,7 +16,7 @@ const permission = { ...@@ -16,7 +16,7 @@ const permission = {
16 mutations: { 16 mutations: {
17 SET_ROUTES: (state, routes) => { 17 SET_ROUTES: (state, routes) => {
18 state.addRoutes = routes 18 state.addRoutes = routes
19 - // state.routes = constantRoutes.concat(routes) 19 + state.routes = constantRoutes.concat(routes)
20 }, 20 },
21 SET_DEFAULT_ROUTES: (state, routes) => { 21 SET_DEFAULT_ROUTES: (state, routes) => {
22 state.defaultRoutes = constantRoutes.concat(routes) 22 state.defaultRoutes = constantRoutes.concat(routes)
...@@ -38,9 +38,9 @@ const permission = { ...@@ -38,9 +38,9 @@ const permission = {
38 async GenerateRoutes({ commit }) { 38 async GenerateRoutes({ commit }) {
39 return new Promise(resolve => { 39 return new Promise(resolve => {
40 // 向后端请求路由数据 40 // 向后端请求路由数据
41 - getRouters().then(res => { 41 + getUserRouters().then(res => {
42 - const sdata = constantRoutes 42 + const sdata = JSON.parse(JSON.stringify(routeItemInfo(res.data)))
43 - const rdata = constantRoutes 43 + const rdata = JSON.parse(JSON.stringify(routeItemInfo(res.data)))
44 const sidebarRoutes = filterAsyncRouter(sdata) 44 const sidebarRoutes = filterAsyncRouter(sdata)
45 const rewriteRoutes = filterAsyncRouter(rdata, false, true) 45 const rewriteRoutes = filterAsyncRouter(rdata, false, true)
46 rewriteRoutes.push({ path: '*', redirect: '/reportingData', hidden: true }) 46 rewriteRoutes.push({ path: '*', redirect: '/reportingData', hidden: true })
...@@ -137,47 +137,76 @@ function setRoute(route, childrens) { ...@@ -137,47 +137,76 @@ function setRoute(route, childrens) {
137 return route 137 return route
138 } 138 }
139 139
140 -//针对出口数据结构特殊处理 140 +function routeItemInfo(data) {
141 -function routeItemInfo(val) { 141 + const routes = [
142 - let arr = val 142 + {
143 - let router = [] 143 + path: '/redirect',
144 - let childrens = [] 144 + component: Layout,
145 - let url = location.origin + '/Emp/#login?token=' + getToken() 145 + hidden: true,
146 - arr.forEach(item => { 146 + children: [
147 - let obj = {} 147 + {
148 - if (item.xtype != 'Emp') { 148 + path: '/redirect/:path(.*)',
149 - obj = { 149 + component: (resolve) => require(['@/views/redirect'], resolve)
150 - children: [], 150 + }
151 - component: item.id == '999999' ? 'Layout' : `/${item.xtype}`, 151 + ]
152 - hidden: item.id == '999999' ? true : false,
153 - id: Number(item.number),
154 - meta: {
155 - title: item.text,
156 - icon: item.icon,
157 }, 152 },
158 - name: item.xtype != null && item.xtype != '' ? item.xtype.indexOf('/') >= 0 ? titleCase(item.xtype.split('/')[1]) : titleCase(item.xtype) : '', 153 + {
159 - parentId: !item.parentId ? 0 : Number(item.parentId), 154 + path: '/404',
160 - path: item.id == '999999' ? '' : !item.parentId ? `/${item.id}` : `${item.id}`, 155 + component: (resolve) => require(['@/views/error/404'], resolve),
161 - // title: item.text, 156 + hidden: true
162 - // icon: item.icon
163 - }
164 - if (obj.path == 'system_appSystemConfigCenter_env' || obj.path == 'system_appSystemConfigCenter_detail') {
165 - obj.hidden = true
166 - }
167 - } else {
168 - obj = {
169 - component: 'Link',
170 - path: url,
171 - meta: {
172 - title: item.text,
173 - icon: item.icon,
174 }, 157 },
158 + {
159 + path: '/401',
160 + component: (resolve) => require(['@/views/error/401'], resolve),
161 + hidden: true
162 + },
163 + {
164 + path: '/login',
165 + component: (resolve) => require(['@/views/login'], resolve),
166 + hidden: true,
167 + meta: { noCache: true }
168 + },
169 + {
170 + path: '/relogin',
171 + component: (resolve) => require(['@/views/redjrectLogin'], resolve),
172 + hidden: true,
173 + meta: { noCache: true, breadcrumb: false }
175 } 174 }
176 - } 175 + ];
177 - item.parentId ? childrens.push(obj) : 176 +
178 - router.push(obj) 177 + data.forEach(item => {
179 - }) 178 + const isParent=item.parentId==0 && item.children.length==0;
180 - return setRoute(router, childrens) 179 + const route = {
180 + path: item.path,
181 + component: "Layout",
182 + alwaysShow: true,
183 + hidden: false,
184 + meta: { title: item.name, icon: item.icon },
185 + children: !isParent ? item.children.map(child => ({
186 + path: child.path,
187 + component: `${child.path}`,
188 + hidden: false,
189 + name: child.name,
190 + meta: { title: child.name, icon: child.icon || '' }
191 + }))
192 + :
193 + [
194 + {
195 + path: item.path,
196 + component: `${item.path}`,
197 + hidden: false,
198 + name: item.name,
199 + meta: { title: item.name, icon: item.icon || '' }
200 + }
201 + ]
202 +
203 +
204 + };
205 + routes.push(route);
206 + });
207 +
208 + console.log(routes);
209 + return routes;
181 } 210 }
182 211
183 export const loadView = (view) => { // 路由懒加载 212 export const loadView = (view) => { // 路由懒加载
......
...@@ -48,6 +48,19 @@ ...@@ -48,6 +48,19 @@
48 ></el-button> 48 ></el-button>
49 </el-form-item> 49 </el-form-item>
50 </el-col> 50 </el-col>
51 + <el-col :span="2">
52 + <!-- 清空查询条件-->
53 + <el-form-item class="textLeft textCenter">
54 + <el-button
55 + type="text"
56 + size="small"
57 + icon="el-icon-refresh"
58 + @click="clear"
59 + >
60 + 重置
61 + </el-button>
62 + </el-form-item>
63 + </el-col>
51 </el-row> 64 </el-row>
52 </el-form> 65 </el-form>
53 <div class="optionButton"> 66 <div class="optionButton">
...@@ -191,8 +204,8 @@ export default { ...@@ -191,8 +204,8 @@ export default {
191 obj.endCreationTime = ""; 204 obj.endCreationTime = "";
192 obj.startCreationTime = ""; 205 obj.startCreationTime = "";
193 if (obj.creationTime.length > 0) { 206 if (obj.creationTime.length > 0) {
194 - obj.endCreationTime = obj.creationTime[0]; 207 + obj.endCreationTime = obj.creationTime[1];
195 - obj.startCreationTime = obj.creationTime[1]; 208 + obj.startCreationTime = obj.creationTime[0];
196 } 209 }
197 getCipherMachineList(obj) 210 getCipherMachineList(obj)
198 .then((res) => { 211 .then((res) => {
...@@ -247,6 +260,12 @@ export default { ...@@ -247,6 +260,12 @@ export default {
247 }); 260 });
248 } 261 }
249 }, 262 },
263 + clear() {
264 + this.sreachFormData={
265 + cipherMachineNumber: "",
266 + creationTime: [],
267 + };
268 + }
250 }, 269 },
251 }; 270 };
252 </script> 271 </script>
......
...@@ -44,7 +44,6 @@ ...@@ -44,7 +44,6 @@
44 resize="none" 44 resize="none"
45 v-model="formData.ecomEntName" 45 v-model="formData.ecomEntName"
46 clearable 46 clearable
47 - maxlength="4"
48 placeholder="" 47 placeholder=""
49 ></el-input> 48 ></el-input>
50 </Formitem> 49 </Formitem>
...@@ -74,26 +73,33 @@ ...@@ -74,26 +73,33 @@
74 id="inputInner-edit-orderRequester" 73 id="inputInner-edit-orderRequester"
75 v-model="formData.orderRequester" 74 v-model="formData.orderRequester"
76 clearable 75 clearable
76 + maxlength="4"
77 placeholder="" 77 placeholder=""
78 > 78 >
79 - <el-option 79 + <!-- <el-option
80 v-for="(item, index) in dict.orderRequester" 80 v-for="(item, index) in dict.orderRequester"
81 :key="index" 81 :key="index"
82 :label="item.name" 82 :label="item.name"
83 :value="item.value" 83 :value="item.value"
84 + ></el-option> -->
85 + <el-option
86 + v-for="(item, index) in $store.getters.dict.ORDER_DECLARATION_PARTY"
87 + :key="index"
88 + :label="item.itemChineseName"
89 + :value="item.itemValue"
84 ></el-option> 90 ></el-option>
85 </el-select> 91 </el-select>
86 </Formitem> 92 </Formitem>
87 </el-col> 93 </el-col>
88 <!-- DXPID --> 94 <!-- DXPID -->
89 <el-col :span="8"> 95 <el-col :span="8">
90 - <Formitem label="DXPID" prop="qingdaoDanyiUserDxpid" type="edit"> 96 + <Formitem label="DXPID" prop="dxpid" type="edit">
91 <el-input 97 <el-input
92 type="text" 98 type="text"
93 class="inputShadow" 99 class="inputShadow"
94 - id="inputInner-edit-qingdaoDanyiUserDxpid" 100 + id="inputInner-edit-dxpid"
95 resize="none" 101 resize="none"
96 - v-model="formData.qingdaoDanyiUserDxpid" 102 + v-model="formData.dxpid"
97 clearable 103 clearable
98 placeholder="" 104 placeholder=""
99 ></el-input> 105 ></el-input>
...@@ -102,7 +108,7 @@ ...@@ -102,7 +108,7 @@
102 </el-row> 108 </el-row>
103 <div v-if="formData.orderRequester=='2'"> 109 <div v-if="formData.orderRequester=='2'">
104 <div class="checkTitle"> 110 <div class="checkTitle">
105 - <el-checkbox v-model="formData.qdCheck"></el-checkbox>青岛 111 + <el-checkbox v-model="formData.qdCheck" @change="changeQDCheckBox()"></el-checkbox>青岛
106 </div> 112 </div>
107 <el-row :gutter="5"> 113 <el-row :gutter="5">
108 <!-- User ID --> 114 <!-- User ID -->
...@@ -135,6 +141,21 @@ ...@@ -135,6 +141,21 @@
135 ></el-input> 141 ></el-input>
136 </Formitem> 142 </Formitem>
137 </el-col> 143 </el-col>
144 + <!-- DXPID -->
145 + <el-col :span="8">
146 + <Formitem label="单一DXPID" prop="qingdaoDanyiUserDxpid" type="edit">
147 + <el-input
148 + type="text"
149 + class="inputShadow"
150 + id="inputInner-edit-qingdaoDanyiUserDxpid"
151 + resize="none"
152 + v-model="formData.qingdaoDanyiUserDxpid"
153 + clearable
154 + placeholder=""
155 + :disabled="!formData.qdCheck"
156 + ></el-input>
157 + </Formitem>
158 + </el-col>
138 <!-- Key --> 159 <!-- Key -->
139 <el-col :span="8"> 160 <el-col :span="8">
140 <Formitem label="Key" prop="qingdaoKey" type="edit"> 161 <Formitem label="Key" prop="qingdaoKey" type="edit">
...@@ -152,7 +173,7 @@ ...@@ -152,7 +173,7 @@
152 </el-col> 173 </el-col>
153 </el-row> 174 </el-row>
154 <div class="checkTitle"> 175 <div class="checkTitle">
155 - <el-checkbox v-model="formData.bjCheck"></el-checkbox>北京 176 + <el-checkbox v-model="formData.bjCheck" @change="changeBJCheckBox()"></el-checkbox>北京
156 </div> 177 </div>
157 <el-row :gutter="5"> 178 <el-row :gutter="5">
158 <!-- DXPID --> 179 <!-- DXPID -->
...@@ -197,17 +218,18 @@ ...@@ -197,17 +218,18 @@
197 > 218 >
198 </el-upload> 219 </el-upload>
199 </div> 220 </div>
200 - <div class="fileList" v-if="formData.file != null"> 221 + <!-- 1{{ formData.file }} -->
222 + <div class="fileList" v-if="formData.file != null || formData.certificare">
201 <div class="fileList-item"> 223 <div class="fileList-item">
202 - <div class="uploadbox-fileName"> 224 + <div class="uploadbox-fileName" >
203 <svg-icon 225 <svg-icon
204 class="el-icon-user-solid" 226 class="el-icon-user-solid"
205 icon-class="exl" 227 icon-class="exl"
206 style="font-size: 18px; color: #de002e" 228 style="font-size: 18px; color: #de002e"
207 /> 229 />
208 <Tooltip 230 <Tooltip
209 - :content="formData.file.name" 231 + :content="formData.file ? formData.file.name : formData.certificare"
210 - :refName="formData.file.name" 232 + :refName="formData.file ? formData.file.name : formData.certificare"
211 /> 233 />
212 </div> 234 </div>
213 <div class="uploadbox-option"> 235 <div class="uploadbox-option">
...@@ -248,6 +270,7 @@ import { ...@@ -248,6 +270,7 @@ import {
248 addCustomerData, 270 addCustomerData,
249 uploadCertificate, 271 uploadCertificate,
250 updateCustomerData, 272 updateCustomerData,
273 + delCertificate
251 } from "@/api/system/customer-ai.js"; 274 } from "@/api/system/customer-ai.js";
252 export default { 275 export default {
253 props: { 276 props: {
...@@ -267,12 +290,12 @@ export default { ...@@ -267,12 +290,12 @@ export default {
267 type: Object, 290 type: Object,
268 default: null, 291 default: null,
269 }, 292 },
270 - dict: { 293 + // dict: {
271 - type: Array, 294 + // type: Array,
272 - default() { 295 + // default() {
273 - return []; 296 + // return [];
274 - }, 297 + // },
275 - }, 298 + // },
276 }, 299 },
277 data() { 300 data() {
278 return { 301 return {
...@@ -285,12 +308,14 @@ export default { ...@@ -285,12 +308,14 @@ export default {
285 ecomEntEmail: "", 308 ecomEntEmail: "",
286 ecomEntName: "", 309 ecomEntName: "",
287 orderRequester: "", 310 orderRequester: "",
288 - qingdaoDanyiUserDxpid: "", 311 + dxpid: "",
289 qingdaoKey: "", 312 qingdaoKey: "",
290 qingdaoUserDxpid: "", 313 qingdaoUserDxpid: "",
314 + qingdaoDanyiUserDxpid:"",
291 qingdaoUserId: "", 315 qingdaoUserId: "",
292 qdCheck: false, 316 qdCheck: false,
293 bjCheck: false, 317 bjCheck: false,
318 + checkboxState:"",//后端要求 北京 和青岛 用这种方式传 第一个是青岛 第二个是北京
294 file: null, 319 file: null,
295 }, 320 },
296 rules: { 321 rules: {
...@@ -307,6 +332,14 @@ export default { ...@@ -307,6 +332,14 @@ export default {
307 trigger: "blur", 332 trigger: "blur",
308 message: "电商企业名称不能为空!", 333 message: "电商企业名称不能为空!",
309 }, 334 },
335 +
336 + ],
337 + orderRequester: [
338 + {
339 + required: true,
340 + trigger: "change",
341 + message: "订单申报方不能为空!",
342 + },
310 ], 343 ],
311 // declarationUnit18: [ 344 // declarationUnit18: [
312 // { 345 // {
...@@ -365,11 +398,31 @@ export default { ...@@ -365,11 +398,31 @@ export default {
365 this.loadings.dialogLoading = false; 398 this.loadings.dialogLoading = false;
366 if (this.type == "update") { 399 if (this.type == "update") {
367 this.formData = this.active; 400 this.formData = this.active;
401 + // this.formData.file=null;
402 + this.parseCheckboxState(this.active.checkboxState);
403 + }else{
404 + this.formData.orderRequester="1";
368 } 405 }
369 } 406 }
370 }, 407 },
371 }, 408 },
372 methods: { 409 methods: {
410 + changeQDCheckBox(){
411 + this.$forceUpdate()
412 + if(!this.formData.qdCheck){
413 + this.formData.qingdaoDanyiUserDxpid="";
414 + this.formData.qingdaoKey="";
415 + this.formData.qingdaoUserDxpid="";
416 + this.formData.qingdaoUserId="";
417 + }
418 + },
419 + changeBJCheckBox(){
420 + this.$forceUpdate()
421 + if(!this.formData.bjCheck){
422 + this.formData.beijingDxpid="";
423 + this.formData.changeBJCheckBox="";
424 + }
425 + },
373 uploadFile() { 426 uploadFile() {
374 this.$refs.uploadFile.$refs["upload-inner"].handleClick(); 427 this.$refs.uploadFile.$refs["upload-inner"].handleClick();
375 }, 428 },
...@@ -386,16 +439,18 @@ export default { ...@@ -386,16 +439,18 @@ export default {
386 // } 439 // }
387 }, 440 },
388 fileUpload({ file }) { 441 fileUpload({ file }) {
389 - if (!(file instanceof File)) { 442 +
390 - console.error('The provided file is not a valid File object.');
391 - return;
392 - }
393 - console.log(file);
394 const reader = new FileReader(); 443 const reader = new FileReader();
395 reader.readAsDataURL(file); 444 reader.readAsDataURL(file);
396 reader.onload = (e) => { 445 reader.onload = (e) => {
397 - this.formData.file = file; 446 + console.log(e);
447 + let obj = {
448 + file: e.target.result,
449 + name:file.name,
398 }; 450 };
451 + this.formData.file = obj;
452 + };
453 +
399 }, 454 },
400 fileChange(val) {}, 455 fileChange(val) {},
401 handleSuccess() {}, 456 handleSuccess() {},
...@@ -405,7 +460,27 @@ export default { ...@@ -405,7 +460,27 @@ export default {
405 }, 460 },
406 //删除文件 461 //删除文件
407 delTypeDFile() { 462 delTypeDFile() {
463 + this.delCertificate();
464 + },
465 + //删除证书
466 + delCertificate(){
467 + if(this.formData.id && this.formData.certificare){
468 + delCertificate(this.formData.id,this.formData.certificare).then((res)=>{
469 + if(res.code==200){
408 this.formData.file = null; 470 this.formData.file = null;
471 + this.formData.certificare="";
472 + // this.msgSuccess("证书删除成功!");
473 + }else{
474 + this.alertErrorMsg("证书删除失败,请联系管理员!");
475 + }
476 + }).catch((err)=>{
477 + console.log(err);
478 + this.alertErrorMsg("证书删除失败,请联系管理员!");
479 + })
480 + }else{
481 + this.formData.file = null;
482 + this.formData.certificare="";
483 + }
409 }, 484 },
410 //查询用户信息详情 485 //查询用户信息详情
411 searchUserData(id) { 486 searchUserData(id) {
...@@ -428,6 +503,7 @@ export default { ...@@ -428,6 +503,7 @@ export default {
428 submit() { 503 submit() {
429 this.loadings.dialogLoading = true; 504 this.loadings.dialogLoading = true;
430 let obj = {}; 505 let obj = {};
506 + this.formData.checkboxState=this.checkboxState();
431 if (this.type == "add") { 507 if (this.type == "add") {
432 this.$refs.formData.validate((valid) => { 508 this.$refs.formData.validate((valid) => {
433 if (valid) { 509 if (valid) {
...@@ -441,7 +517,11 @@ export default { ...@@ -441,7 +517,11 @@ export default {
441 this.$refs.formData.validate((valid) => { 517 this.$refs.formData.validate((valid) => {
442 if (valid) { 518 if (valid) {
443 obj = this.formData; 519 obj = this.formData;
520 + this.clearData(); //清除值
444 this.updateapi(obj); 521 this.updateapi(obj);
522 + if(this.formData.orderRequester==1){
523 + this.delCertificate(); //删除证书
524 + }
445 } else { 525 } else {
446 this.loadings.dialogLoading = false; 526 this.loadings.dialogLoading = false;
447 } 527 }
...@@ -453,11 +533,11 @@ export default { ...@@ -453,11 +533,11 @@ export default {
453 .then((res) => { 533 .then((res) => {
454 if (res.code === "200") { 534 if (res.code === "200") {
455 if (this.formData.file) { 535 if (this.formData.file) {
456 - this.uploadCertificate(val.ecomEntCode, this.formData.file); 536 + this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file,this.formData.file.name));
457 - } else { 537 + }
458 this.msgSuccess("客户添加成功!"); 538 this.msgSuccess("客户添加成功!");
459 this.close(); 539 this.close();
460 - } 540 +
461 } else { 541 } else {
462 this.alertWarningMsg(res.message); 542 this.alertWarningMsg(res.message);
463 this.loadings.dialogLoading = false; 543 this.loadings.dialogLoading = false;
...@@ -469,10 +549,11 @@ export default { ...@@ -469,10 +549,11 @@ export default {
469 }); 549 });
470 }, 550 },
471 uploadCertificate(ecomEntCode, file) { 551 uploadCertificate(ecomEntCode, file) {
552 +
472 uploadCertificate(ecomEntCode, file) 553 uploadCertificate(ecomEntCode, file)
473 .then((uploadRes) => { 554 .then((uploadRes) => {
474 if (uploadRes.code === "200") { 555 if (uploadRes.code === "200") {
475 - this.msgSuccess("客户添加和证书上传成功!"); 556 + // this.msgSuccess("客户添加和证书上传成功!");
476 this.close(); 557 this.close();
477 } else { 558 } else {
478 this.alertWarningMsg(uploadRes.message); 559 this.alertWarningMsg(uploadRes.message);
...@@ -492,11 +573,11 @@ export default { ...@@ -492,11 +573,11 @@ export default {
492 // this.msgSuccess(res.message); 573 // this.msgSuccess(res.message);
493 // this.close(); 574 // this.close();
494 if (this.formData.file) { 575 if (this.formData.file) {
495 - this.uploadCertificate(val.ecomEntCode, this.formData.file); 576 + this.uploadCertificate(val.ecomEntCode, this.base64ConvertFile(this.formData.file.file,this.formData.file.name));
496 - } else { 577 + }
497 this.msgSuccess("客户修改成功!"); 578 this.msgSuccess("客户修改成功!");
498 this.close(); 579 this.close();
499 - } 580 +
500 } else { 581 } else {
501 this.alertWarningMsg(res.message); 582 this.alertWarningMsg(res.message);
502 this.loadings.dialogLoading = false; 583 this.loadings.dialogLoading = false;
...@@ -507,6 +588,20 @@ export default { ...@@ -507,6 +588,20 @@ export default {
507 this.loadings.dialogLoading = false; 588 this.loadings.dialogLoading = false;
508 }); 589 });
509 }, 590 },
591 + //后端要求的
592 + checkboxState() {
593 + return `${this.formData.qdCheck},${this.formData.bjCheck}`;
594 + },
595 + //后端要求的
596 + parseCheckboxState(checkboxStateString) {
597 + if(checkboxStateString){
598 + let checkboxStateArray = checkboxStateString.split(',');
599 + let checkboxStateBooleans = checkboxStateArray.map(value => value === 'true');
600 + this.formData.qdCheck=checkboxStateBooleans[0];
601 + this.formData.bjCheck=checkboxStateBooleans[1];
602 + }
603 +
604 + },
510 close() { 605 close() {
511 this.formData = { 606 this.formData = {
512 id: null, 607 id: null,
...@@ -517,9 +612,10 @@ export default { ...@@ -517,9 +612,10 @@ export default {
517 ecomEntEmail: "", 612 ecomEntEmail: "",
518 ecomEntName: "", 613 ecomEntName: "",
519 orderRequester: "", 614 orderRequester: "",
520 - qingdaoDanyiUserDxpid: "", 615 + dxpid: "",
521 qingdaoKey: "", 616 qingdaoKey: "",
522 qingdaoUserDxpid: "", 617 qingdaoUserDxpid: "",
618 + qingdaoDanyiUserDxpid:"",
523 qingdaoUserId: "", 619 qingdaoUserId: "",
524 qdCheck: false, 620 qdCheck: false,
525 bjCheck: false, 621 bjCheck: false,
...@@ -528,6 +624,20 @@ export default { ...@@ -528,6 +624,20 @@ export default {
528 this.handleRemove(); 624 this.handleRemove();
529 this.$emit("close"); 625 this.$emit("close");
530 }, 626 },
627 + clearData(){
628 + if(this.formData.orderRequester==1){
629 + this.formData.beijingDxpid="";
630 + this.formData.bjCheck="";
631 + this.formData.checkboxState="";
632 + this.formData.qingdaoKey="";
633 + this.formData.qingdaoUserDxpid="";
634 + this.formData.qingdaoDanyiUserDxpid="";
635 + this.formData.qingdaoUserId="";
636 + this.formData.qdCheck="";
637 + this.formData.file=null;
638 + // this.delCertificate(); //删除证书
639 + }
640 + }
531 }, 641 },
532 }; 642 };
533 </script> 643 </script>
......
...@@ -144,7 +144,7 @@ ...@@ -144,7 +144,7 @@
144 <template slot="optionColumn"> 144 <template slot="optionColumn">
145 <el-table-column align="left" label="操作" width="150"> 145 <el-table-column align="left" label="操作" width="150">
146 <template slot-scope="scope"> 146 <template slot-scope="scope">
147 - <el-button type="text" @click="downloadFile(scope.row)"> 147 + <el-button type="text" @click="downloadFile(scope.row)" :disabled="!scope.row.certificare">
148 下载证书 148 下载证书
149 </el-button> 149 </el-button>
150 <el-button type="text" @click="update(scope.row)"> 修改 </el-button> 150 <el-button type="text" @click="update(scope.row)"> 修改 </el-button>
...@@ -157,14 +157,13 @@ ...@@ -157,14 +157,13 @@
157 :title="dialogTitle" 157 :title="dialogTitle"
158 :type="editType" 158 :type="editType"
159 :active="activeData" 159 :active="activeData"
160 - :dict="dict"
161 @close="dialogClose" 160 @close="dialogClose"
162 /> 161 />
163 </div> 162 </div>
164 </template> 163 </template>
165 164
166 <script> 165 <script>
167 -import { getCustomerList } from "@/api/system/customer-ai.js"; 166 +import { getCustomerList,downloadCertificate } from "@/api/system/customer-ai.js";
168 import { getPortList } from "@/api/system/user.js"; 167 import { getPortList } from "@/api/system/user.js";
169 import DialogVue from "./dialog.vue"; 168 import DialogVue from "./dialog.vue";
170 export default { 169 export default {
...@@ -244,12 +243,12 @@ export default { ...@@ -244,12 +243,12 @@ export default {
244 align: "left", 243 align: "left",
245 }, 244 },
246 ], 245 ],
247 - dict: { 246 + // dict: {
248 - orderRequester: [ 247 + // orderRequester: [
249 - { name: "企业", code: "ENTERPRISE_DECLARATION", value: "1" }, 248 + // { name: "企业", code: "ENTERPRISE_DECLARATION", value: "1" },
250 - { name: "FEDEX", code: "FEDEX_DECLARATION", value: "2" }, 249 + // { name: "FEDEX", code: "FEDEX_DECLARATION", value: "2" },
251 - ], 250 + // ],
252 - }, 251 + // },
253 loadings: { 252 loadings: {
254 searchLoading: false, 253 searchLoading: false,
255 }, 254 },
...@@ -319,17 +318,28 @@ export default { ...@@ -319,17 +318,28 @@ export default {
319 }; 318 };
320 }, 319 },
321 //下载证书 320 //下载证书
322 - downloadFile(val) {}, 321 + downloadFile(val) {
322 + downloadCertificate(val.id,val.certificare).then((res)=>{
323 +
324 + }).catch((err)=>{
325 + console.log(err);
326 + this.alertErrorMsg("证书下载失败,请联系管理员!");
327 + })
328 + },
323 addCustomer() { 329 addCustomer() {
324 this.dialogTitle = "新增客户"; 330 this.dialogTitle = "新增客户";
325 this.editType = "add"; 331 this.editType = "add";
326 this.outerVisible = true; 332 this.outerVisible = true;
327 }, 333 },
328 update(val) { 334 update(val) {
335 + let data={
336 + ...val,
337 + file:null
338 + }
329 this.dialogTitle = "修改客户"; 339 this.dialogTitle = "修改客户";
330 this.editType = "update"; 340 this.editType = "update";
331 this.outerVisible = true; 341 this.outerVisible = true;
332 - this.activeData = val; 342 + this.activeData = data;
333 console.log(this.activeData); 343 console.log(this.activeData);
334 }, 344 },
335 dialogClose() { 345 dialogClose() {
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
46 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 46 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
47 :key="index" 47 :key="index"
48 :label="item.itemChineseName" 48 :label="item.itemChineseName"
49 - :value="item.itemCode" 49 + :value="item.itemValue"
50 ></el-option> 50 ></el-option>
51 </el-select> 51 </el-select>
52 </Formitem> 52 </Formitem>
......
...@@ -661,13 +661,13 @@ ...@@ -661,13 +661,13 @@
661 </el-col> 661 </el-col>
662 <!-- 申报时间 --> 662 <!-- 申报时间 -->
663 <el-col :span="3"> 663 <el-col :span="3">
664 - <Formitem label="报送时间" prop="appTimeStr"> 664 + <Formitem label="报送时间" prop="appTime">
665 <el-input 665 <el-input
666 type="text" 666 type="text"
667 class="inputShadow" 667 class="inputShadow"
668 - id="inputInner--appTimeStr" 668 + id="inputInner--appTime"
669 resize="none" 669 resize="none"
670 - v-model="formData.appTimeStr" 670 + v-model="formData.appTime"
671 clearable 671 clearable
672 placeholder="" 672 placeholder=""
673 ></el-input> 673 ></el-input>
......
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
125 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 125 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
126 :key="index" 126 :key="index"
127 :label="item.itemChineseName" 127 :label="item.itemChineseName"
128 - :value="item.itemCode" 128 + :value="item.itemValue"
129 ></el-option> 129 ></el-option>
130 </el-select> 130 </el-select>
131 </Formitem> 131 </Formitem>
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
42 :key="index" 42 :key="index"
43 :label="item.itemChineseName" 43 :label="item.itemChineseName"
44 - :value="item.itemCode" 44 + :value="item.itemValue"
45 ></el-option> 45 ></el-option>
46 </el-select> 46 </el-select>
47 </Formitem> 47 </Formitem>
...@@ -171,7 +171,7 @@ export default { ...@@ -171,7 +171,7 @@ export default {
171 }, 171 },
172 { 172 {
173 name: "创建时间", 173 name: "创建时间",
174 - value: "createTimeStr", 174 + value: "createTime",
175 width: "", 175 width: "",
176 align: "left", 176 align: "left",
177 }, 177 },
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
46 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 46 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
47 :key="index" 47 :key="index"
48 :label="item.itemChineseName" 48 :label="item.itemChineseName"
49 - :value="item.itemCode" 49 + :value="item.itemValue"
50 ></el-option> 50 ></el-option>
51 </el-select> 51 </el-select>
52 </Formitem> 52 </Formitem>
...@@ -207,7 +207,7 @@ export default { ...@@ -207,7 +207,7 @@ export default {
207 }, 207 },
208 { 208 {
209 name: "创建时间", 209 name: "创建时间",
210 - value: "createTimeStr", 210 + value: "createTime",
211 width: "", 211 width: "",
212 align: "left", 212 align: "left",
213 }, 213 },
......
...@@ -210,13 +210,13 @@ ...@@ -210,13 +210,13 @@
210 </Formitem> 210 </Formitem>
211 </el-col> --> 211 </el-col> -->
212 <el-col :span="3"> 212 <el-col :span="3">
213 - <Formitem label="报送时间" prop="createTimeStr"> 213 + <Formitem label="报送时间" prop="createTime">
214 <el-input 214 <el-input
215 type="text" 215 type="text"
216 class="inputShadow" 216 class="inputShadow"
217 - id="inputInner--createTimeStr" 217 + id="inputInner--createTime"
218 resize="none" 218 resize="none"
219 - v-model="formData.createTimeStr" 219 + v-model="formData.createTime"
220 clearable 220 clearable
221 placeholder="" 221 placeholder=""
222 ></el-input> 222 ></el-input>
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
42 :key="index" 42 :key="index"
43 :label="item.itemChineseName" 43 :label="item.itemChineseName"
44 - :value="item.itemCode" 44 + :value="item.itemValue"
45 ></el-option> 45 ></el-option>
46 </el-select> 46 </el-select>
47 </Formitem> 47 </Formitem>
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 41 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
42 :key="index" 42 :key="index"
43 :label="item.itemChineseName" 43 :label="item.itemChineseName"
44 - :value="item.itemCode" 44 + :value="item.itemValue"
45 ></el-option> 45 ></el-option>
46 </el-select> 46 </el-select>
47 </Formitem> 47 </Formitem>
......
...@@ -128,8 +128,8 @@ ...@@ -128,8 +128,8 @@
128 </template> 128 </template>
129 129
130 <script> 130 <script>
131 -import { getPortConfigList } from "@/api/system/port-api.js"; 131 +import { getPortConfigList,getPortCodeList } from "@/api/system/port-api.js";
132 -import { getPortList } from "@/api/system/user.js"; 132 +// import { getPortList } from "@/api/system/user.js";
133 import DialogVue from "./dialog.vue"; 133 import DialogVue from "./dialog.vue";
134 export default { 134 export default {
135 name: "PortConfig", 135 name: "PortConfig",
...@@ -236,7 +236,7 @@ export default { ...@@ -236,7 +236,7 @@ export default {
236 }, 236 },
237 //获取口岸子字典 237 //获取口岸子字典
238 searchPortDictData() { 238 searchPortDictData() {
239 - getPortList() 239 + getPortCodeList()
240 .then((res) => { 240 .then((res) => {
241 if (res.code === "200") { 241 if (res.code === "200") {
242 this.dict.port = res.data; 242 this.dict.port = res.data;
......
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
102 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS" 102 v-for="(item, index) in $store.getters.dict.RECEIPT_STATUS"
103 :key="index" 103 :key="index"
104 :label="item.itemChineseName" 104 :label="item.itemChineseName"
105 - :value="item.itemCode" 105 + :value="item.itemValue"
106 ></el-option> 106 ></el-option>
107 </el-select> 107 </el-select>
108 </Formitem> 108 </Formitem>
...@@ -186,7 +186,7 @@ ...@@ -186,7 +186,7 @@
186 ref="entryTable" 186 ref="entryTable"
187 :data="tableData" 187 :data="tableData"
188 :headerData="headerData" 188 :headerData="headerData"
189 - :maxHeight="tableMaxheight" 189 + :height="430"
190 :border="true" 190 :border="true"
191 :pagination="true" 191 :pagination="true"
192 :order="false" 192 :order="false"
...@@ -349,7 +349,7 @@ export default { ...@@ -349,7 +349,7 @@ export default {
349 }, 349 },
350 { 350 {
351 name: "电商企业", 351 name: "电商企业",
352 - value: "ebccode", 352 + value: "ecomEntName",
353 width: "", 353 width: "",
354 align: "left", 354 align: "left",
355 }, 355 },
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
6 :show-close="false" 6 :show-close="false"
7 width="25%" 7 width="25%"
8 :close-on-click-modal="false" 8 :close-on-click-modal="false"
9 + :destroy-on-close="true"
9 v-loading="loadings.dialogLoading" 10 v-loading="loadings.dialogLoading"
10 @close="close" 11 @close="close"
11 > 12 >
...@@ -67,6 +68,7 @@ import { ...@@ -67,6 +68,7 @@ import {
67 addRoleData, 68 addRoleData,
68 updateRoleData, 69 updateRoleData,
69 updateRoleMenuData, 70 updateRoleMenuData,
71 + getMenuByRoleId,
70 } from "@/api/system/user.js"; 72 } from "@/api/system/user.js";
71 import { getRouters } from "@/api/menu"; 73 import { getRouters } from "@/api/menu";
72 export default { 74 export default {
...@@ -134,6 +136,7 @@ export default { ...@@ -134,6 +136,7 @@ export default {
134 } else if (this.type == "menuChange") { 136 } else if (this.type == "menuChange") {
135 this.formData = this.active; 137 this.formData = this.active;
136 this.searchTreeData(); 138 this.searchTreeData();
139 + this.loadCheckedKeys();//加载已绑定的菜单
137 } 140 }
138 } 141 }
139 }, 142 },
...@@ -284,8 +287,27 @@ export default { ...@@ -284,8 +287,27 @@ export default {
284 this.formData = { 287 this.formData = {
285 roleName: "", 288 roleName: "",
286 }; 289 };
290 + this.checkedKeys = []
287 this.$emit("close"); 291 this.$emit("close");
288 }, 292 },
293 + // 加载已绑定的菜单
294 + loadCheckedKeys() {
295 + if (this.formData.roleId) {
296 + getMenuByRoleId(this.formData.roleId)
297 + .then((res) => {
298 + if (res.code === "200") {
299 + this.checkedKeys = res.data.filter(item => item.isBinding && (item.parentMenuId!=0 ) ).map(item => item.menuId);
300 + console.log(this.checkedKeys);
301 + } else {
302 + this.alertWarningMsg(res.message);
303 + }
304 + })
305 + .catch((err) => {
306 + console.log(err);
307 + });
308 + }
309 + },
310 +
289 }, 311 },
290 }; 312 };
291 </script> 313 </script>
......
...@@ -270,7 +270,7 @@ export default { ...@@ -270,7 +270,7 @@ export default {
270 getRoleDict() 270 getRoleDict()
271 .then((res) => { 271 .then((res) => {
272 if (res.code === "200") { 272 if (res.code === "200") {
273 - this.dict.roleList = res.data.value; 273 + this.dict.roleList = res.data;
274 } 274 }
275 }) 275 })
276 .catch((err) => { 276 .catch((err) => {
......