Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
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
罗超
confucius
Commits
bda252c2
Commit
bda252c2
authored
Apr 29, 2021
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
事项管理
parent
39081619
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
908 additions
and
40 deletions
+908
-40
index.js
src/api/duty/index.js
+108
-0
addClassList.vue
src/components/duty/addClassList.vue
+2
-2
addDutyItem.vue
src/components/duty/addDutyItem.vue
+209
-0
addDutySet.vue
src/components/duty/addDutySet.vue
+154
-0
classListManagement.vue
src/components/duty/classListManagement.vue
+1
-1
dutyItemManagement.vue
src/components/duty/dutyItemManagement.vue
+274
-0
setting.vue
src/components/duty/setting.vue
+156
-35
dutyManagement.vue
src/pages/system/dutyManagement.vue
+4
-2
No files found.
src/api/duty/index.js
View file @
bda252c2
...
...
@@ -34,4 +34,112 @@ export function getDutyFrequencyList(data) {
method
:
'post'
,
data
})
}
/**
* 值班事项列表
* @param {JSON参数} data
*/
export
function
getDutyItemList
(
data
)
{
return
request
({
url
:
'/Duty/GetDutyItemList'
,
method
:
'post'
,
data
})
}
/**
* 删除值班事项列表
* @param {JSON参数} data
*/
export
function
removeDutyItem
(
data
)
{
return
request
({
url
:
'/Duty/RemoveDutyItem'
,
method
:
'post'
,
data
})
}
/**
* 值班事项类型枚举
* @param {JSON参数} data
*/
export
function
getItemTypeEnumList
(
data
)
{
return
request
({
url
:
'/Duty/GetItemTypeEnumList'
,
method
:
'post'
,
data
})
}
/**
* 新增/修改值班事项
* @param {JSON参数} data
*/
export
function
getSetDutyItemModel
(
data
)
{
return
request
({
url
:
'/Duty/GetSetDutyItemModel'
,
method
:
'post'
,
data
})
}
/**
* 根据班次获取学校信息
* @param {JSON参数} data
*/
export
function
getSchoolListByFrequencyIds
(
data
)
{
return
request
({
url
:
'/Duty/GetSchoolListByFrequencyIds'
,
method
:
'post'
,
data
})
}
/**
* 根据学校id获取对应的班次
* @param {JSON参数} data
*/
export
function
getDutyFrequencyBySchoolIds
(
data
)
{
return
request
({
url
:
'/Duty/GetDutyFrequencyBySchoolIds'
,
method
:
'post'
,
data
})
}
/**
* 获取值班设置列表
* @param {JSON参数} data
*/
export
function
getDutyConfigList
(
data
)
{
return
request
({
url
:
'/Duty/GetDutyConfigList'
,
method
:
'post'
,
data
})
}
/**
* 新增/修改值班设置
* @param {JSON参数} data
*/
export
function
getSetDutyConfigModel
(
data
)
{
return
request
({
url
:
'/Duty/GetSetDutyConfigModel'
,
method
:
'post'
,
data
})
}
/**
* 删除值班设置
* @param {JSON参数} data
*/
export
function
removeDutyConfig
(
data
)
{
return
request
({
url
:
'/Duty/RemoveDutyConfig'
,
method
:
'post'
,
data
})
}
\ No newline at end of file
src/components/duty/addClassList.vue
View file @
bda252c2
...
...
@@ -56,9 +56,9 @@
</q-popup-proxy>
</q-icon>
</
template
>
</q-input>
</div>
</q-input>
</div>
</div>
</q-card-section>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight:400 !important"
@
click=
"closeRuleForm"
/>
...
...
src/components/duty/addDutyItem.vue
0 → 100644
View file @
bda252c2
<
template
>
<q-dialog
v-model=
"persistent"
persistent
content-class=
"bg-grey-1"
transition-show=
"scale"
transition-hide=
"scale"
>
<q-card
style=
"width: 800px;max-width:800px;"
>
<q-card-section>
<div
class=
"text-h6"
>
{{
(
saveObj
&&
saveObj
.
Id
>
0
)?
"修改值班事项"
:
"新增值班事项"
}}
</div>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"msg.ItemName"
ref=
"ItemName"
class=
"col-6 q-pr-lg q-pb-lg"
label=
"事项名称"
:rules=
"[val => !!val || '请填写事项名称']"
/>
</div>
<div
class=
"col-6"
>
<q-select
stack-label
color=
"primary"
filled
clearable
label=
"选择事项类型"
option-value=
"Id"
option-label=
"Name"
:options=
"itemTypeOptions"
v-model=
"msg.ItemType"
ref=
"ItemType"
:rules=
"[val => !!val || '请选择事项类型']"
/>
</div>
</div>
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<q-select
stack-label
v-model=
"FrequencyArr"
multiple
:options=
"frequencyOptions"
color=
"primary"
filled
clearable
label=
"选择班次"
option-label=
"Name"
option-value=
"Id"
ref=
"Shifts"
@
input=
"getSchoolListByFrequencyIds"
:rules=
"[val => !!val || '请选择班次']"
class=
"col-6 q-pr-lg q-pb-lg"
/>
</div>
<div
class=
"col-6"
>
<q-select
stack-label
v-model=
"schoolArr"
multiple
:options=
"schoolOptions"
color=
"primary"
filled
clearable
label=
"选择校区"
option-label=
"SName"
option-value=
"SId"
ref=
"ItemSchools"
@
input=
"getDutyFrequencyBySchoolIds"
:rules=
"[val => !!val || '请选择校区']"
/>
</div>
</div>
</q-card-section>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight:400 !important"
@
click=
"closeRuleForm"
/>
<q-btn
label=
"保存"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
@
click=
"saveRule"
/>
</q-card-actions>
</q-card>
</q-dialog>
</
template
>
<
script
>
import
{
getSetDutyItemModel
,
getSchoolListByFrequencyIds
,
getDutyFrequencyBySchoolIds
,
getDutyFrequencyList
}
from
"../../api/duty/index"
import
{
getSchoolDropdown
}
from
'../../api/school/index'
;
//获取校区列表
export
default
{
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
},
itemTypeOptions
:{
type
:
Array
,
default
:[]
},
},
data
()
{
return
{
itemArr
:[],
FrequencyArr
:[],
schoolArr
:[],
msg
:
{
Id
:
0
,
ItemName
:
""
,
ItemSchools
:
""
,
ItemType
:
""
,
Shifts
:
""
},
persistent
:
true
,
schoolOptions
:[],
frequencyOptions
:[],
}
},
computed
:
{},
created
()
{
this
.
getCompanyList
();
this
.
getDutyFrequencyList
();
},
mounted
()
{
console
.
log
(
this
.
saveObj
)
if
(
this
.
saveObj
&&
this
.
saveObj
.
Id
>
0
)
{
let
schoolids
=
this
.
saveObj
.
ItemSchools
.
split
(
","
);
this
.
schoolArr
=
[]
console
.
log
(
schoolids
,
this
.
schoolOptions
)
schoolids
.
map
((
item
)
=>
{
this
.
schoolOptions
.
map
((
_item
)
=>
{
if
(
_item
.
SId
==
item
){
this
.
schoolArr
.
push
(
_item
)
}
})
})
let
frequencyids
=
this
.
saveObj
.
Shifts
.
split
(
","
);
this
.
FrequencyArr
=
[]
frequencyids
.
map
((
item
)
=>
{
this
.
frequencyOptions
.
map
((
_item
)
=>
{
if
(
_item
.
Id
==
item
){
this
.
FrequencyArr
.
push
(
_item
)
}
})
})
this
.
msg
.
Id
=
this
.
saveObj
.
Id
;
this
.
msg
.
ItemName
=
this
.
saveObj
.
ItemName
;
this
.
msg
.
ItemType
=
this
.
saveObj
.
ItemType
;
}
},
methods
:
{
//保存信息
saveRule
()
{
this
.
$refs
.
ItemName
.
validate
();
this
.
$refs
.
ItemType
.
validate
();
this
.
$refs
.
Shifts
.
validate
();
this
.
$refs
.
ItemSchools
.
validate
();
if
(
!
this
.
$refs
.
ItemName
.
hasError
&&
!
this
.
$refs
.
ItemType
.
hasError
&&
!
this
.
$refs
.
Shifts
.
hasError
&&
!
this
.
$refs
.
ItemSchools
.
hasError
)
{
this
.
msg
.
ItemSchools
=
this
.
schoolArr
.
map
(
item
=>
item
.
SId
).
toString
();
getSetDutyItemModel
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$emit
(
'success'
);
this
.
closeRuleForm
();
}
})
}
},
//关闭窗口
closeRuleForm
()
{
this
.
$emit
(
'close'
);
this
.
persistent
=
false
},
//根据班次获取学校信息
getSchoolListByFrequencyIds
(){
let
Shifts
=
this
.
FrequencyArr
.
map
(
item
=>
item
.
Id
).
toString
();
getSchoolListByFrequencyIds
({
Shifts
:
Shifts
}).
then
((
res
)
=>
{
this
.
schoolOptions
=
res
.
Data
;
})
},
//根据学校id获取对应的班次
getDutyFrequencyBySchoolIds
(){
let
SchoolIds
=
this
.
schoolArr
.
map
(
item
=>
item
.
SId
).
toString
();
getDutyFrequencyBySchoolIds
({
SchoolIds
:
SchoolIds
}).
then
((
res
)
=>
{
this
.
frequencyOptions
=
res
.
Data
})
},
//获取校区列表
getCompanyList
()
{
getSchoolDropdown
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
schoolOptions
=
res
.
Data
;
}
})
},
//获取班次列表
getDutyFrequencyList
(){
getDutyFrequencyList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
frequencyOptions
=
res
.
Data
;
console
.
log
(
this
.
frequencyOptions
)
}
})
},
},
}
</
script
>
src/components/duty/addDutySet.vue
0 → 100644
View file @
bda252c2
<
template
>
<q-dialog
v-model=
"persistent"
persistent
content-class=
"bg-grey-1"
transition-show=
"scale"
transition-hide=
"scale"
>
<q-card
style=
"width: 800px;max-width:800px;"
>
<q-card-section>
<div
class=
"text-h6"
>
{{
(
saveObj
&&
saveObj
.
Id
>
0
)?
"修改设置"
:
"新增设置"
}}
</div>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<q-select
v-model=
"msg.EmployeeName"
:options=
"EmployeeList"
color=
"primary"
filled
emit-value
clearable
label=
"值班管理员"
option-label=
"EmployeeName"
optionValue=
"Id"
ref=
"EmployeeName"
:rules=
"[val => !!val || '请选择值班管理员']"
class=
"col-6 q-pr-lg q-pb-lg"
/>
</div>
<div
class=
"col-6"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"msg.MachineCode"
ref=
"MachineCode"
class=
"col-6 q-pr-lg q-pb-lg"
label=
"值班机器码"
:rules=
"[val => !!val || '请填写值班机器码']"
/>
</div>
</div>
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<q-select
v-model=
"ShiftsNameArr"
multiple
:options=
"frequencyOptions"
color=
"primary"
filled
clearable
label=
"班次"
option-label=
"Name"
option-value=
"Id"
ref=
"frequency"
:rules=
"[val => !!val || '请选择班次']"
class=
"col-6 q-pr-lg q-pb-lg"
/>
</div>
</div>
</q-card-section>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight:400 !important"
@
click=
"closeRuleForm"
/>
<q-btn
label=
"保存"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
@
click=
"saveRule"
/>
</q-card-actions>
</q-card>
</q-dialog>
</
template
>
<
script
>
import
{
queryEmployee
}
from
'../../api/users/user'
;
//获取业务员
import
{
getSetDutyConfigModel
}
from
"../../api/duty/index"
export
default
{
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
},
frequencyOptions
:{
type
:
Array
,
default
:[]
}
},
data
()
{
return
{
ShiftsNameArr
:[],
msg
:
{
Id
:
0
,
EmployeeName
:
""
,
MachineCode
:
""
,
ShiftsName
:
''
,
},
persistent
:
true
,
EmployeeList
:[]
}
},
computed
:
{},
created
()
{},
mounted
()
{
this
.
getEmployee
(
0
);
if
(
this
.
saveObj
&&
this
.
saveObj
.
Id
>
0
)
{
let
ShiftsNameids
=
this
.
saveObj
.
Shifts
.
split
(
","
);
this
.
ShiftsNameArr
=
[]
ShiftsNameids
.
map
((
item
)
=>
{
this
.
frequencyOptions
.
map
((
_item
)
=>
{
if
(
_item
.
Id
==
item
){
this
.
ShiftsNameArr
.
push
(
_item
)
}
})
})
this
.
msg
.
Id
=
this
.
saveObj
.
Id
;
this
.
msg
.
EmployeeName
=
this
.
saveObj
.
Name
;
this
.
msg
.
MachineCode
=
this
.
saveObj
.
MachineCode
;
this
.
msg
.
ShiftsName
=
this
.
saveObj
.
ShiftsName
;
console
.
log
(
this
.
saveObj
,
this
.
frequencyOptions
,
ShiftsNameids
)
}
},
methods
:
{
changeschool
(){
console
.
log
(
this
.
msg
.
School_Ids
)
},
//保存信息
saveRule
()
{
console
.
log
(
this
.
msg
)
this
.
$refs
.
EmployeeName
.
validate
();
this
.
$refs
.
frequency
.
validate
();
this
.
$refs
.
MachineCode
.
validate
();
if
(
!
this
.
$refs
.
EmployeeName
.
hasError
&&
!
this
.
$refs
.
frequency
.
hasError
&&
!
this
.
$refs
.
MachineCode
.
hasError
)
{
this
.
msg
.
Shifts
=
this
.
schoolArr
.
map
(
item
=>
item
.
SId
).
toString
();
getSetDutyConfigModel
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$emit
(
'success'
);
this
.
closeRuleForm
();
}
})
}
},
//关闭窗口
closeRuleForm
()
{
this
.
$emit
(
'close'
);
this
.
persistent
=
false
},
//获取业务员
getEmployee
(
id
)
{
var
qMsg
=
{
Dept_Id
:
0
}
qMsg
.
Dept_Id
=
id
;
queryEmployee
(
qMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
){
this
.
EmployeeList
=
res
.
Data
;
}
}).
catch
(()
=>
{
})
},
},
}
</
script
>
src/components/duty/classListManagement.vue
View file @
bda252c2
...
...
@@ -4,7 +4,7 @@
<q-table
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
班
级列表
管理
</div>
<div
class=
"col-2 q-table__title"
>
班
次
管理
</div>
<q-space
/>
<div
class=
"page-option"
>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
@
click=
"addModule(null)"
label=
"新增"
/>
...
...
src/components/duty/dutyItemManagement.vue
View file @
bda252c2
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-content"
>
<q-table
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
inline
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
值班事项管理
</div>
<q-space
/>
<div
class=
"page-option"
>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
@
click=
"addModule(null)"
label=
"新增事项管理"
/>
</div>
</
template
>
<
template
v-slot:body=
"props"
>
<q-tr
:props=
"props"
>
<q-td
key=
"ItemName"
:props=
"props"
style=
"padding:0 15px"
>
<span
v-if=
"!props.row.isEdit"
>
{{
props
.
row
.
ItemName
}}
</span>
<q-input
v-else
v-model=
"props.row.ItemName"
dense
clearable
/>
</q-td>
<q-td
key=
"ItemType"
:props=
"props"
>
<span
v-if=
"!props.row.isEdit"
>
{{
props
.
row
.
ItemType
}}
</span>
<q-select
v-else
dense
color=
"primary"
filled
clearable
option-value=
"Id"
option-label=
"Name"
:options=
"itemTypeOptions"
v-model=
"props.row.ItemType"
ref=
"ItemType"
:rules=
"[val => !!val || '请选择事项类型']"
/>
</q-td>
<q-td
key=
"ShiftsName"
:props=
"props"
>
<span
v-if=
"!props.row.isEdit"
>
{{
props
.
row
.
ShiftsName
}}
</span>
<q-select
v-else
dense
clearable
multiple
color=
"primary"
filled
option-value=
"Id"
option-label=
"Name"
:options=
"frequencyOptions"
v-model=
"props.row.ShiftsName"
ref=
"Shifts"
:rules=
"[val => !!val || '请选择归属班次']"
/>
</q-td>
<q-td
key=
"SchoolName"
:props=
"props"
>
<span
v-if=
"!props.row.isEdit"
>
{{
props
.
row
.
SchoolName
}}
</span>
<q-select
v-else
clearable
dense
multiple
color=
"primary"
filled
option-value=
"SId"
option-label=
"SName"
:options=
"schoolOptions"
v-model=
"props.row.SchoolName"
ref=
"Shifts"
:rules=
"[val => !!val || '请选择归属校区']"
/>
</q-td>
<q-td
key=
"optioned"
:props=
"props"
>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"negative"
style=
"font-weight:400"
@
click=
"delClass(props.row.Id)"
label=
"删除"
/>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
@
click=
"props.row.isEdit=true"
label=
"编辑"
v-if=
"!props.row.isEdit"
/>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
@
click=
"save(props.row)"
label=
"保存"
v-if=
"props.row.isEdit"
/>
</q-btn>
</q-td>
</q-tr>
</
template
>
<
template
v-slot:bottom
>
</
template
>
</q-table>
</div>
</div>
</template>
<
script
>
import
{
getDutyItemList
,
removeDutyItem
,
getItemTypeEnumList
,
getDutyFrequencyList
,
getSetDutyItemModel
}
from
'../../api/duty/index'
;
import
{
getSchoolDropdown
}
from
'../../api/school/index'
;
//获取校区列表
import
AddDutyItem
from
'./addDutyItem'
;
export
default
{
components
:
{
AddDutyItem
},
data
()
{
return
{
loading
:
false
,
isShowsetForm
:
false
,
ruleObj
:
{},
//传入参数
schoolOptions
:[],
//校区
itemTypeOptions
:[],
//事项类型
frequencyOptions
:[],
//班次列表
columns
:
[{
name
:
'ItemName'
,
label
:
'事项名称'
,
field
:
'ItemName'
,
align
:
'left'
},
{
name
:
'ItemType'
,
label
:
'类型'
,
field
:
'ItemType'
,
align
:
'left'
,
},
{
name
:
'ShiftsName'
,
label
:
'归属班次'
,
field
:
'ShiftsName'
,
align
:
'left'
,
},
{
name
:
'SchoolName'
,
label
:
'归属校区'
,
field
:
'SchoolName'
,
align
:
'left'
,
},
{
name
:
'optioned'
,
label
:
'操作'
,
field
:
'QuestionId'
}
],
dataList
:
[],
msg
:{
ItemName
:
""
,
ItemType
:
""
,
}
}
},
mounted
()
{
this
.
getList
();
this
.
getItemTypeEnumList
();
this
.
getCompanyList
();
this
.
getDutyFrequencyList
();
},
methods
:
{
//获取值班事项类型枚举
getItemTypeEnumList
(){
getItemTypeEnumList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
itemTypeOptions
=
res
.
Data
;
}
})
},
//获取数据
getList
()
{
getDutyItemList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
res
.
Data
.
map
(
item
=>
{
item
.
isEdit
=
false
return
item
})
this
.
dataList
=
res
.
Data
;
}
})
},
//删除班次
delClass
(
id
){
let
that
=
this
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
'是否确定删除?'
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
removeDutyItem
({
Id
:
id
.
toString
()}).
then
((
res
)
=>
{
that
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
// color: 'accent',
timeout
:
2000
,
message
:
res
.
Message
,
position
:
'top'
})
that
.
getList
()
})
}).
onCancel
(()
=>
{
});
},
//关闭弹窗
closeruleset
()
{
this
.
isShowsetForm
=
false
;
},
//刷新列表
refreshRule
()
{
this
.
getList
();
},
//1启用 2禁用 3删除
getStart
(
item
,
type
)
{
let
msg
=
{
RuleId
:
item
.
Id
,
Type
:
type
}
SetOKRRuleState
(
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
getList
();
}
})
},
//新增
addModule
(
obj
)
{
if
(
obj
)
{
this
.
ruleObj
=
obj
}
else
{
this
.
ruleObj
=
null
}
this
.
isShowsetForm
=
true
},
//获取校区列表
getCompanyList
()
{
getSchoolDropdown
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
schoolOptions
=
res
.
Data
;
}
})
},
//获取班次列表
getDutyFrequencyList
(){
getDutyFrequencyList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
frequencyOptions
=
res
.
Data
;
}
})
},
save
(
item
){
let
msg
=
{
Id
:
item
.
Id
,
ItemName
:
item
.
ItemName
,
Shifts
:
item
.
Shifts
,
ItemSchools
:
item
.
ItemSchools
,
ItemType
:
item
.
ItemType
.
Id
}
console
.
log
(
item
,
msg
)
// getSetDutyItemModel(msg).then((res)=>{
// })
item
.
isEdit
=
false
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.bg-white
{
background-color
:
#ffffff
;
}
@import
url('~assets/css/table.sass')
</
style
>
src/components/duty/setting.vue
View file @
bda252c2
<
style
lang=
"scss"
scoped
>
.watchSet
{
.chooseSchool
{
width
:
160px
;
color
:
#FFF
;
border-radius
:
3px
;
overflow
:
hidden
;
}
.schoolChooseBox
{
display
:
flex
;
justify-content
:
flex-end
;
}
.Period-rules
{
display
:
flex
;
margin-bottom
:
24px
;
padding-left
:
20px
;
}
}
</
style
>
<
template
>
<div
class=
"watchSet"
>
<div
class=
"schoolChooseBox"
>
<q-select
dense
filled
v-model=
"model"
label-color=
"grey-11"
clearable
bg-color=
"primary"
:options=
"schoolOptions"
label=
"选择校区"
option-label=
"SName"
option-value=
"SId"
class=
"chooseSchool"
>
</q-select>
</div>
<div
class=
"set"
>
<div
v-for=
"item in dataList"
:key=
"item.id"
>
<div
class=
"set-title"
>
值班管理员:
<span
class=
"set-con"
>
{{}}
</span></div>
<div
class=
"set-title"
>
值班管理员:
<span
class=
"set-con"
>
{{}}
</span></div>
<div
class=
"set-title"
>
值班管理员:
<span
class=
"set-con"
>
{{}}
</span></div>
</div>
<div
class=
"page-body"
>
<div
class=
"page-content"
>
<q-table
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
设置
</div>
<q-space
/>
<div
class=
"page-option"
style=
"display:flex"
>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
@
click=
"addModule(null)"
label=
"新增"
/>
<q-select
dense
filled
v-model=
"School_Id"
label-color=
"grey-11"
clearable
bg-color=
"primary"
emit-value
:options=
"schoolOptions"
label=
"选择校区"
option-label=
"SName"
option-value=
"SId"
class=
"chooseSchool"
@
input=
"changeSchool"
>
</q-select>
</div>
</
template
>
<
template
v-slot:bottom
>
</
template
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
style=
"width:200px;"
>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"negative"
style=
"font-weight:400"
@
click=
"delSet(props.row.Id)"
label=
"删除"
/>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
@
click=
"addModule(props.row)"
label=
"编辑"
/>
</q-btn>
</q-td>
</
template
>
</q-table>
<AddDutySet
v-if=
"isShowsetForm"
@
close=
"closeruleset"
:save-obj=
"ruleObj"
@
success=
"refreshRule"
:frequencyOptions=
"frequencyOptions"
>
</AddDutySet>
</div>
</div>
</template>
<
script
>
import
{
getDutyConfigList
,
getDutyFrequencyList
,
removeDutyConfig
}
from
'../../api/duty/index'
;
import
{
getSchoolDropdown
}
from
'../../api/school/index'
;
//获取校区列表
import
AddDutySet
from
'./addDutySet'
;
export
default
{
meta
:
{
title
:
""
components
:
{
AddDutySet
},
// components: {
// basecycleForm
// },
data
()
{
return
{
School_Id
:
""
,
loading
:
false
,
isShowsetForm
:
false
,
ruleObj
:
{},
//传入参数
schoolOptions
:[],
model
:
""
,
dataList
:[{}]
frequencyOptions
:[],
columns
:
[{
name
:
'EmployeeName'
,
label
:
'值班管理员:'
,
field
:
'EmployeeName'
,
align
:
'left'
},
{
name
:
'MachineCode'
,
label
:
'值班机器码:'
,
field
:
'MachineCode'
,
align
:
'left'
,
},
{
name
:
'ShiftsName'
,
label
:
'班次管理:'
,
field
:
'ShiftsName'
,
align
:
'left'
,
},
{
name
:
'optioned'
,
label
:
'操作'
,
field
:
'QuestionId'
}
],
dataList
:
[],
}
},
mounted
()
{
this
.
getCompanyList
();
this
.
getList
();
this
.
getCompanyList
();
this
.
getDutyFrequencyList
();
},
methods
:
{
//获取数据
getList
()
{
getDutyConfigList
({
School_Id
:
this
.
School_Id
}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
console
.
log
(
res
)
this
.
dataList
=
res
.
Data
;
}
})
},
//删除班次
delSet
(
id
){
let
that
=
this
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
'是否确定删除?'
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
removeDutyConfig
({
Id
:
id
.
toString
()}).
then
((
res
)
=>
{
that
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
// color: 'accent',
timeout
:
2000
,
message
:
res
.
Message
,
position
:
'top'
})
that
.
getList
()
})
}).
onCancel
(()
=>
{
});
},
//关闭弹窗
closeruleset
()
{
this
.
isShowsetForm
=
false
;
},
//刷新列表
refreshRule
()
{
this
.
getList
();
},
//1启用 2禁用 3删除
getStart
(
item
,
type
)
{
let
msg
=
{
RuleId
:
item
.
Id
,
Type
:
type
}
SetOKRRuleState
(
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
getList
();
}
})
},
//新增
addModule
(
obj
)
{
if
(
obj
)
{
this
.
ruleObj
=
obj
}
else
{
this
.
ruleObj
=
null
}
this
.
isShowsetForm
=
true
},
//获取校区列表
getCompanyList
()
{
getSchoolDropdown
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
...
...
@@ -65,7 +171,22 @@
}
})
},
//获取班次列表
getDutyFrequencyList
(){
getDutyFrequencyList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
frequencyOptions
=
res
.
Data
;
}
})
},
changeSchool
(){
this
.
getList
();
}
}
}
</
script
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
</
style
>
src/pages/system/dutyManagement.vue
View file @
bda252c2
...
...
@@ -7,14 +7,15 @@
class=
"text-primary"
>
<q-tab
:ripple=
"false"
name=
"first"
label=
"值班事项管理"
/>
<q-tab
:ripple=
"false"
name=
"second"
label=
"设置"
/>
<q-tab
:ripple=
"false"
name=
"third"
label=
"班
級列表
管理"
/>
<q-tab
:ripple=
"false"
name=
"third"
label=
"班
次
管理"
/>
</q-tabs>
<DutyItemManagement
v-if=
"tabCheck=='first'"
></DutyItemManagement>
<Set
v-if=
"tabCheck=='second'"
></Set>
<ClassListManagement
v-if=
"tabCheck=='third'"
></ClassListManagement>
</div>
</
template
>
<
script
>
import
DutyItemManagement
from
"../../components/duty/dutyItemManagement"
import
Set
from
"../../components/duty/setting"
import
ClassListManagement
from
"../../components/duty/classListManagement"
export
default
{
...
...
@@ -22,6 +23,7 @@ import ClassListManagement from "../../components/duty/classListManagement"
title
:
"值班管理"
},
components
:
{
DutyItemManagement
,
Set
,
ClassListManagement
},
...
...
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