Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qr-consistency-vue3
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
刘怀志
qr-consistency-vue3
Commits
afb00fa5
Commit
afb00fa5
authored
Apr 18, 2025
by
Mr.Tang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
按钮使用通用样式
parent
0e9ce6ee
Changes
6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
586 additions
and
310 deletions
+586
-310
businessunit.js
src/api/system/basicdata/businessunit.js
+13
-5
index.vue
src/views/baseData/vehicleModelData/domestic/index.vue
+95
-38
index.vue
src/views/system/basicdata/businessunit/index.vue
+194
-117
index.vue
src/views/system/basicdata/manufacturer/index.vue
+274
-138
index.vue
src/views/system/role/index.vue
+8
-10
selectUser.vue
src/views/system/role/selectUser.vue
+2
-2
No files found.
src/api/system/basicdata/businessunit.js
View file @
afb00fa5
...
@@ -5,7 +5,7 @@ export function listUnit(query) {
...
@@ -5,7 +5,7 @@ export function listUnit(query) {
return
request
({
return
request
({
url
:
'/control/unit/list'
,
url
:
'/control/unit/list'
,
method
:
'get'
,
method
:
'get'
,
params
:
query
params
:
query
,
})
})
}
}
...
@@ -13,7 +13,7 @@ export function listUnit(query) {
...
@@ -13,7 +13,7 @@ export function listUnit(query) {
export
function
getUnit
(
id
)
{
export
function
getUnit
(
id
)
{
return
request
({
return
request
({
url
:
'/control/unit/'
+
id
,
url
:
'/control/unit/'
+
id
,
method
:
'get'
method
:
'get'
,
})
})
}
}
...
@@ -22,7 +22,7 @@ export function addUnit(data) {
...
@@ -22,7 +22,7 @@ export function addUnit(data) {
return
request
({
return
request
({
url
:
'/control/unit'
,
url
:
'/control/unit'
,
method
:
'post'
,
method
:
'post'
,
data
:
data
data
:
data
,
})
})
}
}
...
@@ -31,7 +31,7 @@ export function updateUnit(data) {
...
@@ -31,7 +31,7 @@ export function updateUnit(data) {
return
request
({
return
request
({
url
:
'/control/unit'
,
url
:
'/control/unit'
,
method
:
'put'
,
method
:
'put'
,
data
:
data
data
:
data
,
})
})
}
}
...
@@ -39,6 +39,14 @@ export function updateUnit(data) {
...
@@ -39,6 +39,14 @@ export function updateUnit(data) {
export
function
delUnit
(
id
)
{
export
function
delUnit
(
id
)
{
return
request
({
return
request
({
url
:
'/control/unit/'
+
id
,
url
:
'/control/unit/'
+
id
,
method
:
'delete'
method
:
'delete'
,
})
}
// 查询所有事业部名称
export
function
getAllBusinessUnitName
(
query
)
{
return
request
({
url
:
'/control/unit/getAllBusinessUnitName'
,
method
:
'get'
,
data
:
query
,
})
})
}
}
src/views/baseData/vehicleModelData/domestic/index.vue
View file @
afb00fa5
...
@@ -5,31 +5,40 @@
...
@@ -5,31 +5,40 @@
ref=
"queryRef"
ref=
"queryRef"
:model=
"queryParams"
:model=
"queryParams"
:inline=
"true"
:inline=
"true"
label-width=
"
68
px"
label-width=
"
90
px"
>
>
<el-form-item
label=
"车型代码"
prop=
"modelCode"
>
<el-form-item
label=
"车型代码"
prop=
"modelCode"
>
<el-input
<el-input
v-model=
"queryParams.modelCode"
v-model=
"queryParams.modelCode"
placeholder=
"请输入
车型代码
"
placeholder=
"请输入"
clearable
clearable
style=
"width: 120px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"车型公告号"
prop=
"modelAnnouncementNumber"
>
<el-form-item
label=
"车型公告号"
prop=
"modelAnnouncementNumber"
>
<el-input
<el-input
v-model=
"queryParams.modelAnnouncementNumber"
v-model=
"queryParams.modelAnnouncementNumber"
placeholder=
"请输入
车型公告号
"
placeholder=
"请输入"
clearable
clearable
style=
"width: 120px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"车型系列"
prop=
"modelSeries"
>
<el-form-item
label=
"车型系列"
prop=
"modelSeries"
>
<el-
inpu
t
<el-
selec
t
v-model=
"queryParams.modelSeries"
v-model=
"queryParams.modelSeries"
placeholder=
"请
输入车型系列
"
placeholder=
"请
选择
"
clearable
clearable
@
keyup
.
enter=
"handleQuery"
style=
"width: 120px"
>
<el-option
v-for=
"dict in sys_manufacture"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"是否维护"
prop=
"isMaintained"
>
<el-form-item
label=
"是否维护"
prop=
"isMaintained"
>
<el-select
<el-select
...
@@ -46,13 +55,20 @@
...
@@ -46,13 +55,20 @@
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"事业部"
prop=
"b
rand
"
>
<el-form-item
label=
"事业部"
prop=
"b
usinessUnitName
"
>
<el-
inpu
t
<el-
selec
t
v-model=
"queryParams.b
rand
"
v-model=
"queryParams.b
usinessUnitName
"
placeholder=
"请
输入品牌
"
placeholder=
"请
选择
"
clearable
clearable
@
keyup
.
enter=
"handleQuery"
style=
"width: 100px"
>
<el-option
v-for=
"item in allBusinessUnit"
:key=
"item.id"
:label=
"item.businessUnitName"
:value=
"item.businessUnitName || ''"
/>
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"发动机型号"
prop=
"engineModel"
>
<el-form-item
label=
"发动机型号"
prop=
"engineModel"
>
...
@@ -60,13 +76,14 @@
...
@@ -60,13 +76,14 @@
v-model=
"queryParams.engineModel"
v-model=
"queryParams.engineModel"
placeholder=
"请输入发动机型号"
placeholder=
"请输入发动机型号"
clearable
clearable
style=
"width: 100px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"认证申报生产地址"
prop=
"productionAddress"
>
<el-form-item
label=
"认证申报生产地址"
prop=
"productionAddress"
>
<el-input
<el-input
v-model=
"queryParams.productionAddress"
v-model=
"queryParams.productionAddress"
placeholder=
"请输入
生产地址
"
placeholder=
"请输入"
clearable
clearable
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
...
@@ -74,33 +91,50 @@
...
@@ -74,33 +91,50 @@
<el-form-item
label=
"制造工厂"
prop=
"manufacturingPlant"
>
<el-form-item
label=
"制造工厂"
prop=
"manufacturingPlant"
>
<el-input
<el-input
v-model=
"queryParams.manufacturingPlant"
v-model=
"queryParams.manufacturingPlant"
placeholder=
"请
输入制造工厂
"
placeholder=
"请
选择
"
clearable
clearable
style=
"width: 100px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"CVN"
prop=
"cvn"
>
<el-form-item
label=
"CVN"
prop=
"cvn"
>
<el-input
<el-input
v-model=
"queryParams.cvn"
v-model=
"queryParams.cvn"
placeholder=
"请输入
CVN
"
placeholder=
"请输入"
clearable
clearable
style=
"width: 100px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"CALID"
prop=
"calid"
>
<el-form-item
label=
"CALID"
prop=
"calid"
>
<el-input
<el-input
v-model=
"queryParams.calid"
v-model=
"queryParams.calid"
placeholder=
"请输入
CALID
"
placeholder=
"请输入"
clearable
clearable
style=
"width: 100px"
@
keyup
.
enter=
"handleQuery"
@
keyup
.
enter=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
type=
"primary
"
icon=
"Search"
@
click=
"handleQuery"
<el-button
class=
"btn-A
"
icon=
"Search"
@
click=
"handleQuery"
>
搜索
</el-button
>
搜索
</el-button
>
>
<el-button
icon=
"Refresh"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
class=
"btn-B"
icon=
"Refresh"
@
click=
"resetQuery"
>
重置
</el-button
>
<div>
<el-button
style=
"
float: left;
margin: 0px 100px;
border: 1px solid #0154fb;
color: #0154fb;
"
@
click=
"handleExport"
>
导出
</el-button
>
</div>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -125,10 +159,6 @@
...
@@ -125,10 +159,6 @@
>
导出
</el-button
>
导出
</el-button
>
>
</el-col>
</el-col>
<right-toolbar
v-model:show-search=
"showSearch"
@
query-table=
"getList"
></right-toolbar>
</el-row>
</el-row>
<el-table
<el-table
...
@@ -138,8 +168,12 @@
...
@@ -138,8 +168,12 @@
@
selection-change=
"handleSelectionChange"
@
selection-change=
"handleSelectionChange"
>
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"序号"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"序号"
align=
"center"
width=
"80"
>
<el-table-column
label=
"事业部"
align=
"center"
prop=
"brand"
/>
<template
#
default=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"事业部"
align=
"center"
prop=
"businessUnitName"
/>
<el-table-column
label=
"车型代码"
align=
"center"
prop=
"modelCode"
/>
<el-table-column
label=
"车型代码"
align=
"center"
prop=
"modelCode"
/>
<el-table-column
label=
"车型系列"
align=
"center"
prop=
"modelSeries"
/>
<el-table-column
label=
"车型系列"
align=
"center"
prop=
"modelSeries"
/>
<el-table-column
<el-table-column
...
@@ -148,7 +182,14 @@
...
@@ -148,7 +182,14 @@
prop=
"modelAnnouncementNumber"
prop=
"modelAnnouncementNumber"
/>
/>
<el-table-column
label=
"品牌"
align=
"center"
prop=
"brand"
/>
<el-table-column
label=
"品牌"
align=
"center"
prop=
"brand"
/>
<el-table-column
label=
"是否维护"
align=
"center"
prop=
"isMaintained"
/>
<el-table-column
label=
"是否维护"
align=
"center"
prop=
"isMaintained"
>
<
template
#
default=
"scope"
>
<dict-tag
:options=
"vehicle_model_maintenance"
:value=
"scope.row.isMaintained"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"发动机型号"
align=
"center"
prop=
"engineModel"
/>
<el-table-column
label=
"发动机型号"
align=
"center"
prop=
"engineModel"
/>
<el-table-column
<el-table-column
label=
"车型代码今年累计产量"
label=
"车型代码今年累计产量"
...
@@ -185,15 +226,7 @@
...
@@ -185,15 +226,7 @@
type=
"primary"
type=
"primary"
icon=
"Edit"
icon=
"Edit"
@
click=
"handleUpdate(scope.row)"
@
click=
"handleUpdate(scope.row)"
>
修改
</el-button
>
补充信息
</el-button
>
<el-button
v-hasPermi=
"['control:model:remove']"
link
type=
"primary"
icon=
"Delete"
@
click=
"handleDelete(scope.row)"
>
删除
</el-button
>
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
...
@@ -223,7 +256,15 @@
...
@@ -223,7 +256,15 @@
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"是否维护"
prop=
"isMaintained"
>
<el-form-item
label=
"是否维护"
prop=
"isMaintained"
>
<el-input
v-model=
"form.isMaintained"
placeholder=
"请输入是否维护"
/>
<el-radio-group
v-model=
"form.isMaintained"
>
<el-radio
v-for=
"(item, index) in vehicle_model_maintenance"
:key=
"index"
:label=
"parseInt(item.value)"
:disabled=
"item.disabled"
>
{{ item.label }}
</el-radio
>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"生产地址"
prop=
"productionAddress"
>
<el-form-item
label=
"生产地址"
prop=
"productionAddress"
>
<el-input
<el-input
...
@@ -247,8 +288,8 @@
...
@@ -247,8 +288,8 @@
</el-form>
</el-form>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<div
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
class=
"btn-B"
@
click=
"cancel"
>
取 消
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
<el-button
class=
"btn-A"
@
click=
"submitForm"
>
保 存
</el-button>
</div>
</div>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
...
@@ -264,6 +305,7 @@ import {
...
@@ -264,6 +305,7 @@ import {
updateModel
,
updateModel
,
}
from
'@/api/vehicleModelData/domestic'
}
from
'@/api/vehicleModelData/domestic'
import
{
getAllFactoryName
}
from
'@/api/system/factory'
import
{
getAllFactoryName
}
from
'@/api/system/factory'
import
{
getAllBusinessUnitName
}
from
'@/api/system/basicdata/businessunit'
import
{
ref
,
toRefs
,
watch
}
from
'vue'
import
{
ref
,
toRefs
,
watch
}
from
'vue'
const
{
proxy
}
=
getCurrentInstance
()
const
{
proxy
}
=
getCurrentInstance
()
...
@@ -282,10 +324,13 @@ const title = ref('')
...
@@ -282,10 +324,13 @@ const title = ref('')
const
data
=
reactive
({
const
data
=
reactive
({
form
:
{
form
:
{
manufacturingPlant
:
''
,
// 字符串类型,存储选中的工厂
manufacturingPlant
:
''
,
// 字符串类型,存储选中的工厂
businessUnitName
:
''
,
isMaintained
:
''
,
},
},
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
,
pageSize
:
10
,
businessUnitName
:
null
,
brand
:
null
,
brand
:
null
,
modelCode
:
null
,
modelCode
:
null
,
modelSeries
:
null
,
modelSeries
:
null
,
...
@@ -301,10 +346,12 @@ const data = reactive({
...
@@ -301,10 +346,12 @@ const data = reactive({
},
},
rules
:
{},
rules
:
{},
})
})
// Vue 中的 v-model 绑定默认是字符串类型。
const
allFactories
=
ref
([])
// 所有工厂列表
const
allFactories
=
ref
([])
// 所有工厂列表
const
selectedFactories
=
ref
([])
// 当前选中的工厂数组
const
selectedFactories
=
ref
([])
// 当前选中的工厂数组
// 监听表单数据变化,初始化选中的工厂
// 监听表单数据变化,初始化选中的工厂
const
{
queryParams
,
form
,
rules
}
=
toRefs
(
data
)
const
{
queryParams
,
form
,
rules
}
=
toRefs
(
data
)
const
allBusinessUnit
=
ref
([])
// 获取所有事业部列表
// 获取工厂数据的方法
// 获取工厂数据的方法
const
fetchFactories
=
async
()
=>
{
const
fetchFactories
=
async
()
=>
{
...
@@ -316,6 +363,15 @@ const fetchFactories = async () => {
...
@@ -316,6 +363,15 @@ const fetchFactories = async () => {
console
.
error
(
'获取工厂列表失败:'
,
error
)
console
.
error
(
'获取工厂列表失败:'
,
error
)
}
}
}
}
const
fetchBusinessUnit
=
async
()
=>
{
try
{
const
response
=
await
getAllBusinessUnitName
()
// 提取factoryName字段
allBusinessUnit
.
value
=
response
.
data
.
map
((
item
)
=>
item
.
businessUnitName
)
}
catch
(
error
)
{
console
.
error
(
'获取工厂列表失败:'
,
error
)
}
}
// 监听选中的工厂变化,更新表单字符串数据(使用顿号分隔)
// 监听选中的工厂变化,更新表单字符串数据(使用顿号分隔)
watch
(
watch
(
selectedFactories
,
selectedFactories
,
...
@@ -462,6 +518,7 @@ function handleExport() {
...
@@ -462,6 +518,7 @@ function handleExport() {
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
fetchFactories
()
fetchFactories
()
fetchBusinessUnit
()
})
})
getList
()
getList
()
</
script
>
</
script
>
src/views/system/basicdata/businessunit/index.vue
View file @
afb00fa5
This diff is collapsed.
Click to expand it.
src/views/system/basicdata/manufacturer/index.vue
View file @
afb00fa5
This diff is collapsed.
Click to expand it.
src/views/system/role/index.vue
View file @
afb00fa5
...
@@ -32,14 +32,12 @@
...
@@ -32,14 +32,12 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
<el-button
class=
"btn-A"
icon=
"Search"
@
click=
"handleQuery"
type=
"primary"
icon=
"Search"
style=
"background: #0154fb"
@
click=
"handleQuery"
>
查询
</el-button
>
查询
</el-button
>
>
<el-button
icon=
"Refresh"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
class=
"btn-B"
icon=
"Refresh"
@
click=
"resetQuery"
>
重置
</el-button
>
</el-form-item>
</el-form-item>
<el-button
<el-button
v-hasPermi=
"['system:role:add']"
v-hasPermi=
"['system:role:add']"
...
@@ -260,8 +258,8 @@
...
@@ -260,8 +258,8 @@
</el-form>
</el-form>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<div
class=
"dialog-footer"
>
<el-button
type=
"primary
"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
class=
"btn-A
"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
<el-button
class=
"btn-B"
@
click=
"cancel"
>
取 消
</el-button>
</div>
</div>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
...
@@ -321,8 +319,8 @@
...
@@ -321,8 +319,8 @@
</el-form>
</el-form>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<div
class=
"dialog-footer"
>
<el-button
type=
"primary
"
@
click=
"submitDataScope"
>
确 定
</el-button>
<el-button
class=
"btn-A
"
@
click=
"submitDataScope"
>
确 定
</el-button>
<el-button
@
click=
"cancelDataScope"
>
取 消
</el-button>
<el-button
class=
"btn-B"
@
click=
"cancelDataScope"
>
取 消
</el-button>
</div>
</div>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
...
...
src/views/system/role/selectUser.vue
View file @
afb00fa5
...
@@ -88,8 +88,8 @@
...
@@ -88,8 +88,8 @@
</el-row>
</el-row>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<div
class=
"dialog-footer"
>
<el-button
type=
"primary
"
@
click=
"handleSelectUser"
>
确 定
</el-button>
<el-button
class=
"btn-A
"
@
click=
"handleSelectUser"
>
确 定
</el-button>
<el-button
@
click=
"visible = false"
>
取 消
</el-button>
<el-button
class=
"btn-B"
@
click=
"visible = false"
>
取 消
</el-button>
</div>
</div>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment