Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
office-web
Overview
Overview
Details
Activity
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
office
office-web
Commits
d58c304b
Commit
d58c304b
authored
Dec 25, 2019
by
无尘
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 修改考勤数据
parent
9955b022
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
8 additions
and
8 deletions
+8
-8
index.html
dist/index.html
+2
-2
app.6b2208a79199dc2cf1c600b1951a242b.css
dist/static/css/app.6b2208a79199dc2cf1c600b1951a242b.css
+0
-0
15.e0f4f745b5dc301356db.js
dist/static/js/15.e0f4f745b5dc301356db.js
+0
-2
15.ff02049c8f18cb82efa6.js
dist/static/js/15.ff02049c8f18cb82efa6.js
+2
-0
manifest.93936a7027268cc9f589.js
dist/static/js/manifest.93936a7027268cc9f589.js
+2
-2
workGroupSet.vue
src/views/enterpriseApp/dailyAttendance/workGroupSet.vue
+2
-2
No files found.
dist/index.html
View file @
d58c304b
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><link
rel=
"shortcut icon"
href=
./favicon.ico
><title>
好办管理平台
</title><link
href=
./static/css/app.b16e6eea9618dd37eb7c2c00640164ac.css
rel=
stylesheet
></head><body
style=
"min-width: 1400px;"
><div
id=
app
></div><script
src=
//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/vue.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js
></script><script>
// Raven.config('https://3715a345910d4c768e7a1ec14619c2d5@sentry.io/1413672').install();
</script><script
type=
text/javascript
src=
./static/js/manifest.ee6a0432ab511160223a.js
></script><script
type=
text/javascript
src=
./static/js/vendor.0000e68e65e4a9dc3840.js
></script><script
type=
text/javascript
src=
./static/js/app.9c584469c2b22effc5a0.js
></script></body></html>
\ No newline at end of file
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><link
rel=
"shortcut icon"
href=
./favicon.ico
><title>
好办管理平台
</title><link
href=
./static/css/app.6b2208a79199dc2cf1c600b1951a242b.css
rel=
stylesheet
></head><body
style=
"min-width: 1400px;"
><div
id=
app
></div><script
src=
//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/vue.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js
></script><script
src=
//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js
></script><script>
// Raven.config('https://3715a345910d4c768e7a1ec14619c2d5@sentry.io/1413672').install();
</script><script
type=
text/javascript
src=
./static/js/manifest.93936a7027268cc9f589.js
></script><script
type=
text/javascript
src=
./static/js/vendor.0000e68e65e4a9dc3840.js
></script><script
type=
text/javascript
src=
./static/js/app.9c584469c2b22effc5a0.js
></script></body></html>
\ No newline at end of file
dist/static/css/app.
b16e6eea9618dd37eb7c2c00640164ac
.css
→
dist/static/css/app.
6b2208a79199dc2cf1c600b1951a242b
.css
View file @
d58c304b
This source diff could not be displayed because it is too large. You can
view the blob
instead.
dist/static/js/15.e0f4f745b5dc301356db.js
deleted
100644 → 0
View file @
9955b022
webpackJsonp
([
15
],{
"47+Q"
:
function
(
e
,
t
){},
"6WUy"
:
function
(
e
,
t
){},
DiBN
:
function
(
e
,
t
){},
estW
:
function
(
e
,
t
,
s
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
a
=
s
(
"Gu7T"
),
o
=
s
.
n
(
a
),
l
=
s
(
"mvHQ"
),
n
=
s
.
n
(
l
),
r
=
s
(
"Xxa5"
),
i
=
s
.
n
(
r
),
c
=
s
(
"exGp"
),
u
=
s
.
n
(
c
),
d
=
s
(
"P9l9"
),
p
=
s
(
"Ch4/"
),
m
=
s
(
"3E4D"
),
g
=
s
(
"PI0u"
),
h
=
{
name
:
"class-select"
,
components
:{},
props
:{
workClassShow
:{
type
:
Boolean
,
default
:
!
1
},
classesId
:{
type
:
String
,
default
:
""
}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
classesId
,
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
}},
methods
:{
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
u
()(
i
.
a
.
mark
(
function
e
(){
var
t
,
s
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
((
t
=
this
).
customDialog
=!
1
,
t
.
selClassesId
){
e
.
next
=
5
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
5
:
s
=
{},
t
.
tableData
.
forEach
(
function
(
e
){
e
.
classesId
==
t
.
selClassesId
&&
(
s
=
e
)}),
t
.
$emit
(
"hideClassDialog"
,
s
),
t
.
$nextTick
(
function
(){
t
.
selClassesId
=
""
});
case
9
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
var
e
=
this
;
e
.
customDialog
=!
1
,
e
.
$emit
(
"hideClassDialog"
),
e
.
$nextTick
(
function
(){
e
.
selClassesId
=
""
})},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
classesName
:
e
.
classesName
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
tableData
=
s
.
result
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
workClassShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
},
classesId
:
function
(
e
){
this
.
selClassesId
=
e
||
""
}},
mounted
:
function
(){
this
.
getClassifyData
(),
this
.
classesId
?
this
.
selClassesId
=
this
.
classesId
:
this
.
selClassesId
=
""
,
this
.
customDialog
=
this
.
workClassShow
}},
f
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"m-b-20"
},[
s
(
"el-input"
,{
staticClass
:
"w-264"
,
staticStyle
:{
width
:
"264px"
},
attrs
:{
placeholder
:
"请输入班次名称"
,
"prefix-icon"
:
"el-icon-search"
,
clearable
:
""
},
on
:{
clear
:
e
.
clearInput
},
nativeOn
:{
keyup
:
function
(
t
){
return
s
=
t
,
e
.
toInput
(
s
,
e
.
classesName
);
var
s
}},
model
:{
value
:
e
.
classesName
,
callback
:
function
(
t
){
e
.
classesName
=
t
},
expression
:
"classesName"
}})],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
tableData
}},[
s
(
"el-table-column"
,{
attrs
:{
label
:
""
,
width
:
"50"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-radio"
,{
attrs
:{
label
:
t
.
row
.
classesId
},
model
:{
value
:
e
.
selClassesId
,
callback
:
function
(
t
){
e
.
selClassesId
=
t
},
expression
:
"selClassesId"
}},[
e
.
_v
(
e
.
_s
(
""
))])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"imageUrl"
,
label
:
"班次名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\
n "
+
e
.
_s
(
t
.
row
.
classesName
)
+
"
\
n "
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"titleName"
,
label
:
"考勤时间"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
v
=
s
(
"VU/8"
)(
h
,
f
,
!
1
,
function
(
e
){
s
(
"j9Ku"
)},
"data-v-41dd4c38"
,
null
).
exports
,
D
=
{
name
:
"class-select-mult"
,
components
:{},
props
:{
workClassMultShow
:{
type
:
Boolean
,
default
:
!
1
},
classesData
:{
type
:
String
,
default
:
""
}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesData
:
JSON
.
parse
(
n
()(
this
.
classesData
))
||
[],
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
,
multipleSelection
:[]}},
methods
:{
toggleSelection
:
function
(
e
){
var
t
=
this
;
e
&&
t
.
$nextTick
(
function
(){
e
.
forEach
(
function
(
e
){
t
.
$refs
.
multipleTable
.
toggleRowSelection
(
e
,
!
0
)})})},
handleSelectionChange
:
function
(
e
){
this
.
multipleSelection
=
e
,
this
.
selClassesData
=
JSON
.
parse
(
n
()(
e
))},
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
u
()(
i
.
a
.
mark
(
function
e
(){
var
t
,
s
,
a
,
o
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
((
t
=
this
).
selClassesData
.
length
){
e
.
next
=
4
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
4
:
if
(
!
(
t
.
selClassesData
.
length
>
10
)){
e
.
next
=
7
;
break
}
return
m
.
a
.
showmsg
(
"最多选择10个班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
7
:
if
(
s
=
[],
t
.
classesData
.
length
&&
(
a
=
t
.
selClassesData
.
map
(
function
(
e
){
return
e
.
classesId
}),
t
.
classesData
.
forEach
(
function
(
e
){
a
.
includes
(
e
.
classesId
)
||
s
.
push
(
e
.
classesName
)})),
!
s
.
length
||!
t
.
$route
.
query
.
attenceGroupId
){
e
.
next
=
12
;
break
}
return
t
.
$confirm
(
"移除后,排班周期将自动去掉该班次,但不影响排班表中已排的班次"
,
"确定从考勤组移除"
+
s
.
join
(
"-"
),{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
var
e
=
[];
t
.
selClassesData
.
forEach
(
function
(
t
){
e
.
push
({
classesId
:
t
.
classesId
,
classesName
:
t
.
classesName
,
classessTimesJson
:
t
.
classessTimesJson
})}),
t
.
$emit
(
"hideMultClassDialog"
,
e
),
t
.
customDialog
=!
1
,
t
.
$nextTick
(
function
(){})}).
catch
(
function
(){}),
e
.
abrupt
(
"return"
,
!
1
);
case
12
:
o
=
[],
t
.
selClassesData
.
forEach
(
function
(
e
){
o
.
push
({
classesId
:
e
.
classesId
,
classesName
:
e
.
classesName
,
classessTimesJson
:
e
.
classessTimesJson
})}),
t
.
$emit
(
"hideMultClassDialog"
,
o
),
t
.
customDialog
=!
1
,
t
.
$nextTick
(
function
(){});
case
17
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
this
.
customDialog
=!
1
,
this
.
$emit
(
"hideMultClassDialog"
),
this
.
$nextTick
(
function
(){})},
handleData
:
function
(){
var
e
=
this
.
selClassesData
.
map
(
function
(
e
){
return
e
.
classesId
}),
t
=
[];
this
.
selClassesData
.
length
&&
(
this
.
tableData
.
forEach
(
function
(
s
){
e
.
includes
(
s
.
classesId
)
&&
t
.
push
(
s
)}),
this
.
toggleSelection
(
t
))},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
classesName
:
e
.
classesName
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
tableData
=
s
.
result
||
[],
e
.
handleData
(),
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
workClassMultShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
,
this
.
getClassifyData
()},
classesData
:
function
(
e
){
this
.
selClassesData
=
e
?
JSON
.
parse
(
n
()(
e
)):[]}},
mounted
:
function
(){
this
.
getClassifyData
(),
this
.
classesData
?
this
.
selClassesData
=
JSON
.
parse
(
n
()(
this
.
classesData
)):
this
.
selClassesData
=
[],
this
.
customDialog
=
this
.
workClassMultShow
}},
y
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"m-b-20"
},[
s
(
"el-input"
,{
staticClass
:
"w-264"
,
staticStyle
:{
width
:
"264px"
},
attrs
:{
placeholder
:
"请输入班次名称"
,
"prefix-icon"
:
"el-icon-search"
,
clearable
:
""
},
on
:{
clear
:
e
.
clearInput
},
nativeOn
:{
keyup
:
function
(
t
){
return
s
=
t
,
e
.
toInput
(
s
,
e
.
classesName
);
var
s
}},
model
:{
value
:
e
.
classesName
,
callback
:
function
(
t
){
e
.
classesName
=
t
},
expression
:
"classesName"
}})],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
tableData
,
height
:
"350"
},
on
:{
"selection-change"
:
e
.
handleSelectionChange
}},[
s
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"imageUrl"
,
label
:
"班次名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\
n "
+
e
.
_s
(
t
.
row
.
classesName
)
+
"
\
n "
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"titleName"
,
label
:
"考勤时间"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
S
,
b
=
s
(
"VU/8"
)(
D
,
y
,
!
1
,
function
(
e
){
s
(
"kr0l"
)},
"data-v-0daf0c9a"
,
null
).
exports
,
_
=
{
name
:
"class-select"
,
components
:{},
props
:{
mapShow
:{
type
:
Boolean
,
default
:
!
1
}},
data
:
function
(){
var
e
=
this
,
t
=
this
;
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
classesId
,
customDialog
:
!
1
,
ruleForm
:{
address
:
""
},
rules
:{
address
:[{
required
:
!
0
,
validator
:
function
(
t
,
s
,
a
){
""
===
s
?
a
(
new
Error
(
"请选择考勤地点"
)):
e
.
lng
&&
e
.
lat
?
a
():
a
(
new
Error
(
"请选择考勤地点"
))},
message
:
"请选择考勤地点"
,
trigger
:
"blur"
}]},
markers
:[],
searchOption
:{
city
:
"杭州"
,
citylimit
:
!
1
},
zoom
:
12
,
mapCenter
:[
120.12497
,
30.277155
],
address
:
""
,
plugin
:[{
pName
:
"ToolBar"
}],
events
:{
click
:
function
(
e
){
var
s
=
e
.
lnglat
,
a
=
s
.
lng
,
o
=
s
.
lat
;
t
.
lng
=
a
,
t
.
lat
=
o
,
new
AMap
.
Geocoder
({
radius
:
1
e3
,
extensions
:
"all"
}).
getAddress
([
a
,
o
],
function
(
e
,
s
){
"complete"
===
e
&&
"OK"
===
s
.
info
&&
s
&&
s
.
regeocode
&&
(
console
.
log
(
s
),
t
.
address
=
s
.
regeocode
.
formattedAddress
,
t
.
ruleForm
.
address
=
s
.
regeocode
.
formattedAddress
,
t
.
$nextTick
())})}},
lng
:
0
,
lat
:
0
}},
methods
:{
onSearchResult
:
function
(
e
){
var
t
=
this
,
s
=
0
,
a
=
0
;
if
(
e
.
length
>
0
){
e
.
forEach
(
function
(
e
){
var
o
=
e
.
lng
,
l
=
e
.
lat
;
a
+=
o
,
s
+=
l
,
t
.
markers
.
push
([
e
.
lng
,
e
.
lat
])});
var
o
=
{
lng
:
a
/
e
.
length
,
lat
:
s
/
e
.
length
};
this
.
mapCenter
=
[
o
.
lng
,
o
.
lat
]}},
customConfirm
:
Object
(
g
.
a
)((
S
=
u
()(
i
.
a
.
mark
(
function
e
(
t
){
var
s
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
s
=
this
,
this
.
$refs
[
t
].
validate
(
function
(
e
){
e
&&
(
s
.
customDialog
=!
1
,
s
.
$emit
(
"hideMapDialog"
,{
address
:
s
.
address
,
longitude
:
s
.
lng
,
latitude
:
s
.
lat
}),
s
.
$nextTick
(
function
(){
s
.
address
=
""
,
s
.
ruleForm
.
address
=
""
}))});
case
2
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
function
(
e
){
return
S
.
apply
(
this
,
arguments
)}),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
var
e
=
this
;
e
.
customDialog
=!
1
,
e
.
$emit
(
"hideMapDialog"
),
e
.
$nextTick
(
function
(){
e
.
address
=
""
,
e
.
ruleForm
.
address
=
""
})}},
watch
:{
mapShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
}},
mounted
:
function
(){
this
.
customDialog
=
this
.
mapShow
}},
C
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
directives
:[{
name
:
"show"
,
rawName
:
"v-show"
,
value
:
e
.
customDialog
,
expression
:
"customDialog"
}]},[
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"考勤地点"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"amap-page-container"
},[
s
(
"el-amap-search-box"
,{
staticClass
:
"search-box"
,
attrs
:{
"search-option"
:
e
.
searchOption
,
"on-search-result"
:
e
.
onSearchResult
}}),
e
.
_v
(
" "
),
s
(
"el-amap"
,{
staticClass
:
"amap-demo"
,
attrs
:{
vid
:
"amapDemo"
,
center
:
e
.
mapCenter
,
zoom
:
e
.
zoom
,
plugin
:
e
.
plugin
,
events
:
e
.
events
}},
e
.
_l
(
e
.
markers
,
function
(
t
,
a
){
return
s
(
"el-amap-marker"
,{
key
:
a
+
"maker"
,
attrs
:{
position
:
t
,
events
:
e
.
events
}})})),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"toolbar m-t-20"
},[
s
(
"el-form"
,{
ref
:
"ruleForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleForm
,
rules
:
e
.
rules
,
"label-width"
:
"100px"
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"详细地址:"
,
prop
:
"address"
}},[
s
(
"el-input"
,{
attrs
:{
readonly
:
""
},
model
:{
value
:
e
.
ruleForm
.
address
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleForm
,
"address"
,
t
)},
expression
:
"ruleForm.address"
}})],
1
)],
1
)],
1
)],
1
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])],
1
)},
staticRenderFns
:[]};
var
w
=
s
(
"VU/8"
)(
_
,
C
,
!
1
,
function
(
e
){
s
(
"DiBN"
)},
"data-v-5080e8ec"
,
null
).
exports
,
F
=
s
(
"Ke24"
),
k
=
s
(
"fZjL"
),
I
=
s
.
n
(
k
),
T
=
s
(
"l46T"
),
J
=
{
name
:
"cycle-set"
,
components
:{
limitInput
:
T
.
a
},
props
:{
rangeShow
:{
type
:
Boolean
,
default
:
!
1
},
attenceGroupId
:{
type
:
String
,
default
:
""
},
classesJson
:{
type
:[
Array
,
Object
],
default
:
function
(){
return
[]}},
attenceGroupData
:{
type
:[
Array
,
Object
],
default
:
function
(){
return
{}}}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
attenceGroupId
,
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
,
ruleFormData
:{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]},
rules
:{
rangeName
:[{
required
:
!
0
,
message
:
"请输入周期名称"
,
trigger
:
"blur"
}]}}},
methods
:{
changeClass
:
function
(
e
,
t
){
this
.
tableData
.
forEach
(
function
(
s
){
s
.
classesId
==
e
&&
(
t
.
classesName
=
s
.
classesName
)})},
handleRangeDay
:
function
(
e
){
var
t
=
this
.
ruleFormData
.
classes
?
this
.
ruleFormData
.
classes
.
length
:
0
;
if
(
e
-
t
>
0
)
for
(
var
s
=
0
;
s
<
e
-
t
;
s
++
)
this
.
ruleFormData
.
classes
.
push
({
classesId
:
""
,
classesName
:
""
});
e
-
t
<
0
&&
this
.
ruleFormData
.
classes
.
splice
(
e
-
1
,
t
-
e
)},
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
function
(){
var
e
=
u
()(
i
.
a
.
mark
(
function
e
(
t
){
var
s
,
a
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
(
a
=!
0
,(
s
=
this
).
ruleFormData
.
classes
.
forEach
(
function
(
e
){
a
=!!
e
.
classesId
}),
a
){
e
.
next
=
6
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
6
:
s
.
$refs
[
t
].
validate
(
function
(
e
){
e
&&
(
s
.
customDialog
=!
1
,
s
.
$emit
(
"hideCycleDialog"
,
s
.
ruleFormData
),
s
.
resetData
())});
case
7
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)}));
return
function
(
t
){
return
e
.
apply
(
this
,
arguments
)}}(),
300
),
resetData
:
function
(){
var
e
=
this
;
e
.
$nextTick
(
function
(){
e
.
ruleFormData
=
{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]}})},
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
this
.
customDialog
=!
1
,
this
.
$emit
(
"hideCycleDialog"
),
this
.
resetData
()},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
,
enterpriseId
:
e
.
enterpriseId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
(
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
s
.
result
.
forEach
(
function
(
e
){
e
.
label
=
" "
,
e
.
classessTimesJson
&&
e
.
classessTimesJson
.
length
&&
e
.
classessTimesJson
.
forEach
(
function
(
t
){
e
.
label
+=
t
.
startTime
+
"-"
+
t
.
endTime
})})),
e
.
tableData
=
s
.
result
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
getRangeData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
attenceGroupId
:
e
.
attenceGroupId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-range-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
(
s
.
result
.
forEach
(
function
(
e
){
e
.
classes
=
e
.
classesList
}),
e
.
ruleFormData
=
s
.
result
[
0
]
||
[]),
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
rangeShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
},
attenceGroupId
:
function
(
e
){
e
&&
this
.
getRangeData
()},
attenceGroupData
:
function
(
e
){
I
()(
e
).
length
&&
(
this
.
ruleFormData
=
JSON
.
parse
(
n
()(
e
)))},
classesJson
:
function
(
e
){
e
.
length
&&
this
.
getClassifyData
()}},
mounted
:
function
(){
this
.
attenceGroupId
&&
this
.
getRangeData
(),
I
()(
this
.
attenceGroupData
).
length
&&
(
this
.
ruleFormData
=
JSON
.
parse
(
n
()(
this
.
attenceGroupData
))),
this
.
classesJson
.
length
&&
this
.
getClassifyData
(),
this
.
customDialog
=
this
.
rangeShow
}},
N
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"el-form"
,{
ref
:
"ruleForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleFormData
,
rules
:
e
.
rules
,
"label-width"
:
"120px"
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"周期名称:"
,
prop
:
"rangeName"
}},[
s
(
"limitInput"
,{
attrs
:{
inputWidth
:
305
,
inputValue
:
e
.
ruleFormData
.
rangeName
,
holder
:
"请输入周期名称"
,
getByType
:
"word"
,
maxLength
:
15
},
on
:{
"update:inputValue"
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"rangeName"
,
t
)}}})],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"每个周期天数:"
,
prop
:
""
}},[
s
(
"div"
,[
s
(
"el-input-number"
,{
attrs
:{
"controls-position"
:
"right"
,
step
:
1
,
"step-strictly"
:
!
0
,
min
:
3
,
max
:
31
},
on
:{
change
:
e
.
handleRangeDay
},
model
:{
value
:
e
.
ruleFormData
.
days
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"days"
,
t
)},
expression
:
"ruleFormData.days"
}}),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"font-12 color-909399"
},[
e
.
_v
(
"以3天为周期进行循环,最大周期天数为31天"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"range-classes"
},[
s
(
"ul"
,
e
.
_l
(
e
.
ruleFormData
.
classes
,
function
(
t
,
a
){
return
s
(
"li"
,{
key
:
a
+
"class"
},[
s
(
"span"
,[
e
.
_v
(
"第"
+
e
.
_s
(
a
+
1
)
+
"天:"
)]),
e
.
_v
(
" "
),
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
on
:{
change
:
function
(
s
){
e
.
changeClass
(
s
,
t
)}},
model
:{
value
:
t
.
classesId
,
callback
:
function
(
s
){
e
.
$set
(
t
,
"classesId"
,
s
)},
expression
:
"item.classesId"
}},
e
.
_l
(
e
.
tableData
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
classesId
,
attrs
:{
label
:
"班次"
+
e
.
classesName
+
e
.
label
,
value
:
e
.
classesId
}})}))],
1
)}))])])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
x
=
s
(
"VU/8"
)(
J
,
N
,
!
1
,
function
(
e
){
s
(
"6WUy"
)},
"data-v-c98424be"
,
null
).
exports
,
R
=
s
(
"Ie7z"
),
$
=
s
(
"c4uw"
),
L
=
s
(
"Kkt8"
),
O
=
{
name
:
"workGroupSet"
,
props
:{
brandId
:{
type
:
String
,
default
:
function
(){
return
""
}},
activeGroupId
:{
type
:
String
,
default
:
function
(){
return
""
}}},
data
:
function
(){
return
{
projectName
:
"haoban-manage-web"
,
topMenuData
:[{
id
:
"1"
,
name
:
"考勤组管理"
,
path
:
"/workSet?appIcon="
+
this
.
$route
.
query
.
appIcon
},{
id
:
"2"
,
name
:
this
.
$route
.
query
.
attenceGroupId
?
"编辑考勤组"
:
"新建考勤组"
,
path
:
""
}],
weekDays
:{
0
:
"周日"
,
1
:
"周一"
,
2
:
"周二"
,
3
:
"周三"
,
4
:
"周四"
,
5
:
"周五"
,
6
:
"周六"
},
classifyOptions
:[],
activeId
:
"2"
,
activeBrand
:
this
.
brandId
,
activeGroup
:
this
.
activeGroupId
,
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
ruleFormData
:{
attenceGroupId
:
""
,
attenceGroupName
:
""
,
attenceType
:
1
,
attenceRangeType
:
!
1
,
attenceRangeStoreType
:
!
1
,
adminList
:[],
storeList
:[],
noAttenceRangeType
:
!
1
,
noAttenceRangeStoreType
:
!
1
,
noAdminList
:[],
noStoreList
:[],
lawFreeFlag
:
!
1
,
clockDistance
:
300
,
storeClockFlag
:
!
1
,
gpsFlag
:
!
1
,
distanceAddress
:[],
attenceRangeJson
:[],
sperialRangeJson
:[],
mustJson
:[],
noMustJson
:[],
attenceWorkJson
:[{
weekDay
:
"1"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"2"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"3"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"4"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"5"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"6"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"0"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]}],
attenceClassesRangeJSON
:[],
classesJson
:[]},
rules
:{
attenceGroupName
:[{
required
:
!
0
,
message
:
"请输入考勤组名称"
,
trigger
:
"blur"
}],
content
:[{
required
:
!
0
,
message
:
"请输入公告内容"
,
trigger
:
"blur"
}],
sendType
:[{
required
:
!
0
,
message
:
"请选择发送方式"
,
trigger
:
"change"
}]},
wxFlag
:
1
,
actionUrl
:
"/haoban-manage-web/upload-img"
,
datePickerBool
:
!
1
,
dateValue
:
""
,
mustType
:
""
,
selectNoType
:
""
,
treeSet
:{
isSelectPerson
:
!
1
,
dialogVisible
:
!
1
,
isSingle
:
!
1
,
openNextBool
:
!
0
},
mustSelection
:[],
changed
:
""
,
onlyPerson
:
!
1
,
appScene
:
1
,
mustStoreList
:[],
storeTreeSet
:{
isSelectPerson
:
!
0
,
dialogVisible
:
!
1
,
isSingle
:
!
1
},
changedNo
:
""
,
noTreeSet
:{
isSelectPerson
:
!
1
,
dialogVisible
:
!
1
,
isSingle
:
!
1
,
openNextBool
:
!
0
},
noSelection
:[],
noStoreList
:[],
noStoreTreeSet
:{
isSelectPerson
:
!
0
,
dialogVisible
:
!
1
,
isSingle
:
!
1
},
defaultStoreBool
:
!
1
,
saveDataBool
:
!
0
,
showEffect
:
!
1
,
workClassShow
:
!
1
,
modIndex
:
""
,
modRow
:{},
showClassesFlag
:
!
1
,
multipleSelection
:[],
distance
:[{
value
:
"50"
,
label
:
"50米"
}],
mapShow
:
!
1
,
rangeShow
:
!
1
,
classesJson
:[],
attenceGroupData
:{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]},
workClassMultShow
:
!
1
}},
methods
:{
toShowRangeMult
:
function
(){
this
.
classesJson
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
)),
this
.
rangeShow
=!
0
},
hideCycleDialog
:
function
(
e
){
if
(
this
.
rangeShow
=!
1
,
!
e
)
return
!
1
;
this
.
ruleFormData
.
attenceClassesRangeJSON
=
JSON
.
parse
(
n
()([
e
])),
this
.
$forceUpdate
()},
toShowClassMult
:
function
(){
this
.
workClassMultShow
=!
0
,
this
.
classesData
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
))},
hideMultClassDialog
:
function
(
e
){
if
(
this
.
workClassMultShow
=!
1
,
this
.
classesData
=
[],
!
e
)
return
!
1
;
this
.
ruleFormData
.
classesJson
=
JSON
.
parse
(
n
()(
e
)),
this
.
classesJson
=
JSON
.
parse
(
n
()(
e
))},
editRange
:
function
(
e
,
t
){
this
.
classesJson
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
)),
this
.
attenceGroupData
=
JSON
.
parse
(
n
()(
t
)),
this
.
rangeShow
=!
0
},
addMap
:
function
(){
this
.
mapShow
=!
0
},
hideMapDialog
:
function
(
e
){
if
(
console
.
log
(
e
),
this
.
mapShow
=!
1
,
!
e
)
return
!
1
;
this
.
ruleFormData
.
distanceAddress
.
push
({
address
:
e
.
address
,
longitude
:
e
.
longitude
,
latitude
:
e
.
latitude
})},
delGps
:
function
(
e
,
t
){
this
.
ruleFormData
.
distanceAddress
.
splice
(
e
,
1
)},
showClasses
:
function
(){
this
.
workClassShow
=!
0
},
modClasses
:
function
(
e
,
t
){
console
.
log
(
t
),
this
.
modIndex
=
e
,
this
.
modRow
=
t
,
this
.
classesId
=
t
.
classesId
||
""
,
this
.
workClassShow
=!
0
},
hideClassDialog
:
function
(
e
){
if
(
this
.
workClassShow
=!
1
,
this
.
classesId
=
""
,
!
e
)
return
!
1
;
this
.
modRow
.
workType
=!
0
;
var
t
=
JSON
.
parse
(
n
()(
e
));
this
.
modRow
.
classesName
=
t
.
classesName
,
this
.
modRow
.
classesId
=
t
.
classesId
,
this
.
modRow
.
classessTimesJson
=
t
.
classessTimesJson
},
handleSelectionChange
:
function
(
e
){
this
.
multipleSelection
=
e
},
selectBrandId
:
function
(
e
,
t
){
this
.
brandId
=
e
},
cancelSend
:
function
(){
var
e
=
this
;
if
(
e
.
$route
.
query
.
attenceGroupId
)
return
e
.
$router
.
go
(
-
1
),
!
1
;
e
.
$confirm
(
"是否确认返回,返回后当前页面内容将丢失"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
e
.
$router
.
go
(
-
1
)}).
catch
(
function
(){})},
showDialogMust
:
function
(
e
,
t
){
if
(
this
.
mustType
=
e
,
this
.
changed
=
e
,
"store"
===
e
)
return
this
.
nustStoreList
=
t
,
void
(
this
.
storeTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
});
this
.
treeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
},
this
.
nustSelection
=
t
},
showDialogNo
:
function
(
e
,
t
){
if
(
this
.
selectNoType
=
e
,
this
.
changedNo
=
e
,
"store"
===
e
)
return
this
.
noStoreList
=
t
,
void
(
this
.
noStoreTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
});
this
.
noTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
},
this
.
noSelection
=
t
},
handleMustList
:
function
(
e
){
console
.
log
(
e
),
"store"
===
this
.
mustType
?(
this
.
ruleFormData
.
storeList
=
e
,
this
.
mustStoreList
=
e
):(
this
.
ruleFormData
.
adminList
=
e
,
this
.
mustSelection
=
e
)},
handleNoList
:
function
(
e
){
console
.
log
(
e
),
"store"
===
this
.
selectNoType
?(
this
.
ruleFormData
.
noStoreList
=
e
,
this
.
noStoreList
=
e
):(
this
.
ruleFormData
.
noAdminList
=
e
,
this
.
noSelection
=
e
)},
delDepart
:
function
(
e
,
t
,
s
){
t
.
splice
(
e
,
1
)},
changeMyDate
:
function
(){
this
.
dateValue
?
this
.
saveDataBool
=!
0
:
this
.
datePickerBool
=!
0
},
changeSendType
:
function
(
e
){
"0"
==
e
&&
(
this
.
saveDataBool
=!
0
)},
toSubmit
:
function
(
e
,
t
){
var
s
=
this
,
a
=
[];
s
.
ruleFormData
.
attenceRangeType
&&
s
.
ruleFormData
.
adminList
.
length
&&
(
a
=
s
.
ruleFormData
.
adminList
.
map
(
function
(
e
){
var
t
=
{
rangeType
:
1
,
storeFlag
:
0
,
id
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
};
return
1
==
e
.
type
&&
(
t
.
userId
=
e
.
userId
,
t
.
clerkId
=
e
.
id
),
2
==
e
.
type
&&
(
t
.
groupId
=
e
.
id
),
3
==
e
.
type
&&
(
t
.
storeId
=
e
.
id
),
t
}));
var
l
=
[];
s
.
ruleFormData
.
attenceRangeStoreType
&&
s
.
ruleFormData
.
storeList
.
length
&&
(
l
=
s
.
ruleFormData
.
storeList
.
map
(
function
(
e
){
var
t
=
{
rangeType
:
1
,
storeFlag
:
1
,
id
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
};
return
1
==
e
.
type
&&
(
t
.
userId
=
e
.
userId
,
t
.
clerkId
=
e
.
id
),
2
==
e
.
type
&&
(
t
.
groupId
=
e
.
id
),
3
==
e
.
type
&&
(
t
.
storeId
=
e
.
id
),
t
}));
var
n
=
[];
s
.
ruleFormData
.
noAttenceRangeType
&&
s
.
ruleFormData
.
noAdminList
.
length
&&
(
n
=
s
.
ruleFormData
.
noAdminList
.
map
(
function
(
e
){
return
{
rangeType
:
2
,
storeFlag
:
0
,
id
:
e
.
id
,
userId
:
e
.
userId
,
clerkId
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
}}));
s
.
ruleFormData
.
noAttenceRangeStoreType
&&
s
.
ruleFormData
.
noStoreList
.
length
&&
(
l
=
s
.
ruleFormData
.
noStoreList
.
map
(
function
(
e
){
return
{
rangeType
:
2
,
storeFlag
:
1
,
id
:
e
.
id
,
userId
:
e
.
userId
,
clerkId
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
}})),
s
.
ruleFormData
.
attenceRangeJson
=
[].
concat
(
o
()(
a
),
o
()(
l
),
o
()(
n
),[]),
console
.
log
(
s
.
ruleFormData
),
s
.
$refs
[
e
].
validate
(
function
(
t
){
t
&&
(
s
.
$route
.
query
.
attenceGroupId
?
s
.
showEffect
=!
0
:
s
.
sendData
(
e
,
1
))})},
sendData
:
Object
(
g
.
a
)(
function
(
e
,
t
){
var
s
=
this
,
a
=
{
enterpriseId
:
s
.
enterpriseId
,
effectFlag
:
t
,
attenceGroupId
:
s
.
ruleFormData
.
attenceGroupId
,
attenceGroupName
:
s
.
ruleFormData
.
attenceGroupName
,
attenceType
:
s
.
ruleFormData
.
attenceType
,
attenceRangeType
:
s
.
ruleFormData
.
attenceRangeType
?
1
:
0
,
attenceRangeStoreType
:
s
.
ruleFormData
.
attenceRangeStoreType
?
1
:
0
,
noAttenceRangeType
:
s
.
ruleFormData
.
noAttenceRangeType
?
1
:
0
,
noAttenceRangeStoreType
:
s
.
ruleFormData
.
noAttenceRangeStoreType
?
1
:
0
,
lawFreeFlag
:
s
.
ruleFormData
.
lawFreeFlag
?
1
:
0
,
clockDistance
:
s
.
ruleFormData
.
clockDistance
,
storeClockFlag
:
s
.
ruleFormData
.
storeClockFlag
?
1
:
0
,
gpsFlag
:
s
.
ruleFormData
.
gpsFlag
?
1
:
0
,
distanceAddress
:
n
()(
s
.
ruleFormData
.
distanceAddress
),
attenceRangeJson
:
n
()(
s
.
ruleFormData
.
attenceRangeJson
),
sperialRangeJson
:
n
()(
s
.
ruleFormData
.
sperialRangeJson
),
attenceWorkJson
:
n
()(
s
.
ruleFormData
.
attenceWorkJson
),
attenceClassesRangeJSON
:
n
()(
s
.
ruleFormData
.
attenceClassesRangeJSON
),
classesJson
:
n
()(
s
.
ruleFormData
.
classesJson
)};
s
.
saveDataBool
&&
Object
(
d
.
e
)(
s
.
$route
.
query
.
attenceGroupId
?
"/haoban-app-attence-web/attence-edit"
:
"/haoban-app-attence-web/attence-add"
,
a
).
then
(
function
(
e
){
var
t
=
e
.
data
;
1
==
t
.
errorCode
?
1
==
s
.
ruleFormData
.
attenceType
?(
s
.
$message
.
success
(
"保存成功"
),
s
.
$router
.
go
(
-
1
)):
s
.
$router
.
push
(
"/workTimeManage?appIcon="
+
s
.
$route
.
query
.
appIcon
+
"&attenceGroupId="
+
s
.
$route
.
query
.
attenceGroupId
):
s
.
$message
.
error
(
t
.
message
)})},
500
),
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
.
list
&&
s
.
result
.
list
.
length
&&
s
.
result
.
list
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
classifyList
=
s
.
result
.
list
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
getGroupData
:
function
(){
var
e
=
this
,
t
=
{
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-detail"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
.
attenceRangeType
=
1
==
s
.
result
.
attenceRangeType
,
s
.
result
.
attenceRangeStoreType
=
1
==
s
.
result
.
attenceRangeStoreType
,
s
.
result
.
noAttenceRangeType
=
1
==
s
.
result
.
noAttenceRangeType
,
s
.
result
.
noAttenceRangeStoreType
=
1
==
s
.
result
.
noAttenceRangeStoreType
,
s
.
result
.
attenceRangeJson
=
s
.
result
.
attenceRangeJson
?
JSON
.
parse
(
s
.
result
.
attenceRangeJson
):[],
s
.
result
.
lawFreeFlag
=
1
==
s
.
result
.
lawFreeFlag
,
s
.
result
.
storeClockFlag
=
1
==
s
.
result
.
storeClockFlag
,
s
.
result
.
gpsFlag
=
1
==
s
.
result
.
gpsFlag
,
s
.
result
.
clockDistance
=
parseInt
(
s
.
result
.
clockDistance
),
s
.
result
.
distanceAddress
=
s
.
result
.
distanceAddress
?
JSON
.
parse
(
s
.
result
.
distanceAddress
):[],
s
.
result
.
sperialRangeJson
=
s
.
result
.
sperialRangeJson
?
JSON
.
parse
(
s
.
result
.
sperialRangeJson
):[],
s
.
result
.
attenceWorkJson
=
s
.
result
.
attenceWorkJson
?
JSON
.
parse
(
s
.
result
.
attenceWorkJson
):[],
s
.
result
.
attenceClassesRangeJSON
=
s
.
result
.
attenceClassesRangeJSON
?
JSON
.
parse
(
s
.
result
.
attenceClassesRangeJSON
):[],
s
.
result
.
classesJson
=
s
.
result
.
classesJson
?
JSON
.
parse
(
s
.
result
.
classesJson
):[],
s
.
result
.
adminList
=
[],
s
.
result
.
storeList
=
[],
s
.
result
.
noAdminList
=
[],
s
.
result
.
noStoreList
=
[],
s
.
result
.
attenceRangeJson
&&
s
.
result
.
attenceRangeJson
.
forEach
(
function
(
e
){
e
.
label
=
e
.
name
,
e
.
type
=
e
.
userId
?
"1"
:
e
.
groupId
?
"2"
:
"3"
,
e
.
id
=
e
.
clerkId
?
e
.
clerkId
:
e
.
groupId
?
e
.
groupId
:
e
.
storeId
,
1
==
e
.
rangeType
&&
0
==
e
.
storeFlag
&&
s
.
result
.
adminList
.
push
(
e
),
2
==
e
.
rangeType
&&
0
==
e
.
storeFlag
&&
s
.
result
.
noAdminList
.
push
(
e
),
1
==
e
.
rangeType
&&
1
==
e
.
storeFlag
&&
s
.
result
.
storeList
.
push
(
e
),
2
==
e
.
rangeType
&&
1
==
e
.
storeFlag
&&
s
.
result
.
noStoreList
.
push
(
e
)}),
s
.
result
.
attenceWorkJson
&&
s
.
result
.
attenceWorkJson
.
forEach
(
function
(
e
){
e
.
workType
=
1
==
e
.
workType
}),
s
.
result
.
attenceWorkJson
&&
s
.
result
.
attenceWorkJson
.
length
&&
s
.
result
.
attenceWorkJson
.
forEach
(
function
(
e
){
e
.
classessTimesJson
=
e
.
classessTimesJson
?
JSON
.
parse
(
e
.
classessTimesJson
):[]}),
s
.
result
.
classesJson
&&
s
.
result
.
classesJson
.
length
&&
s
.
result
.
classesJson
.
forEach
(
function
(
e
){
e
.
classessTimesJson
=
e
.
classessTimesJson
?
JSON
.
parse
(
e
.
classessTimesJson
):[]}),
e
.
mustSelection
=
s
.
result
.
adminList
,
e
.
mustStoreList
=
s
.
result
.
storeList
,
e
.
noSelection
=
s
.
result
.
noAdminList
,
e
.
noStoreList
=
s
.
result
.
noStoreList
,
e
.
ruleFormData
=
JSON
.
parse
(
n
()(
s
.
result
)),
!
1
;
p
.
a
.
errorMsg
(
resData
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
setDistance
:
function
(){
for
(
var
e
=
1
;
e
<
11
;
e
++
)
this
.
distance
.
push
({
value
:
100
*
e
,
label
:
100
*
e
+
"米"
});
this
.
distance
.
push
({
value
:
2
e3
,
label
:
"2000米"
})}},
watch
:{
brandId
:
function
(
e
,
t
){
e
&&
(
this
.
activeBrand
=
e
,
this
.
getClassifyData
())},
activeGroupId
:
function
(
e
,
t
){
e
&&
(
this
.
activeGroup
=
e
)}},
components
:{
commonDetailTop
:
F
.
a
,
limitInput
:
T
.
a
,
limitTextarea
:
L
.
a
,
vueSelectStore
:
R
.
a
,
vueSelectEmployee
:
$
.
a
,
classSelect
:
v
,
mapSelect
:
w
,
classSelectMult
:
b
,
cycleSet
:
x
},
mounted
:
function
(){
var
e
=
this
;
e
.
$emit
(
"showTab"
,
"2"
),
e
.
setDistance
(),
e
.
$route
.
query
.
attenceGroupId
&&
e
.
$nextTick
(
function
(){
e
.
getGroupData
()})}},
G
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
staticClass
:
"notice-list-wrap"
},[
s
(
"div"
,{
staticClass
:
"notice-list"
},[
s
(
"common-detail-top"
,{
attrs
:{
topMenuData
:
e
.
topMenuData
,
activeId
:
e
.
activeId
}}),
e
.
_v
(
" "
),
s
(
"el-form"
,{
ref
:
"noteForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleFormData
,
rules
:
e
.
rules
,
"label-width"
:
"120px"
}},[
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"考勤组名称:"
,
prop
:
"attenceGroupName"
}},[
s
(
"limitInput"
,{
attrs
:{
disflag
:
!!
e
.
$route
.
query
.
attenceGroupId
,
inputWidth
:
286
,
inputValue
:
e
.
ruleFormData
.
attenceGroupName
,
holder
:
"请输入考勤组名称"
,
getByType
:
"word"
,
maxLength
:
15
},
on
:{
"update:inputValue"
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceGroupName"
,
t
)}}})],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"参与考勤人员:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"flex"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
attenceRangeType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceRangeType"
,
t
)},
expression
:
"ruleFormData.attenceRangeType"
}},[
e
.
_v
(
"行政架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
attenceRangeType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogMust
(
"depart"
,
e
.
ruleFormData
.
adminList
)}}},[
e
.
ruleFormData
.
adminList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择行政架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
adminList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
adminList
,
"depart"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"flex m-t-20"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
attenceRangeStoreType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceRangeStoreType"
,
t
)},
expression
:
"ruleFormData.attenceRangeStoreType"
}},[
e
.
_v
(
"门店架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
attenceRangeStoreType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogMust
(
"store"
,
e
.
ruleFormData
.
storeList
)}}},[
e
.
ruleFormData
.
storeList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择门店架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
storeList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
storeList
,
"store"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
)]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"考勤白名单:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"flex"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
noAttenceRangeType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"noAttenceRangeType"
,
t
)},
expression
:
"ruleFormData.noAttenceRangeType"
}},[
e
.
_v
(
"行政架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
noAttenceRangeType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogNo
(
"depart"
,
e
.
ruleFormData
.
noAdminList
)}}},[
e
.
ruleFormData
.
noAdminList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择行政架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
noAdminList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
noAdminList
,
"depart"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"flex m-t-20"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
noAttenceRangeStoreType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"noAttenceRangeStoreType"
,
t
)},
expression
:
"ruleFormData.noAttenceRangeStoreType"
}},[
e
.
_v
(
"门店架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
noAttenceRangeStoreType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogNo
(
"store"
,
e
.
ruleFormData
.
noStoreList
)}}},[
e
.
ruleFormData
.
noStoreList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择门店架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
noStoreList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
noStoreList
,
"store"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
)]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤类型:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"work-type m-b-8"
},[
s
(
"el-radio"
,{
attrs
:{
disabled
:
!!
e
.
$route
.
query
.
attenceGroupId
,
label
:
1
},
model
:{
value
:
e
.
ruleFormData
.
attenceType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceType"
,
t
)},
expression
:
"ruleFormData.attenceType"
}},[
e
.
_v
(
"固定时间上下班【所有人按照相同时间打卡】"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"line-h-15 font-14 color-909399"
},[
e
.
_v
(
"适用于:办公室等"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"work-type m-b-8"
},[
s
(
"el-radio"
,{
attrs
:{
disabled
:
!!
e
.
$route
.
query
.
attenceGroupId
,
label
:
2
},
model
:{
value
:
e
.
ruleFormData
.
attenceType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceType"
,
t
)},
expression
:
"ruleFormData.attenceType"
}},[
e
.
_v
(
"排班时间上下班【不同人员根据各自排班打卡】"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"line-h-15 font-14 color-909399"
},[
e
.
_v
(
"适用于:工厂、门店等"
)])],
1
)]),
e
.
_v
(
" "
),
1
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"工作日设置:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"quick-set-table"
},[
s
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
attenceWorkJson
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
width
:
"55"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"工作日"
,
width
:
"120"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
e
.
weekDays
[
t
.
row
.
weekDay
]))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"排班时间段"
,
width
:
"120"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
t
.
row
.
workType
?
s
(
"div"
,
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})):
s
(
"div"
,[
e
.
_v
(
"休息"
)])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
s
.
stopPropagation
(),
e
.
modClasses
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"更改班次"
)])]}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
lawFreeFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"lawFreeFlag"
,
t
)},
expression
:
"ruleFormData.lawFreeFlag"
}},[
e
.
_v
(
"法定节假日自动排休"
)])],
1
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤班次:"
,
prop
:
""
}},[
e
.
ruleFormData
.
classesJson
.
length
?
s
(
"div"
,{
staticClass
:
"tags-classes"
},[
s
(
"div"
,{
staticClass
:
"attend-type-classes"
,
on
:{
click
:
e
.
toShowClassMult
}},[
s
(
"div"
,{
staticClass
:
"attend-type-classes-display"
},
e
.
_l
(
e
.
ruleFormData
.
classesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
,
class
:[
"class-tag"
,
a
%
7
==
0
?
"day-tag-blue"
:
""
,
a
%
7
==
1
?
"day-tag-red"
:
""
,
a
%
7
==
2
?
"day-tag-purple"
:
""
,
a
%
7
==
3
?
"day-tag-orange"
:
""
,
a
%
7
==
4
?
"day-tag-green"
:
""
,
a
%
7
==
5
?
"day-tag-pink"
:
""
,
a
%
7
==
6
?
"day-tag-cyan"
:
""
]},[
s
(
"span"
,{
staticClass
:
"ant-tag-text"
},[
e
.
_v
(
"班次"
+
e
.
_s
(
t
.
classesName
)
+
":"
)]),
e
.
_v
(
" "
),
e
.
_l
(
t
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"span"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})],
2
)}))])]):
s
(
"div"
,{
staticClass
:
"classes-btn"
},[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
toShowClassMult
}},[
e
.
_v
(
"选择班次"
)])],
1
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
&&
e
.
ruleFormData
.
classesJson
.
length
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"排班周期:"
,
prop
:
""
}},[
e
.
ruleFormData
.
attenceClassesRangeJSON
.
length
?
s
(
"el-table"
,{
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
attenceClassesRangeJSON
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"ranageName"
,
label
:
"周期名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
rangeName
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"周期班次"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classes
,
function
(
t
,
a
){
return
s
(
"span"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
a
>
1
?
"-"
:
""
)
+
e
.
_s
(
t
.
classesName
))])})}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"ranageName"
,
label
:
"周期天数"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
days
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
e
.
editRange
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"编辑"
)])]}}])})],
1
):
s
(
"div"
,{
staticClass
:
"classes-btn"
},[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
toShowRangeMult
}},[
e
.
_v
(
"请设置排班周期"
)])],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤方式:"
,
prop
:
""
}},[
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
gpsFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"gpsFlag"
,
t
)},
expression
:
"ruleFormData.gpsFlag"
}},[
e
.
_v
(
"GPS打卡"
)]),
e
.
ruleFormData
.
gpsFlag
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"p-l-10 font-12 color-909399"
},[
e
.
_v
(
"你尚未设置任何考勤方式,保存设置后成员可在任何地点打卡"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"gps-body p-20 bg-f7f8fa"
,
staticStyle
:{
width
:
"567px"
}},[
s
(
"div"
,[
e
.
_v
(
"根据工作地点考勤(可添加多个考勤地点)"
)]),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
addMap
}},[
e
.
_v
(
"添加考勤地点"
)]),
e
.
_v
(
" "
),
s
(
"span"
,[
e
.
_v
(
"有效范围"
)]),
e
.
_v
(
" "
),
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
ruleFormData
.
clockDistance
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"clockDistance"
,
t
)},
expression
:
"ruleFormData.clockDistance"
}},
e
.
_l
(
e
.
distance
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
value
,
attrs
:{
label
:
e
.
label
,
value
:
e
.
value
}})}))],
1
),
e
.
_v
(
" "
),
e
.
ruleFormData
.
distanceAddress
.
length
?
s
(
"div"
,{
staticClass
:
"m-t-20"
},[
s
(
"el-table"
,{
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
distanceAddress
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"考勤地址"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
address
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
e
.
delGps
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"删除"
)])]}}])})],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
storeClockFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"storeClockFlag"
,
t
)},
expression
:
"ruleFormData.storeClockFlag"
}},[
e
.
_v
(
"根据门店地址经纬度自动配置"
)]),
e
.
_v
(
" "
),
s
(
"p"
,{
staticClass
:
"font-14 color-909399"
},[
e
.
_v
(
"如门店经纬度有误,请在通讯录修改门店相关信息,未设置门店打卡无须选择此项"
)])],
1
)])]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,[
s
(
"div"
,{
staticClass
:
"btn-wrap"
},[
s
(
"el-button"
,{
attrs
:{
plain
:
""
},
on
:{
click
:
e
.
cancelSend
}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
1
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
toSubmit
(
"noteForm"
,
"1"
)}}},[
e
.
_v
(
"保存"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
toSubmit
(
"noteForm"
,
"2"
)}}},[
e
.
_v
(
"保存设置,开始排班 "
)]):
e
.
_e
()],
1
)])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"vue-select-employee"
,{
attrs
:{
appScene
:
e
.
appScene
,
defaultSelection
:
e
.
mustSelection
,
onlyPerson
:
e
.
onlyPerson
,
treeSet
:
e
.
treeSet
,
changed
:
e
.
changed
},
on
:{
handleSelectedList
:
e
.
handleMustList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-store"
,{
ref
:
"storeSelector"
,
attrs
:{
appScene
:
e
.
appScene
,
treeSet
:
e
.
storeTreeSet
,
selectType
:
"all"
,
defaultList
:
e
.
mustStoreList
},
on
:{
handleSelectedList
:
e
.
handleMustList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-employee"
,{
attrs
:{
appScene
:
e
.
appScene
,
defaultSelection
:
e
.
noSelection
,
onlyPerson
:
!
0
,
treeSet
:
e
.
noTreeSet
,
changed
:
e
.
changedNo
},
on
:{
handleSelectedList
:
e
.
handleNoList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-store"
,{
ref
:
"storeSelector"
,
attrs
:{
appScene
:
e
.
appScene
,
treeSet
:
e
.
noStoreTreeSet
,
selectType
:
"person"
,
defaultList
:
e
.
noStoreList
},
on
:{
handleSelectedList
:
e
.
handleNoList
}}),
e
.
_v
(
" "
),
s
(
"el-dialog"
,{
attrs
:{
title
:
"选择规则生效时间"
,
visible
:
e
.
showEffect
,
width
:
"420px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
showEffect
=
t
}}},[
s
(
"span"
,[
e
.
_v
(
"立即生效:今日考勤结果将按新规则重算"
)]),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
sendData
(
"noteForm"
,
"0"
)}}},[
e
.
_v
(
"明天生效"
)])],
1
)]),
e
.
_v
(
" "
),
s
(
"class-select"
,{
attrs
:{
workClassShow
:
e
.
workClassShow
,
classesId
:
e
.
classesId
},
on
:{
hideClassDialog
:
e
.
hideClassDialog
}}),
e
.
_v
(
" "
),
s
(
"map-select"
,{
attrs
:{
mapShow
:
e
.
mapShow
},
on
:{
hideMapDialog
:
e
.
hideMapDialog
}}),
e
.
_v
(
" "
),
s
(
"class-select-mult"
,{
attrs
:{
workClassMultShow
:
e
.
workClassMultShow
,
classesData
:
e
.
ruleFormData
.
classesJson
},
on
:{
hideMultClassDialog
:
e
.
hideMultClassDialog
}}),
e
.
_v
(
" "
),
s
(
"cycle-set"
,{
attrs
:{
rangeShow
:
e
.
rangeShow
,
classesJson
:
e
.
classesJson
,
attenceGroupData
:
e
.
attenceGroupData
,
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
},
on
:{
hideCycleDialog
:
e
.
hideCycleDialog
}})],
1
)},
staticRenderFns
:[]};
var
A
=
s
(
"VU/8"
)(
O
,
G
,
!
1
,
function
(
e
){
s
(
"47+Q"
)},
"data-v-36eddf68"
,
null
);
t
.
default
=
A
.
exports
},
j9Ku
:
function
(
e
,
t
){},
kr0l
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/15.ff02049c8f18cb82efa6.js
0 → 100644
View file @
d58c304b
webpackJsonp
([
15
],{
"6WUy"
:
function
(
e
,
t
){},
DiBN
:
function
(
e
,
t
){},
dahR
:
function
(
e
,
t
){},
estW
:
function
(
e
,
t
,
s
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
a
=
s
(
"Gu7T"
),
o
=
s
.
n
(
a
),
l
=
s
(
"mvHQ"
),
n
=
s
.
n
(
l
),
r
=
s
(
"Xxa5"
),
i
=
s
.
n
(
r
),
c
=
s
(
"exGp"
),
u
=
s
.
n
(
c
),
d
=
s
(
"P9l9"
),
p
=
s
(
"Ch4/"
),
m
=
s
(
"3E4D"
),
g
=
s
(
"PI0u"
),
h
=
{
name
:
"class-select"
,
components
:{},
props
:{
workClassShow
:{
type
:
Boolean
,
default
:
!
1
},
classesId
:{
type
:
String
,
default
:
""
}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
classesId
,
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
}},
methods
:{
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
u
()(
i
.
a
.
mark
(
function
e
(){
var
t
,
s
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
((
t
=
this
).
customDialog
=!
1
,
t
.
selClassesId
){
e
.
next
=
5
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
5
:
s
=
{},
t
.
tableData
.
forEach
(
function
(
e
){
e
.
classesId
==
t
.
selClassesId
&&
(
s
=
e
)}),
t
.
$emit
(
"hideClassDialog"
,
s
),
t
.
$nextTick
(
function
(){
t
.
selClassesId
=
""
});
case
9
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
var
e
=
this
;
e
.
customDialog
=!
1
,
e
.
$emit
(
"hideClassDialog"
),
e
.
$nextTick
(
function
(){
e
.
selClassesId
=
""
})},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
classesName
:
e
.
classesName
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
tableData
=
s
.
result
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
workClassShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
},
classesId
:
function
(
e
){
this
.
selClassesId
=
e
||
""
}},
mounted
:
function
(){
this
.
getClassifyData
(),
this
.
classesId
?
this
.
selClassesId
=
this
.
classesId
:
this
.
selClassesId
=
""
,
this
.
customDialog
=
this
.
workClassShow
}},
f
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"m-b-20"
},[
s
(
"el-input"
,{
staticClass
:
"w-264"
,
staticStyle
:{
width
:
"264px"
},
attrs
:{
placeholder
:
"请输入班次名称"
,
"prefix-icon"
:
"el-icon-search"
,
clearable
:
""
},
on
:{
clear
:
e
.
clearInput
},
nativeOn
:{
keyup
:
function
(
t
){
return
s
=
t
,
e
.
toInput
(
s
,
e
.
classesName
);
var
s
}},
model
:{
value
:
e
.
classesName
,
callback
:
function
(
t
){
e
.
classesName
=
t
},
expression
:
"classesName"
}})],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
tableData
}},[
s
(
"el-table-column"
,{
attrs
:{
label
:
""
,
width
:
"50"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-radio"
,{
attrs
:{
label
:
t
.
row
.
classesId
},
model
:{
value
:
e
.
selClassesId
,
callback
:
function
(
t
){
e
.
selClassesId
=
t
},
expression
:
"selClassesId"
}},[
e
.
_v
(
e
.
_s
(
""
))])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"imageUrl"
,
label
:
"班次名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\
n "
+
e
.
_s
(
t
.
row
.
classesName
)
+
"
\
n "
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"titleName"
,
label
:
"考勤时间"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
v
=
s
(
"VU/8"
)(
h
,
f
,
!
1
,
function
(
e
){
s
(
"j9Ku"
)},
"data-v-41dd4c38"
,
null
).
exports
,
D
=
{
name
:
"class-select-mult"
,
components
:{},
props
:{
workClassMultShow
:{
type
:
Boolean
,
default
:
!
1
},
classesData
:{
type
:
String
,
default
:
""
}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesData
:
JSON
.
parse
(
n
()(
this
.
classesData
))
||
[],
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
,
multipleSelection
:[]}},
methods
:{
toggleSelection
:
function
(
e
){
var
t
=
this
;
e
&&
t
.
$nextTick
(
function
(){
e
.
forEach
(
function
(
e
){
t
.
$refs
.
multipleTable
.
toggleRowSelection
(
e
,
!
0
)})})},
handleSelectionChange
:
function
(
e
){
this
.
multipleSelection
=
e
,
this
.
selClassesData
=
JSON
.
parse
(
n
()(
e
))},
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
u
()(
i
.
a
.
mark
(
function
e
(){
var
t
,
s
,
a
,
o
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
((
t
=
this
).
selClassesData
.
length
){
e
.
next
=
4
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
4
:
if
(
!
(
t
.
selClassesData
.
length
>
10
)){
e
.
next
=
7
;
break
}
return
m
.
a
.
showmsg
(
"最多选择10个班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
7
:
if
(
s
=
[],
t
.
classesData
.
length
&&
(
a
=
t
.
selClassesData
.
map
(
function
(
e
){
return
e
.
classesId
}),
t
.
classesData
.
forEach
(
function
(
e
){
a
.
includes
(
e
.
classesId
)
||
s
.
push
(
e
.
classesName
)})),
!
s
.
length
||!
t
.
$route
.
query
.
attenceGroupId
){
e
.
next
=
12
;
break
}
return
t
.
$confirm
(
"移除后,排班周期将自动去掉该班次,但不影响排班表中已排的班次"
,
"确定从考勤组移除"
+
s
.
join
(
"-"
),{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
var
e
=
[];
t
.
selClassesData
.
forEach
(
function
(
t
){
e
.
push
({
classesId
:
t
.
classesId
,
classesName
:
t
.
classesName
,
classessTimesJson
:
t
.
classessTimesJson
})}),
t
.
$emit
(
"hideMultClassDialog"
,
e
),
t
.
customDialog
=!
1
,
t
.
$nextTick
(
function
(){})}).
catch
(
function
(){}),
e
.
abrupt
(
"return"
,
!
1
);
case
12
:
o
=
[],
t
.
selClassesData
.
forEach
(
function
(
e
){
o
.
push
({
classesId
:
e
.
classesId
,
classesName
:
e
.
classesName
,
classessTimesJson
:
e
.
classessTimesJson
})}),
t
.
$emit
(
"hideMultClassDialog"
,
o
),
t
.
customDialog
=!
1
,
t
.
$nextTick
(
function
(){});
case
17
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
this
.
customDialog
=!
1
,
this
.
$emit
(
"hideMultClassDialog"
),
this
.
$nextTick
(
function
(){})},
handleData
:
function
(){
var
e
=
this
.
selClassesData
.
map
(
function
(
e
){
return
e
.
classesId
}),
t
=
[];
this
.
selClassesData
.
length
&&
(
this
.
tableData
.
forEach
(
function
(
s
){
e
.
includes
(
s
.
classesId
)
&&
t
.
push
(
s
)}),
this
.
toggleSelection
(
t
))},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
classesName
:
e
.
classesName
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
tableData
=
s
.
result
||
[],
e
.
handleData
(),
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
workClassMultShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
,
this
.
getClassifyData
()},
classesData
:
function
(
e
){
this
.
selClassesData
=
e
?
JSON
.
parse
(
n
()(
e
)):[]}},
mounted
:
function
(){
this
.
getClassifyData
(),
this
.
classesData
?
this
.
selClassesData
=
JSON
.
parse
(
n
()(
this
.
classesData
)):
this
.
selClassesData
=
[],
this
.
customDialog
=
this
.
workClassMultShow
}},
y
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"m-b-20"
},[
s
(
"el-input"
,{
staticClass
:
"w-264"
,
staticStyle
:{
width
:
"264px"
},
attrs
:{
placeholder
:
"请输入班次名称"
,
"prefix-icon"
:
"el-icon-search"
,
clearable
:
""
},
on
:{
clear
:
e
.
clearInput
},
nativeOn
:{
keyup
:
function
(
t
){
return
s
=
t
,
e
.
toInput
(
s
,
e
.
classesName
);
var
s
}},
model
:{
value
:
e
.
classesName
,
callback
:
function
(
t
){
e
.
classesName
=
t
},
expression
:
"classesName"
}})],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
tableData
,
height
:
"350"
},
on
:{
"selection-change"
:
e
.
handleSelectionChange
}},[
s
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"imageUrl"
,
label
:
"班次名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\
n "
+
e
.
_s
(
t
.
row
.
classesName
)
+
"
\
n "
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"titleName"
,
label
:
"考勤时间"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
S
,
b
=
s
(
"VU/8"
)(
D
,
y
,
!
1
,
function
(
e
){
s
(
"kr0l"
)},
"data-v-0daf0c9a"
,
null
).
exports
,
_
=
{
name
:
"class-select"
,
components
:{},
props
:{
mapShow
:{
type
:
Boolean
,
default
:
!
1
}},
data
:
function
(){
var
e
=
this
,
t
=
this
;
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
classesId
,
customDialog
:
!
1
,
ruleForm
:{
address
:
""
},
rules
:{
address
:[{
required
:
!
0
,
validator
:
function
(
t
,
s
,
a
){
""
===
s
?
a
(
new
Error
(
"请选择考勤地点"
)):
e
.
lng
&&
e
.
lat
?
a
():
a
(
new
Error
(
"请选择考勤地点"
))},
message
:
"请选择考勤地点"
,
trigger
:
"blur"
}]},
markers
:[],
searchOption
:{
city
:
"杭州"
,
citylimit
:
!
1
},
zoom
:
12
,
mapCenter
:[
120.12497
,
30.277155
],
address
:
""
,
plugin
:[{
pName
:
"ToolBar"
}],
events
:{
click
:
function
(
e
){
var
s
=
e
.
lnglat
,
a
=
s
.
lng
,
o
=
s
.
lat
;
t
.
lng
=
a
,
t
.
lat
=
o
,
new
AMap
.
Geocoder
({
radius
:
1
e3
,
extensions
:
"all"
}).
getAddress
([
a
,
o
],
function
(
e
,
s
){
"complete"
===
e
&&
"OK"
===
s
.
info
&&
s
&&
s
.
regeocode
&&
(
console
.
log
(
s
),
t
.
address
=
s
.
regeocode
.
formattedAddress
,
t
.
ruleForm
.
address
=
s
.
regeocode
.
formattedAddress
,
t
.
$nextTick
())})}},
lng
:
0
,
lat
:
0
}},
methods
:{
onSearchResult
:
function
(
e
){
var
t
=
this
,
s
=
0
,
a
=
0
;
if
(
e
.
length
>
0
){
e
.
forEach
(
function
(
e
){
var
o
=
e
.
lng
,
l
=
e
.
lat
;
a
+=
o
,
s
+=
l
,
t
.
markers
.
push
([
e
.
lng
,
e
.
lat
])});
var
o
=
{
lng
:
a
/
e
.
length
,
lat
:
s
/
e
.
length
};
this
.
mapCenter
=
[
o
.
lng
,
o
.
lat
]}},
customConfirm
:
Object
(
g
.
a
)((
S
=
u
()(
i
.
a
.
mark
(
function
e
(
t
){
var
s
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
s
=
this
,
this
.
$refs
[
t
].
validate
(
function
(
e
){
e
&&
(
s
.
customDialog
=!
1
,
s
.
$emit
(
"hideMapDialog"
,{
address
:
s
.
address
,
longitude
:
s
.
lng
,
latitude
:
s
.
lat
}),
s
.
$nextTick
(
function
(){
s
.
address
=
""
,
s
.
ruleForm
.
address
=
""
}))});
case
2
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)})),
function
(
e
){
return
S
.
apply
(
this
,
arguments
)}),
300
),
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
var
e
=
this
;
e
.
customDialog
=!
1
,
e
.
$emit
(
"hideMapDialog"
),
e
.
$nextTick
(
function
(){
e
.
address
=
""
,
e
.
ruleForm
.
address
=
""
})}},
watch
:{
mapShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
}},
mounted
:
function
(){
this
.
customDialog
=
this
.
mapShow
}},
C
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
directives
:[{
name
:
"show"
,
rawName
:
"v-show"
,
value
:
e
.
customDialog
,
expression
:
"customDialog"
}]},[
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"考勤地点"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"div"
,{
staticClass
:
"amap-page-container"
},[
s
(
"el-amap-search-box"
,{
staticClass
:
"search-box"
,
attrs
:{
"search-option"
:
e
.
searchOption
,
"on-search-result"
:
e
.
onSearchResult
}}),
e
.
_v
(
" "
),
s
(
"el-amap"
,{
staticClass
:
"amap-demo"
,
attrs
:{
vid
:
"amapDemo"
,
center
:
e
.
mapCenter
,
zoom
:
e
.
zoom
,
plugin
:
e
.
plugin
,
events
:
e
.
events
}},
e
.
_l
(
e
.
markers
,
function
(
t
,
a
){
return
s
(
"el-amap-marker"
,{
key
:
a
+
"maker"
,
attrs
:{
position
:
t
,
events
:
e
.
events
}})})),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"toolbar m-t-20"
},[
s
(
"el-form"
,{
ref
:
"ruleForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleForm
,
rules
:
e
.
rules
,
"label-width"
:
"100px"
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"详细地址:"
,
prop
:
"address"
}},[
s
(
"el-input"
,{
attrs
:{
readonly
:
""
},
model
:{
value
:
e
.
ruleForm
.
address
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleForm
,
"address"
,
t
)},
expression
:
"ruleForm.address"
}})],
1
)],
1
)],
1
)],
1
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])],
1
)},
staticRenderFns
:[]};
var
w
=
s
(
"VU/8"
)(
_
,
C
,
!
1
,
function
(
e
){
s
(
"DiBN"
)},
"data-v-5080e8ec"
,
null
).
exports
,
F
=
s
(
"Ke24"
),
k
=
s
(
"fZjL"
),
I
=
s
.
n
(
k
),
T
=
s
(
"l46T"
),
J
=
{
name
:
"cycle-set"
,
components
:{
limitInput
:
T
.
a
},
props
:{
rangeShow
:{
type
:
Boolean
,
default
:
!
1
},
attenceGroupId
:{
type
:
String
,
default
:
""
},
classesJson
:{
type
:[
Array
,
Object
],
default
:
function
(){
return
[]}},
attenceGroupData
:{
type
:[
Array
,
Object
],
default
:
function
(){
return
{}}}},
data
:
function
(){
return
{
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
selClassesId
:
this
.
attenceGroupId
,
customDialog
:
!
1
,
tableData
:[],
classesName
:
""
,
ruleFormData
:{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]},
rules
:{
rangeName
:[{
required
:
!
0
,
message
:
"请输入周期名称"
,
trigger
:
"blur"
}]}}},
methods
:{
changeClass
:
function
(
e
,
t
){
this
.
tableData
.
forEach
(
function
(
s
){
s
.
classesId
==
e
&&
(
t
.
classesName
=
s
.
classesName
)})},
handleRangeDay
:
function
(
e
){
var
t
=
this
.
ruleFormData
.
classes
?
this
.
ruleFormData
.
classes
.
length
:
0
;
if
(
e
-
t
>
0
)
for
(
var
s
=
0
;
s
<
e
-
t
;
s
++
)
this
.
ruleFormData
.
classes
.
push
({
classesId
:
""
,
classesName
:
""
});
e
-
t
<
0
&&
this
.
ruleFormData
.
classes
.
splice
(
e
-
1
,
t
-
e
)},
toInput
:
Object
(
g
.
a
)(
function
(
e
,
t
){
this
.
getClassifyData
()},
500
),
clearInput
:
function
(){
this
.
currentPage
=
1
,
this
.
getClassifyData
()},
customConfirm
:
Object
(
g
.
a
)(
function
(){
var
e
=
u
()(
i
.
a
.
mark
(
function
e
(
t
){
var
s
,
a
;
return
i
.
a
.
wrap
(
function
(
e
){
for
(;;)
switch
(
e
.
prev
=
e
.
next
){
case
0
:
if
(
a
=!
0
,(
s
=
this
).
ruleFormData
.
classes
.
forEach
(
function
(
e
){
a
=!!
e
.
classesId
}),
a
){
e
.
next
=
6
;
break
}
return
m
.
a
.
showmsg
(
"请选择班次"
,
"warning"
),
e
.
abrupt
(
"return"
,
!
1
);
case
6
:
s
.
$refs
[
t
].
validate
(
function
(
e
){
e
&&
(
s
.
customDialog
=!
1
,
s
.
$emit
(
"hideCycleDialog"
,
s
.
ruleFormData
),
s
.
resetData
())});
case
7
:
case
"end"
:
return
e
.
stop
()}},
e
,
this
)}));
return
function
(
t
){
return
e
.
apply
(
this
,
arguments
)}}(),
300
),
resetData
:
function
(){
var
e
=
this
;
e
.
$nextTick
(
function
(){
e
.
ruleFormData
=
{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]}})},
handleClose
:
function
(
e
){
e
(),
this
.
hideDialog
()},
customCancel
:
function
(){
this
.
hideDialog
()},
hideDialog
:
function
(){
this
.
customDialog
=!
1
,
this
.
$emit
(
"hideCycleDialog"
),
this
.
resetData
()},
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
,
enterpriseId
:
e
.
enterpriseId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
(
s
.
result
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
s
.
result
.
forEach
(
function
(
e
){
e
.
label
=
" "
,
e
.
classessTimesJson
&&
e
.
classessTimesJson
.
length
&&
e
.
classessTimesJson
.
forEach
(
function
(
t
){
e
.
label
+=
t
.
startTime
+
"-"
+
t
.
endTime
})})),
e
.
tableData
=
s
.
result
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
getRangeData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
,
attenceGroupId
:
e
.
attenceGroupId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-range-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
&&
s
.
result
.
length
&&
(
s
.
result
.
forEach
(
function
(
e
){
e
.
classes
=
e
.
classesList
}),
e
.
ruleFormData
=
s
.
result
[
0
]
||
[]),
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})}},
watch
:{
rangeShow
:
function
(
e
,
t
){
this
.
customDialog
=
e
},
attenceGroupId
:
function
(
e
){
e
&&
this
.
getRangeData
()},
attenceGroupData
:
function
(
e
){
I
()(
e
).
length
&&
(
this
.
ruleFormData
=
JSON
.
parse
(
n
()(
e
)))},
classesJson
:
function
(
e
){
e
.
length
&&
this
.
getClassifyData
()}},
mounted
:
function
(){
this
.
attenceGroupId
&&
this
.
getRangeData
(),
I
()(
this
.
attenceGroupData
).
length
&&
(
this
.
ruleFormData
=
JSON
.
parse
(
n
()(
this
.
attenceGroupData
))),
this
.
classesJson
.
length
&&
this
.
getClassifyData
(),
this
.
customDialog
=
this
.
rangeShow
}},
N
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
staticClass
:
"edit-dialog"
,
attrs
:{
title
:
"选择班次"
,
visible
:
e
.
customDialog
,
width
:
"600px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
customDialog
=
t
}}},[
s
(
"div"
,{
staticClass
:
"edit-dialog-body"
},[
s
(
"el-form"
,{
ref
:
"ruleForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleFormData
,
rules
:
e
.
rules
,
"label-width"
:
"120px"
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"周期名称:"
,
prop
:
"rangeName"
}},[
s
(
"limitInput"
,{
attrs
:{
inputWidth
:
305
,
inputValue
:
e
.
ruleFormData
.
rangeName
,
holder
:
"请输入周期名称"
,
getByType
:
"word"
,
maxLength
:
15
},
on
:{
"update:inputValue"
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"rangeName"
,
t
)}}})],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"每个周期天数:"
,
prop
:
""
}},[
s
(
"div"
,[
s
(
"el-input-number"
,{
attrs
:{
"controls-position"
:
"right"
,
step
:
1
,
"step-strictly"
:
!
0
,
min
:
3
,
max
:
31
},
on
:{
change
:
e
.
handleRangeDay
},
model
:{
value
:
e
.
ruleFormData
.
days
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"days"
,
t
)},
expression
:
"ruleFormData.days"
}}),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"font-12 color-909399"
},[
e
.
_v
(
"以3天为周期进行循环,最大周期天数为31天"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"range-classes"
},[
s
(
"ul"
,
e
.
_l
(
e
.
ruleFormData
.
classes
,
function
(
t
,
a
){
return
s
(
"li"
,{
key
:
a
+
"class"
},[
s
(
"span"
,[
e
.
_v
(
"第"
+
e
.
_s
(
a
+
1
)
+
"天:"
)]),
e
.
_v
(
" "
),
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
on
:{
change
:
function
(
s
){
e
.
changeClass
(
s
,
t
)}},
model
:{
value
:
t
.
classesId
,
callback
:
function
(
s
){
e
.
$set
(
t
,
"classesId"
,
s
)},
expression
:
"item.classesId"
}},
e
.
_l
(
e
.
tableData
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
classesId
,
attrs
:{
label
:
"班次"
+
e
.
classesName
+
e
.
label
,
value
:
e
.
classesId
}})}))],
1
)}))])])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
return
t
.
stopPropagation
(),
e
.
customCancel
(
t
)}}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
customConfirm
(
"ruleForm"
)}}},[
e
.
_v
(
"确定"
)])],
1
)])},
staticRenderFns
:[]};
var
x
=
s
(
"VU/8"
)(
J
,
N
,
!
1
,
function
(
e
){
s
(
"6WUy"
)},
"data-v-c98424be"
,
null
).
exports
,
R
=
s
(
"Ie7z"
),
$
=
s
(
"c4uw"
),
L
=
s
(
"Kkt8"
),
O
=
{
name
:
"workGroupSet"
,
props
:{
brandId
:{
type
:
String
,
default
:
function
(){
return
""
}},
activeGroupId
:{
type
:
String
,
default
:
function
(){
return
""
}}},
data
:
function
(){
return
{
projectName
:
"haoban-manage-web"
,
topMenuData
:[{
id
:
"1"
,
name
:
"考勤组管理"
,
path
:
"/workSet?appIcon="
+
this
.
$route
.
query
.
appIcon
},{
id
:
"2"
,
name
:
this
.
$route
.
query
.
attenceGroupId
?
"编辑考勤组"
:
"新建考勤组"
,
path
:
""
}],
weekDays
:{
0
:
"周日"
,
1
:
"周一"
,
2
:
"周二"
,
3
:
"周三"
,
4
:
"周四"
,
5
:
"周五"
,
6
:
"周六"
},
classifyOptions
:[],
activeId
:
"2"
,
activeBrand
:
this
.
brandId
,
activeGroup
:
this
.
activeGroupId
,
enterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
enterpriseId
,
userId
:
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
,
ruleFormData
:{
attenceGroupId
:
""
,
attenceGroupName
:
""
,
attenceType
:
1
,
attenceRangeType
:
!
1
,
attenceRangeStoreType
:
!
1
,
adminList
:[],
storeList
:[],
noAttenceRangeType
:
!
1
,
noAttenceRangeStoreType
:
!
1
,
noAdminList
:[],
noStoreList
:[],
lawFreeFlag
:
!
1
,
clockDistance
:
300
,
storeClockFlag
:
!
1
,
gpsFlag
:
!
1
,
distanceAddress
:[],
attenceRangeJson
:[],
sperialRangeJson
:[],
mustJson
:[],
noMustJson
:[],
attenceWorkJson
:[{
weekDay
:
"1"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"2"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"3"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"4"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"5"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"6"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]},{
weekDay
:
"0"
,
workType
:
!
1
,
classesName
:
""
,
classesId
:
"-1"
,
classessTimesJson
:[]}],
attenceClassesRangeJSON
:[],
classesJson
:[]},
rules
:{
attenceGroupName
:[{
required
:
!
0
,
message
:
"请输入考勤组名称"
,
trigger
:
"blur"
}],
content
:[{
required
:
!
0
,
message
:
"请输入公告内容"
,
trigger
:
"blur"
}],
sendType
:[{
required
:
!
0
,
message
:
"请选择发送方式"
,
trigger
:
"change"
}]},
wxFlag
:
1
,
actionUrl
:
"/haoban-manage-web/upload-img"
,
datePickerBool
:
!
1
,
dateValue
:
""
,
mustType
:
""
,
selectNoType
:
""
,
treeSet
:{
isSelectPerson
:
!
1
,
dialogVisible
:
!
1
,
isSingle
:
!
1
,
openNextBool
:
!
0
},
mustSelection
:[],
changed
:
""
,
onlyPerson
:
!
1
,
appScene
:
1
,
mustStoreList
:[],
storeTreeSet
:{
isSelectPerson
:
!
0
,
dialogVisible
:
!
1
,
isSingle
:
!
1
},
changedNo
:
""
,
noTreeSet
:{
isSelectPerson
:
!
1
,
dialogVisible
:
!
1
,
isSingle
:
!
1
,
openNextBool
:
!
0
},
noSelection
:[],
noStoreList
:[],
noStoreTreeSet
:{
isSelectPerson
:
!
0
,
dialogVisible
:
!
1
,
isSingle
:
!
1
},
defaultStoreBool
:
!
1
,
saveDataBool
:
!
0
,
showEffect
:
!
1
,
workClassShow
:
!
1
,
modIndex
:
""
,
modRow
:{},
showClassesFlag
:
!
1
,
multipleSelection
:[],
distance
:[{
value
:
"50"
,
label
:
"50米"
}],
mapShow
:
!
1
,
rangeShow
:
!
1
,
classesJson
:[],
attenceGroupData
:{
classesRangeId
:
""
,
days
:
3
,
rangeName
:
""
,
classes
:[{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
},{
classesId
:
""
,
classesName
:
""
}]},
workClassMultShow
:
!
1
}},
methods
:{
toShowRangeMult
:
function
(){
this
.
classesJson
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
)),
this
.
rangeShow
=!
0
},
hideCycleDialog
:
function
(
e
){
if
(
this
.
rangeShow
=!
1
,
!
e
)
return
!
1
;
this
.
ruleFormData
.
attenceClassesRangeJSON
=
JSON
.
parse
(
n
()([
e
])),
this
.
$forceUpdate
()},
toShowClassMult
:
function
(){
this
.
workClassMultShow
=!
0
,
this
.
classesData
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
))},
hideMultClassDialog
:
function
(
e
){
if
(
this
.
workClassMultShow
=!
1
,
this
.
classesData
=
[],
!
e
)
return
!
1
;
this
.
ruleFormData
.
classesJson
=
JSON
.
parse
(
n
()(
e
)),
this
.
classesJson
=
JSON
.
parse
(
n
()(
e
))},
editRange
:
function
(
e
,
t
){
this
.
classesJson
=
JSON
.
parse
(
n
()(
this
.
ruleFormData
.
classesJson
)),
this
.
attenceGroupData
=
JSON
.
parse
(
n
()(
t
)),
this
.
rangeShow
=!
0
},
addMap
:
function
(){
this
.
mapShow
=!
0
},
hideMapDialog
:
function
(
e
){
if
(
console
.
log
(
e
),
this
.
mapShow
=!
1
,
!
e
)
return
!
1
;
this
.
ruleFormData
.
distanceAddress
.
push
({
address
:
e
.
address
,
longitude
:
e
.
longitude
,
latitude
:
e
.
latitude
})},
delGps
:
function
(
e
,
t
){
this
.
ruleFormData
.
distanceAddress
.
splice
(
e
,
1
)},
showClasses
:
function
(){
this
.
workClassShow
=!
0
},
modClasses
:
function
(
e
,
t
){
console
.
log
(
t
),
this
.
modIndex
=
e
,
this
.
modRow
=
t
,
this
.
classesId
=
t
.
classesId
||
""
,
this
.
workClassShow
=!
0
},
hideClassDialog
:
function
(
e
){
if
(
this
.
workClassShow
=!
1
,
this
.
classesId
=
""
,
!
e
)
return
!
1
;
this
.
modRow
.
workType
=!
0
;
var
t
=
JSON
.
parse
(
n
()(
e
));
this
.
modRow
.
classesName
=
t
.
classesName
,
this
.
modRow
.
classesId
=
t
.
classesId
,
this
.
modRow
.
classessTimesJson
=
t
.
classessTimesJson
},
handleSelectionChange
:
function
(
e
){
this
.
multipleSelection
=
e
},
selectBrandId
:
function
(
e
,
t
){
this
.
brandId
=
e
},
cancelSend
:
function
(){
var
e
=
this
;
if
(
e
.
$route
.
query
.
attenceGroupId
)
return
e
.
$router
.
go
(
-
1
),
!
1
;
e
.
$confirm
(
"是否确认返回,返回后当前页面内容将丢失"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
e
.
$router
.
go
(
-
1
)}).
catch
(
function
(){})},
showDialogMust
:
function
(
e
,
t
){
if
(
this
.
mustType
=
e
,
this
.
changed
=
e
,
"store"
===
e
)
return
this
.
nustStoreList
=
t
,
void
(
this
.
storeTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
});
this
.
treeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
},
this
.
nustSelection
=
t
},
showDialogNo
:
function
(
e
,
t
){
if
(
this
.
selectNoType
=
e
,
this
.
changedNo
=
e
,
"store"
===
e
)
return
this
.
noStoreList
=
t
,
void
(
this
.
noStoreTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
});
this
.
noTreeSet
=
{
dialogVisible
:
!
0
,
isSingle
:
!
1
,
isSelectPerson
:
!
0
,
openNextBool
:
!
0
},
this
.
noSelection
=
t
},
handleMustList
:
function
(
e
){
console
.
log
(
e
),
"store"
===
this
.
mustType
?(
this
.
ruleFormData
.
storeList
=
e
,
this
.
mustStoreList
=
e
):(
this
.
ruleFormData
.
adminList
=
e
,
this
.
mustSelection
=
e
)},
handleNoList
:
function
(
e
){
console
.
log
(
e
),
"store"
===
this
.
selectNoType
?(
this
.
ruleFormData
.
noStoreList
=
e
,
this
.
noStoreList
=
e
):(
this
.
ruleFormData
.
noAdminList
=
e
,
this
.
noSelection
=
e
)},
delDepart
:
function
(
e
,
t
,
s
){
t
.
splice
(
e
,
1
)},
changeMyDate
:
function
(){
this
.
dateValue
?
this
.
saveDataBool
=!
0
:
this
.
datePickerBool
=!
0
},
changeSendType
:
function
(
e
){
"0"
==
e
&&
(
this
.
saveDataBool
=!
0
)},
toSubmit
:
function
(
e
,
t
){
var
s
=
this
,
a
=
[];
s
.
ruleFormData
.
attenceRangeType
&&
s
.
ruleFormData
.
adminList
.
length
&&
(
a
=
s
.
ruleFormData
.
adminList
.
map
(
function
(
e
){
var
t
=
{
rangeType
:
1
,
storeFlag
:
0
,
id
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
};
return
1
==
e
.
type
&&
(
t
.
userId
=
e
.
userId
,
t
.
clerkId
=
e
.
id
),
2
==
e
.
type
&&
(
t
.
groupId
=
e
.
id
),
3
==
e
.
type
&&
(
t
.
storeId
=
e
.
id
),
t
}));
var
l
=
[];
s
.
ruleFormData
.
attenceRangeStoreType
&&
s
.
ruleFormData
.
storeList
.
length
&&
(
l
=
s
.
ruleFormData
.
storeList
.
map
(
function
(
e
){
var
t
=
{
rangeType
:
1
,
storeFlag
:
1
,
id
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
};
return
1
==
e
.
type
&&
(
t
.
userId
=
e
.
userId
,
t
.
clerkId
=
e
.
id
),
2
==
e
.
type
&&
(
t
.
groupId
=
e
.
id
),
3
==
e
.
type
&&
(
t
.
storeId
=
e
.
id
),
t
}));
var
n
=
[];
s
.
ruleFormData
.
noAttenceRangeType
&&
s
.
ruleFormData
.
noAdminList
.
length
&&
(
n
=
s
.
ruleFormData
.
noAdminList
.
map
(
function
(
e
){
return
{
rangeType
:
2
,
storeFlag
:
0
,
id
:
e
.
id
,
userId
:
e
.
userId
,
clerkId
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
}}));
var
r
=
[];
s
.
ruleFormData
.
noAttenceRangeStoreType
&&
s
.
ruleFormData
.
noStoreList
.
length
&&
(
r
=
s
.
ruleFormData
.
noStoreList
.
map
(
function
(
e
){
return
{
rangeType
:
2
,
storeFlag
:
1
,
id
:
e
.
id
,
userId
:
e
.
userId
,
clerkId
:
e
.
id
,
name
:
e
.
name
||
e
.
label
,
type
:
e
.
type
}})),
s
.
ruleFormData
.
attenceRangeJson
=
[].
concat
(
o
()(
a
),
o
()(
l
),
o
()(
n
),
o
()(
r
)),
console
.
log
(
s
.
ruleFormData
),
s
.
$refs
[
e
].
validate
(
function
(
t
){
t
&&
(
s
.
$route
.
query
.
attenceGroupId
?
s
.
showEffect
=!
0
:
s
.
sendData
(
e
,
1
))})},
sendData
:
Object
(
g
.
a
)(
function
(
e
,
t
){
var
s
=
this
,
a
=
{
enterpriseId
:
s
.
enterpriseId
,
effectFlag
:
t
,
attenceGroupId
:
s
.
ruleFormData
.
attenceGroupId
,
attenceGroupName
:
s
.
ruleFormData
.
attenceGroupName
,
attenceType
:
s
.
ruleFormData
.
attenceType
,
attenceRangeType
:
s
.
ruleFormData
.
attenceRangeType
?
1
:
0
,
attenceRangeStoreType
:
s
.
ruleFormData
.
attenceRangeStoreType
?
1
:
0
,
noAttenceRangeType
:
s
.
ruleFormData
.
noAttenceRangeType
?
1
:
0
,
noAttenceRangeStoreType
:
s
.
ruleFormData
.
noAttenceRangeStoreType
?
1
:
0
,
lawFreeFlag
:
s
.
ruleFormData
.
lawFreeFlag
?
1
:
0
,
clockDistance
:
s
.
ruleFormData
.
clockDistance
,
storeClockFlag
:
s
.
ruleFormData
.
storeClockFlag
?
1
:
0
,
gpsFlag
:
s
.
ruleFormData
.
gpsFlag
?
1
:
0
,
distanceAddress
:
n
()(
s
.
ruleFormData
.
distanceAddress
),
attenceRangeJson
:
n
()(
s
.
ruleFormData
.
attenceRangeJson
),
sperialRangeJson
:
n
()(
s
.
ruleFormData
.
sperialRangeJson
),
attenceWorkJson
:
n
()(
s
.
ruleFormData
.
attenceWorkJson
),
attenceClassesRangeJSON
:
n
()(
s
.
ruleFormData
.
attenceClassesRangeJSON
),
classesJson
:
n
()(
s
.
ruleFormData
.
classesJson
)};
s
.
saveDataBool
&&
Object
(
d
.
e
)(
s
.
$route
.
query
.
attenceGroupId
?
"/haoban-app-attence-web/attence-edit"
:
"/haoban-app-attence-web/attence-add"
,
a
).
then
(
function
(
e
){
var
t
=
e
.
data
;
1
==
t
.
errorCode
?
1
==
s
.
ruleFormData
.
attenceType
?(
s
.
$message
.
success
(
"保存成功"
),
s
.
$router
.
go
(
-
1
)):
s
.
$router
.
push
(
"/workTimeManage?appIcon="
+
s
.
$route
.
query
.
appIcon
+
"&attenceGroupId="
+
s
.
$route
.
query
.
attenceGroupId
):
s
.
$message
.
error
(
t
.
message
)})},
500
),
getClassifyData
:
function
(){
var
e
=
this
,
t
=
{
enterpriseId
:
e
.
enterpriseId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-classes-list"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
.
list
&&
s
.
result
.
list
.
length
&&
s
.
result
.
list
.
forEach
(
function
(
e
){
e
.
classessTimesJson
&&
(
e
.
classessTimesJson
=
JSON
.
parse
(
e
.
classessTimesJson
))}),
e
.
classifyList
=
s
.
result
.
list
||
[],
!
1
;
p
.
a
.
errorMsg
(
s
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
getGroupData
:
function
(){
var
e
=
this
,
t
=
{
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
};
Object
(
d
.
a
)(
"/haoban-app-attence-web/attence-detail"
,
t
).
then
(
function
(
t
){
var
s
=
t
.
data
;
if
(
1
==
s
.
errorCode
)
return
s
.
result
.
attenceRangeType
=
1
==
s
.
result
.
attenceRangeType
,
s
.
result
.
attenceRangeStoreType
=
1
==
s
.
result
.
attenceRangeStoreType
,
s
.
result
.
noAttenceRangeType
=
1
==
s
.
result
.
noAttenceRangeType
,
s
.
result
.
noAttenceRangeStoreType
=
1
==
s
.
result
.
noAttenceRangeStoreType
,
s
.
result
.
attenceRangeJson
=
s
.
result
.
attenceRangeJson
?
JSON
.
parse
(
s
.
result
.
attenceRangeJson
):[],
s
.
result
.
lawFreeFlag
=
1
==
s
.
result
.
lawFreeFlag
,
s
.
result
.
storeClockFlag
=
1
==
s
.
result
.
storeClockFlag
,
s
.
result
.
gpsFlag
=
1
==
s
.
result
.
gpsFlag
,
s
.
result
.
clockDistance
=
parseInt
(
s
.
result
.
clockDistance
),
s
.
result
.
distanceAddress
=
s
.
result
.
distanceAddress
?
JSON
.
parse
(
s
.
result
.
distanceAddress
):[],
s
.
result
.
sperialRangeJson
=
s
.
result
.
sperialRangeJson
?
JSON
.
parse
(
s
.
result
.
sperialRangeJson
):[],
s
.
result
.
attenceWorkJson
=
s
.
result
.
attenceWorkJson
?
JSON
.
parse
(
s
.
result
.
attenceWorkJson
):[],
s
.
result
.
attenceClassesRangeJSON
=
s
.
result
.
attenceClassesRangeJSON
?
JSON
.
parse
(
s
.
result
.
attenceClassesRangeJSON
):[],
s
.
result
.
classesJson
=
s
.
result
.
classesJson
?
JSON
.
parse
(
s
.
result
.
classesJson
):[],
s
.
result
.
adminList
=
[],
s
.
result
.
storeList
=
[],
s
.
result
.
noAdminList
=
[],
s
.
result
.
noStoreList
=
[],
s
.
result
.
attenceRangeJson
&&
s
.
result
.
attenceRangeJson
.
forEach
(
function
(
e
){
e
.
label
=
e
.
name
,
e
.
type
=
e
.
userId
?
"1"
:
e
.
groupId
?
"2"
:
"3"
,
e
.
id
=
e
.
clerkId
?
e
.
clerkId
:
e
.
groupId
?
e
.
groupId
:
e
.
storeId
,
1
==
e
.
rangeType
&&
0
==
e
.
storeFlag
&&
s
.
result
.
adminList
.
push
(
e
),
2
==
e
.
rangeType
&&
0
==
e
.
storeFlag
&&
s
.
result
.
noAdminList
.
push
(
e
),
1
==
e
.
rangeType
&&
1
==
e
.
storeFlag
&&
s
.
result
.
storeList
.
push
(
e
),
2
==
e
.
rangeType
&&
1
==
e
.
storeFlag
&&
s
.
result
.
noStoreList
.
push
(
e
)}),
s
.
result
.
attenceWorkJson
&&
s
.
result
.
attenceWorkJson
.
forEach
(
function
(
e
){
e
.
workType
=
1
==
e
.
workType
}),
s
.
result
.
attenceWorkJson
&&
s
.
result
.
attenceWorkJson
.
length
&&
s
.
result
.
attenceWorkJson
.
forEach
(
function
(
e
){
e
.
classessTimesJson
=
e
.
classessTimesJson
?
JSON
.
parse
(
e
.
classessTimesJson
):[]}),
s
.
result
.
classesJson
&&
s
.
result
.
classesJson
.
length
&&
s
.
result
.
classesJson
.
forEach
(
function
(
e
){
e
.
classessTimesJson
=
e
.
classessTimesJson
?
JSON
.
parse
(
e
.
classessTimesJson
):[]}),
e
.
mustSelection
=
s
.
result
.
adminList
,
e
.
mustStoreList
=
s
.
result
.
storeList
,
e
.
noSelection
=
s
.
result
.
noAdminList
,
e
.
noStoreList
=
s
.
result
.
noStoreList
,
e
.
ruleFormData
=
JSON
.
parse
(
n
()(
s
.
result
)),
!
1
;
p
.
a
.
errorMsg
(
resData
)}).
catch
(
function
(
t
){
e
.
$message
.
error
({
duration
:
1
e3
,
message
:
t
.
message
})})},
setDistance
:
function
(){
for
(
var
e
=
1
;
e
<
11
;
e
++
)
this
.
distance
.
push
({
value
:
100
*
e
,
label
:
100
*
e
+
"米"
});
this
.
distance
.
push
({
value
:
2
e3
,
label
:
"2000米"
})}},
watch
:{
brandId
:
function
(
e
,
t
){
e
&&
(
this
.
activeBrand
=
e
,
this
.
getClassifyData
())},
activeGroupId
:
function
(
e
,
t
){
e
&&
(
this
.
activeGroup
=
e
)}},
components
:{
commonDetailTop
:
F
.
a
,
limitInput
:
T
.
a
,
limitTextarea
:
L
.
a
,
vueSelectStore
:
R
.
a
,
vueSelectEmployee
:
$
.
a
,
classSelect
:
v
,
mapSelect
:
w
,
classSelectMult
:
b
,
cycleSet
:
x
},
mounted
:
function
(){
var
e
=
this
;
e
.
$emit
(
"showTab"
,
"2"
),
e
.
setDistance
(),
e
.
$route
.
query
.
attenceGroupId
&&
e
.
$nextTick
(
function
(){
e
.
getGroupData
()})}},
G
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
staticClass
:
"notice-list-wrap"
},[
s
(
"div"
,{
staticClass
:
"notice-list"
},[
s
(
"common-detail-top"
,{
attrs
:{
topMenuData
:
e
.
topMenuData
,
activeId
:
e
.
activeId
}}),
e
.
_v
(
" "
),
s
(
"el-form"
,{
ref
:
"noteForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
e
.
ruleFormData
,
rules
:
e
.
rules
,
"label-width"
:
"120px"
}},[
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"考勤组名称:"
,
prop
:
"attenceGroupName"
}},[
s
(
"limitInput"
,{
attrs
:{
disflag
:
!!
e
.
$route
.
query
.
attenceGroupId
,
inputWidth
:
286
,
inputValue
:
e
.
ruleFormData
.
attenceGroupName
,
holder
:
"请输入考勤组名称"
,
getByType
:
"word"
,
maxLength
:
15
},
on
:{
"update:inputValue"
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceGroupName"
,
t
)}}})],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"参与考勤人员:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"flex"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
attenceRangeType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceRangeType"
,
t
)},
expression
:
"ruleFormData.attenceRangeType"
}},[
e
.
_v
(
"行政架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
attenceRangeType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogMust
(
"depart"
,
e
.
ruleFormData
.
adminList
)}}},[
e
.
ruleFormData
.
adminList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择行政架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
adminList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
adminList
,
"depart"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"flex m-t-20"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
attenceRangeStoreType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceRangeStoreType"
,
t
)},
expression
:
"ruleFormData.attenceRangeStoreType"
}},[
e
.
_v
(
"门店架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
attenceRangeStoreType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogMust
(
"store"
,
e
.
ruleFormData
.
storeList
)}}},[
e
.
ruleFormData
.
storeList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择门店架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
storeList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
storeList
,
"store"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
)]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
staticClass
:
"input-item"
,
attrs
:{
label
:
"考勤白名单:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"flex"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
noAttenceRangeType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"noAttenceRangeType"
,
t
)},
expression
:
"ruleFormData.noAttenceRangeType"
}},[
e
.
_v
(
"行政架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
noAttenceRangeType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogNo
(
"depart"
,
e
.
ruleFormData
.
noAdminList
)}}},[
e
.
ruleFormData
.
noAdminList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择行政架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
noAdminList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
noAdminList
,
"depart"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"flex m-t-20"
},[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
noAttenceRangeStoreType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"noAttenceRangeStoreType"
,
t
)},
expression
:
"ruleFormData.noAttenceRangeStoreType"
}},[
e
.
_v
(
"门店架构"
)]),
e
.
_v
(
" "
),
e
.
ruleFormData
.
noAttenceRangeStoreType
?
s
(
"div"
,{
staticClass
:
"flex-column item-cell-select inline-block m-l-10"
},[
s
(
"div"
,{
staticClass
:
"depart-item-wrap"
},[
s
(
"div"
,{
staticClass
:
"el-select el-select--large depart-item-content"
,
staticStyle
:{
width
:
"470px"
},
on
:{
click
:
function
(
t
){
e
.
showDialogNo
(
"store"
,
e
.
ruleFormData
.
noStoreList
)}}},[
e
.
ruleFormData
.
noStoreList
.
length
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"font-14 color-c0c4cc p-l-10"
},[
e
.
_v
(
"请选择门店架构"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"el-select__tags"
},[
s
(
"span"
,[
e
.
_l
(
e
.
ruleFormData
.
noStoreList
,
function
(
t
,
a
){
return
[
s
(
"span"
,{
key
:
a
,
staticClass
:
"el-tag el-tag--info el-tag--small"
},[
s
(
"span"
,{
staticClass
:
"el-select__tags-text"
},[
e
.
_v
(
e
.
_s
(
t
.
name
||
t
.
storeName
))]),
s
(
"i"
,{
staticClass
:
"el-tag__close el-icon-close"
,
on
:{
click
:
function
(
t
){
t
.
stopPropagation
(),
e
.
delDepart
(
a
,
e
.
ruleFormData
.
noStoreList
,
"store"
)}}})])]})],
2
)])])])]):
e
.
_e
()],
1
)]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤类型:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"work-type m-b-8"
},[
s
(
"el-radio"
,{
attrs
:{
disabled
:
!!
e
.
$route
.
query
.
attenceGroupId
,
label
:
1
},
model
:{
value
:
e
.
ruleFormData
.
attenceType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceType"
,
t
)},
expression
:
"ruleFormData.attenceType"
}},[
e
.
_v
(
"固定时间上下班【所有人按照相同时间打卡】"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"line-h-15 font-14 color-909399"
},[
e
.
_v
(
"适用于:办公室等"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"work-type m-b-8"
},[
s
(
"el-radio"
,{
attrs
:{
disabled
:
!!
e
.
$route
.
query
.
attenceGroupId
,
label
:
2
},
model
:{
value
:
e
.
ruleFormData
.
attenceType
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"attenceType"
,
t
)},
expression
:
"ruleFormData.attenceType"
}},[
e
.
_v
(
"排班时间上下班【不同人员根据各自排班打卡】"
)]),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"line-h-15 font-14 color-909399"
},[
e
.
_v
(
"适用于:工厂、门店等"
)])],
1
)]),
e
.
_v
(
" "
),
1
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"工作日设置:"
,
prop
:
""
}},[
s
(
"div"
,{
staticClass
:
"quick-set-table"
},[
s
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
attenceWorkJson
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
width
:
"55"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"工作日"
,
width
:
"120"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
e
.
weekDays
[
t
.
row
.
weekDay
]))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"排班时间段"
,
width
:
"120"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
t
.
row
.
workType
?
s
(
"div"
,
e
.
_l
(
t
.
row
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})):
s
(
"div"
,[
e
.
_v
(
"休息"
)])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
s
.
stopPropagation
(),
e
.
modClasses
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"更改班次"
)])]}}])})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
lawFreeFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"lawFreeFlag"
,
t
)},
expression
:
"ruleFormData.lawFreeFlag"
}},[
e
.
_v
(
"法定节假日自动排休"
)])],
1
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤班次:"
,
prop
:
""
}},[
e
.
ruleFormData
.
classesJson
.
length
?
s
(
"div"
,{
staticClass
:
"tags-classes"
},[
s
(
"div"
,{
staticClass
:
"attend-type-classes"
,
on
:{
click
:
e
.
toShowClassMult
}},[
s
(
"div"
,{
staticClass
:
"attend-type-classes-display"
},
e
.
_l
(
e
.
ruleFormData
.
classesJson
,
function
(
t
,
a
){
return
s
(
"div"
,{
key
:
a
,
class
:[
"class-tag"
,
a
%
7
==
0
?
"day-tag-blue"
:
""
,
a
%
7
==
1
?
"day-tag-red"
:
""
,
a
%
7
==
2
?
"day-tag-purple"
:
""
,
a
%
7
==
3
?
"day-tag-orange"
:
""
,
a
%
7
==
4
?
"day-tag-green"
:
""
,
a
%
7
==
5
?
"day-tag-pink"
:
""
,
a
%
7
==
6
?
"day-tag-cyan"
:
""
]},[
s
(
"span"
,{
staticClass
:
"ant-tag-text"
},[
e
.
_v
(
"班次"
+
e
.
_s
(
t
.
classesName
)
+
":"
)]),
e
.
_v
(
" "
),
e
.
_l
(
t
.
classessTimesJson
,
function
(
t
,
a
){
return
s
(
"span"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
t
.
startTime
)
+
"-"
+
e
.
_s
(
t
.
endTime
))])})],
2
)}))])]):
s
(
"div"
,{
staticClass
:
"classes-btn"
},[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
toShowClassMult
}},[
e
.
_v
(
"选择班次"
)])],
1
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
&&
e
.
ruleFormData
.
classesJson
.
length
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"排班周期:"
,
prop
:
""
}},[
e
.
ruleFormData
.
attenceClassesRangeJSON
.
length
?
s
(
"el-table"
,{
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
attenceClassesRangeJSON
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"ranageName"
,
label
:
"周期名称"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
rangeName
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"周期班次"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
e
.
_l
(
t
.
row
.
classes
,
function
(
t
,
a
){
return
s
(
"span"
,{
key
:
a
+
"time"
},[
e
.
_v
(
e
.
_s
(
a
>
1
?
"-"
:
""
)
+
e
.
_s
(
t
.
classesName
))])})}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"ranageName"
,
label
:
"周期天数"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
days
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
e
.
editRange
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"编辑"
)])]}}])})],
1
):
s
(
"div"
,{
staticClass
:
"classes-btn"
},[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
toShowRangeMult
}},[
e
.
_v
(
"请设置排班周期"
)])],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"考勤方式:"
,
prop
:
""
}},[
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
gpsFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"gpsFlag"
,
t
)},
expression
:
"ruleFormData.gpsFlag"
}},[
e
.
_v
(
"GPS打卡"
)]),
e
.
ruleFormData
.
gpsFlag
?
e
.
_e
():
s
(
"span"
,{
staticClass
:
"p-l-10 font-12 color-909399"
},[
e
.
_v
(
"你尚未设置任何考勤方式,保存设置后成员可在任何地点打卡"
)])],
1
),
e
.
_v
(
" "
),
s
(
"div"
,{
staticClass
:
"gps-body p-20 bg-f7f8fa"
,
staticStyle
:{
width
:
"567px"
}},[
s
(
"div"
,[
e
.
_v
(
"根据工作地点考勤(可添加多个考勤地点)"
)]),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
addMap
}},[
e
.
_v
(
"添加考勤地点"
)]),
e
.
_v
(
" "
),
s
(
"span"
,[
e
.
_v
(
"有效范围"
)]),
e
.
_v
(
" "
),
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
ruleFormData
.
clockDistance
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"clockDistance"
,
t
)},
expression
:
"ruleFormData.clockDistance"
}},
e
.
_l
(
e
.
distance
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
value
,
attrs
:{
label
:
e
.
label
,
value
:
e
.
value
}})}))],
1
),
e
.
_v
(
" "
),
e
.
ruleFormData
.
distanceAddress
.
length
?
s
(
"div"
,{
staticClass
:
"m-t-20"
},[
s
(
"el-table"
,{
staticStyle
:{
width
:
"567px"
},
attrs
:{
data
:
e
.
ruleFormData
.
distanceAddress
,
"tooltip-effect"
:
"dark"
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"考勤地址"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
e
.
_s
(
t
.
row
.
address
))]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"address"
,
label
:
"操作"
,
"show-overflow-tooltip"
:
""
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
s
){
e
.
delGps
(
t
.
$index
,
t
.
row
)}}},[
e
.
_v
(
"删除"
)])]}}])})],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"div"
,[
s
(
"el-checkbox"
,{
model
:{
value
:
e
.
ruleFormData
.
storeClockFlag
,
callback
:
function
(
t
){
e
.
$set
(
e
.
ruleFormData
,
"storeClockFlag"
,
t
)},
expression
:
"ruleFormData.storeClockFlag"
}},[
e
.
_v
(
"根据门店地址经纬度自动配置"
)]),
e
.
_v
(
" "
),
s
(
"p"
,{
staticClass
:
"font-14 color-909399"
},[
e
.
_v
(
"如门店经纬度有误,请在通讯录修改门店相关信息,未设置门店打卡无须选择此项"
)])],
1
)])]),
e
.
_v
(
" "
),
s
(
"el-form-item"
,[
s
(
"div"
,{
staticClass
:
"btn-wrap"
},[
s
(
"el-button"
,{
attrs
:{
plain
:
""
},
on
:{
click
:
e
.
cancelSend
}},[
e
.
_v
(
"取消"
)]),
e
.
_v
(
" "
),
1
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
toSubmit
(
"noteForm"
,
"1"
)}}},[
e
.
_v
(
"保存"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
2
==
e
.
ruleFormData
.
attenceType
?
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
toSubmit
(
"noteForm"
,
"2"
)}}},[
e
.
_v
(
"保存设置,开始排班 "
)]):
e
.
_e
()],
1
)])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"vue-select-employee"
,{
attrs
:{
appScene
:
e
.
appScene
,
defaultSelection
:
e
.
mustSelection
,
onlyPerson
:
e
.
onlyPerson
,
treeSet
:
e
.
treeSet
,
changed
:
e
.
changed
},
on
:{
handleSelectedList
:
e
.
handleMustList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-store"
,{
ref
:
"storeSelector"
,
attrs
:{
appScene
:
e
.
appScene
,
treeSet
:
e
.
storeTreeSet
,
selectType
:
"all"
,
defaultList
:
e
.
mustStoreList
},
on
:{
handleSelectedList
:
e
.
handleMustList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-employee"
,{
attrs
:{
appScene
:
e
.
appScene
,
defaultSelection
:
e
.
noSelection
,
onlyPerson
:
!
0
,
treeSet
:
e
.
noTreeSet
,
changed
:
e
.
changedNo
},
on
:{
handleSelectedList
:
e
.
handleNoList
}}),
e
.
_v
(
" "
),
s
(
"vue-select-store"
,{
ref
:
"storeSelector"
,
attrs
:{
appScene
:
e
.
appScene
,
treeSet
:
e
.
noStoreTreeSet
,
selectType
:
"person"
,
defaultList
:
e
.
noStoreList
},
on
:{
handleSelectedList
:
e
.
handleNoList
}}),
e
.
_v
(
" "
),
s
(
"el-dialog"
,{
attrs
:{
title
:
"选择规则生效时间"
,
visible
:
e
.
showEffect
,
width
:
"420px"
,
"before-close"
:
e
.
handleClose
},
on
:{
"update:visible"
:
function
(
t
){
e
.
showEffect
=
t
}}},[
s
(
"span"
,[
e
.
_v
(
"立即生效:今日考勤结果将按新规则重算"
)]),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
sendData
(
"noteForm"
,
"0"
)}}},[
e
.
_v
(
"明天生效"
)])],
1
)]),
e
.
_v
(
" "
),
s
(
"class-select"
,{
attrs
:{
workClassShow
:
e
.
workClassShow
,
classesId
:
e
.
classesId
},
on
:{
hideClassDialog
:
e
.
hideClassDialog
}}),
e
.
_v
(
" "
),
s
(
"map-select"
,{
attrs
:{
mapShow
:
e
.
mapShow
},
on
:{
hideMapDialog
:
e
.
hideMapDialog
}}),
e
.
_v
(
" "
),
s
(
"class-select-mult"
,{
attrs
:{
workClassMultShow
:
e
.
workClassMultShow
,
classesData
:
e
.
ruleFormData
.
classesJson
},
on
:{
hideMultClassDialog
:
e
.
hideMultClassDialog
}}),
e
.
_v
(
" "
),
s
(
"cycle-set"
,{
attrs
:{
rangeShow
:
e
.
rangeShow
,
classesJson
:
e
.
classesJson
,
attenceGroupData
:
e
.
attenceGroupData
,
attenceGroupId
:
e
.
$route
.
query
.
attenceGroupId
},
on
:{
hideCycleDialog
:
e
.
hideCycleDialog
}})],
1
)},
staticRenderFns
:[]};
var
A
=
s
(
"VU/8"
)(
O
,
G
,
!
1
,
function
(
e
){
s
(
"dahR"
)},
"data-v-184f72f0"
,
null
);
t
.
default
=
A
.
exports
},
j9Ku
:
function
(
e
,
t
){},
kr0l
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/manifest.
ee6a0432ab511160223a
.js
→
dist/static/js/manifest.
93936a7027268cc9f589
.js
View file @
d58c304b
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
b
,
n
){
for
(
var
r
,
t
,
o
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
t
=
a
[
i
],
d
[
t
]
&&
u
.
push
(
d
[
t
][
0
]),
d
[
t
]
=
0
;
for
(
r
in
b
)
Object
.
prototype
.
hasOwnProperty
.
call
(
b
,
r
)
&&
(
e
[
r
]
=
b
[
r
]);
for
(
c
&&
c
(
a
,
b
,
n
);
u
.
length
;)
u
.
shift
()();
if
(
n
)
for
(
i
=
0
;
i
<
n
.
length
;
i
++
)
o
=
f
(
f
.
s
=
n
[
i
]);
return
o
};
var
a
=
{},
d
=
{
103
:
0
};
function
f
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
d
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
d
.
exports
,
d
,
d
.
exports
,
f
),
d
.
l
=!
0
,
d
.
exports
}
f
.
e
=
function
(
e
){
var
c
=
d
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
f
){
c
=
d
[
e
]
=
[
a
,
f
]});
c
[
2
]
=
a
;
var
b
=
document
.
getElementsByTagName
(
"head"
)[
0
],
n
=
document
.
createElement
(
"script"
);
n
.
type
=
"text/javascript"
,
n
.
charset
=
"utf-8"
,
n
.
async
=!
0
,
n
.
timeout
=
12
e4
,
f
.
nc
&&
n
.
setAttribute
(
"nonce"
,
f
.
nc
),
n
.
src
=
f
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"2baca21202cf454cd7b0"
,
1
:
"fe9dec1f31b04053fd7e"
,
2
:
"54aabab28c7735d34c10"
,
3
:
"b7e6d57d97174b75b050"
,
4
:
"11254d7e3a102121b8ec"
,
5
:
"b5e24a58d047a2ec70f5"
,
6
:
"124ad8222f7b043b44ae"
,
7
:
"ebad93a8c5bffffd9e98"
,
8
:
"f1c9fb5c9212483138d8"
,
9
:
"b5aae16b3951516573ad"
,
10
:
"ebbed2d956a1376f014a"
,
11
:
"59c7813cc972f62b1d18"
,
12
:
"879536ae7ce46f0c54ec"
,
13
:
"57e51fc1b6342003f25d"
,
14
:
"dce1b92c12422c24e840"
,
15
:
"e0f4f745b5dc301356db"
,
16
:
"f483f95dbac654c7de5a"
,
17
:
"ff6edf624b982c354977"
,
18
:
"d50ec99b96f7acbb4d42"
,
19
:
"d7d09ae4564d64842009"
,
20
:
"455fd80bd8af15457c57"
,
21
:
"c1b5e15e28768af52654"
,
22
:
"2a873e819c6c369d5cd1"
,
23
:
"d2380bf3c276e741313b"
,
24
:
"56085041ae784faf3c32"
,
25
:
"e23f42a6b2180b63c129"
,
26
:
"606394f2e20eb1a455fa"
,
27
:
"4a1c52078d154a141023"
,
28
:
"70cb3f87bd69723dbd41"
,
29
:
"c5bb15e8e1bd17cdc0f7"
,
30
:
"feb81cd112a60d4701eb"
,
31
:
"20f69d688df3827843c5"
,
32
:
"0c7863fa05e5c75053c3"
,
33
:
"f4e32fc6846aa744ee48"
,
34
:
"0fb2eb67d47b9ecbd519"
,
35
:
"e64c33855b455bcdd9a2"
,
36
:
"7b2e2fedc166438ee6b0"
,
37
:
"8dc3e1f0f3e416135406"
,
38
:
"9f4a46d2ce3c9477a06b"
,
39
:
"b33ea830129fb895dd77"
,
40
:
"bf494f662eed5b762aa1"
,
41
:
"17121c9227dddf24b37d"
,
42
:
"54f2f4850c109391114a"
,
43
:
"fb46c0bad10552e7ef89"
,
44
:
"3d32c7e1954754671303"
,
45
:
"c0accd45711184d0044d"
,
46
:
"785c8076b8d217da747e"
,
47
:
"b477848570e876912bdb"
,
48
:
"32a6d29de6b93cd9201c"
,
49
:
"1a7182d9cdf2e08ff7f0"
,
50
:
"4235ecfe09e1fc4e1ca4"
,
51
:
"2f363aaad04264e9f159"
,
52
:
"d56e883ddcbef7c6b221"
,
53
:
"ec91f2b143d0b1e708b5"
,
54
:
"31eed9c38748896262d1"
,
55
:
"4f96191ae2c44c6f18f7"
,
56
:
"99063bd3b07926595af4"
,
57
:
"ba6530916d934b70d218"
,
58
:
"2241679269f18e7f14c3"
,
59
:
"5c336f6f4d119300c1d8"
,
60
:
"d43c13d5c29feb45e864"
,
61
:
"0806aac37bd2b86e8bc2"
,
62
:
"8ef5c75f77376ecd8873"
,
63
:
"bbe4da77ef31a0aa9150"
,
64
:
"f26939887c305ec6f7fc"
,
65
:
"069ccaf5f8e5b5f3c59d"
,
66
:
"5f0382c9cb76b57ba778"
,
67
:
"745b9621e5297c575b33"
,
68
:
"aaaa125fb978b59c2cbf"
,
69
:
"bb6a8bab41cac9f11bd4"
,
70
:
"a226d330de7ebb2a4c5f"
,
71
:
"9551ae81326c57064dec"
,
72
:
"cb1b3985b92be4556fc1"
,
73
:
"b6b1fb51b601c0fafcda"
,
74
:
"6206c00744e77bc84fec"
,
75
:
"93eb5a61daaa3a1df425"
,
76
:
"78e5a422e9fecbbd255a"
,
77
:
"b3f7cf4d2b54d306c522"
,
78
:
"1fc3472c5f95a0a66979"
,
79
:
"69811ba75d1fceae9737"
,
80
:
"12442b543aff65f2c05d"
,
81
:
"00a94b58ac2affb758dc"
,
82
:
"1fa56152d6bdcfd4ec14"
,
83
:
"976088a6ee120b8caa17"
,
84
:
"45dae077c86a1a0050ff"
,
85
:
"0c7635a15cceae31d981"
,
86
:
"d0d0607a424156f2d88d"
,
87
:
"aee44c25b8d252c44b6e"
,
88
:
"6583c4b0dc7a8f908fa2"
,
89
:
"8d513b9c9d7970a612c0"
,
90
:
"57319965505945b3ae7e"
,
91
:
"446342439ce97b19c84f"
,
92
:
"09a5823b00d6180576b9"
,
93
:
"e801fdd8bbd27a68d8ee"
,
94
:
"c50da77d4e1d5a44b971"
,
95
:
"04507f6fadd31b01a746"
,
96
:
"d4a4beef007fa347bd93"
,
97
:
"8b0f08b3974b32d7bc2a"
,
98
:
"69c8efc82743796dc255"
,
99
:
"58cc1884c4f80303999a"
,
102
:
"2629d20834840d0da10e"
}[
e
]
+
".js"
;
var
r
=
setTimeout
(
t
,
12
e4
);
function
t
(){
n
.
onerror
=
n
.
onload
=
null
,
clearTimeout
(
r
);
var
c
=
d
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
d
[
e
]
=
void
0
)}
return
n
.
onerror
=
n
.
onload
=
t
,
b
.
appendChild
(
n
),
a
},
f
.
m
=
e
,
f
.
c
=
a
,
f
.
d
=
function
(
e
,
c
,
a
){
f
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
f
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
f
.
d
(
c
,
"a"
,
c
),
c
},
f
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
f
.
p
=
"./"
,
f
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
b
,
n
){
for
(
var
r
,
t
,
o
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
t
=
a
[
i
],
f
[
t
]
&&
u
.
push
(
f
[
t
][
0
]),
f
[
t
]
=
0
;
for
(
r
in
b
)
Object
.
prototype
.
hasOwnProperty
.
call
(
b
,
r
)
&&
(
e
[
r
]
=
b
[
r
]);
for
(
c
&&
c
(
a
,
b
,
n
);
u
.
length
;)
u
.
shift
()();
if
(
n
)
for
(
i
=
0
;
i
<
n
.
length
;
i
++
)
o
=
d
(
d
.
s
=
n
[
i
]);
return
o
};
var
a
=
{},
f
=
{
103
:
0
};
function
d
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
f
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
f
.
exports
,
f
,
f
.
exports
,
d
),
f
.
l
=!
0
,
f
.
exports
}
d
.
e
=
function
(
e
){
var
c
=
f
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
d
){
c
=
f
[
e
]
=
[
a
,
d
]});
c
[
2
]
=
a
;
var
b
=
document
.
getElementsByTagName
(
"head"
)[
0
],
n
=
document
.
createElement
(
"script"
);
n
.
type
=
"text/javascript"
,
n
.
charset
=
"utf-8"
,
n
.
async
=!
0
,
n
.
timeout
=
12
e4
,
d
.
nc
&&
n
.
setAttribute
(
"nonce"
,
d
.
nc
),
n
.
src
=
d
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"2baca21202cf454cd7b0"
,
1
:
"fe9dec1f31b04053fd7e"
,
2
:
"54aabab28c7735d34c10"
,
3
:
"b7e6d57d97174b75b050"
,
4
:
"11254d7e3a102121b8ec"
,
5
:
"b5e24a58d047a2ec70f5"
,
6
:
"124ad8222f7b043b44ae"
,
7
:
"ebad93a8c5bffffd9e98"
,
8
:
"f1c9fb5c9212483138d8"
,
9
:
"b5aae16b3951516573ad"
,
10
:
"ebbed2d956a1376f014a"
,
11
:
"59c7813cc972f62b1d18"
,
12
:
"879536ae7ce46f0c54ec"
,
13
:
"57e51fc1b6342003f25d"
,
14
:
"dce1b92c12422c24e840"
,
15
:
"ff02049c8f18cb82efa6"
,
16
:
"f483f95dbac654c7de5a"
,
17
:
"ff6edf624b982c354977"
,
18
:
"d50ec99b96f7acbb4d42"
,
19
:
"d7d09ae4564d64842009"
,
20
:
"455fd80bd8af15457c57"
,
21
:
"c1b5e15e28768af52654"
,
22
:
"2a873e819c6c369d5cd1"
,
23
:
"d2380bf3c276e741313b"
,
24
:
"56085041ae784faf3c32"
,
25
:
"e23f42a6b2180b63c129"
,
26
:
"606394f2e20eb1a455fa"
,
27
:
"4a1c52078d154a141023"
,
28
:
"70cb3f87bd69723dbd41"
,
29
:
"c5bb15e8e1bd17cdc0f7"
,
30
:
"feb81cd112a60d4701eb"
,
31
:
"20f69d688df3827843c5"
,
32
:
"0c7863fa05e5c75053c3"
,
33
:
"f4e32fc6846aa744ee48"
,
34
:
"0fb2eb67d47b9ecbd519"
,
35
:
"e64c33855b455bcdd9a2"
,
36
:
"7b2e2fedc166438ee6b0"
,
37
:
"8dc3e1f0f3e416135406"
,
38
:
"9f4a46d2ce3c9477a06b"
,
39
:
"b33ea830129fb895dd77"
,
40
:
"bf494f662eed5b762aa1"
,
41
:
"17121c9227dddf24b37d"
,
42
:
"54f2f4850c109391114a"
,
43
:
"fb46c0bad10552e7ef89"
,
44
:
"3d32c7e1954754671303"
,
45
:
"c0accd45711184d0044d"
,
46
:
"785c8076b8d217da747e"
,
47
:
"b477848570e876912bdb"
,
48
:
"32a6d29de6b93cd9201c"
,
49
:
"1a7182d9cdf2e08ff7f0"
,
50
:
"4235ecfe09e1fc4e1ca4"
,
51
:
"2f363aaad04264e9f159"
,
52
:
"d56e883ddcbef7c6b221"
,
53
:
"ec91f2b143d0b1e708b5"
,
54
:
"31eed9c38748896262d1"
,
55
:
"4f96191ae2c44c6f18f7"
,
56
:
"99063bd3b07926595af4"
,
57
:
"ba6530916d934b70d218"
,
58
:
"2241679269f18e7f14c3"
,
59
:
"5c336f6f4d119300c1d8"
,
60
:
"d43c13d5c29feb45e864"
,
61
:
"0806aac37bd2b86e8bc2"
,
62
:
"8ef5c75f77376ecd8873"
,
63
:
"bbe4da77ef31a0aa9150"
,
64
:
"f26939887c305ec6f7fc"
,
65
:
"069ccaf5f8e5b5f3c59d"
,
66
:
"5f0382c9cb76b57ba778"
,
67
:
"745b9621e5297c575b33"
,
68
:
"aaaa125fb978b59c2cbf"
,
69
:
"bb6a8bab41cac9f11bd4"
,
70
:
"a226d330de7ebb2a4c5f"
,
71
:
"9551ae81326c57064dec"
,
72
:
"cb1b3985b92be4556fc1"
,
73
:
"b6b1fb51b601c0fafcda"
,
74
:
"6206c00744e77bc84fec"
,
75
:
"93eb5a61daaa3a1df425"
,
76
:
"78e5a422e9fecbbd255a"
,
77
:
"b3f7cf4d2b54d306c522"
,
78
:
"1fc3472c5f95a0a66979"
,
79
:
"69811ba75d1fceae9737"
,
80
:
"12442b543aff65f2c05d"
,
81
:
"00a94b58ac2affb758dc"
,
82
:
"1fa56152d6bdcfd4ec14"
,
83
:
"976088a6ee120b8caa17"
,
84
:
"45dae077c86a1a0050ff"
,
85
:
"0c7635a15cceae31d981"
,
86
:
"d0d0607a424156f2d88d"
,
87
:
"aee44c25b8d252c44b6e"
,
88
:
"6583c4b0dc7a8f908fa2"
,
89
:
"8d513b9c9d7970a612c0"
,
90
:
"57319965505945b3ae7e"
,
91
:
"446342439ce97b19c84f"
,
92
:
"09a5823b00d6180576b9"
,
93
:
"e801fdd8bbd27a68d8ee"
,
94
:
"c50da77d4e1d5a44b971"
,
95
:
"04507f6fadd31b01a746"
,
96
:
"d4a4beef007fa347bd93"
,
97
:
"8b0f08b3974b32d7bc2a"
,
98
:
"69c8efc82743796dc255"
,
99
:
"58cc1884c4f80303999a"
,
102
:
"2629d20834840d0da10e"
}[
e
]
+
".js"
;
var
r
=
setTimeout
(
t
,
12
e4
);
function
t
(){
n
.
onerror
=
n
.
onload
=
null
,
clearTimeout
(
r
);
var
c
=
f
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
f
[
e
]
=
void
0
)}
return
n
.
onerror
=
n
.
onload
=
t
,
b
.
appendChild
(
n
),
a
},
d
.
m
=
e
,
d
.
c
=
a
,
d
.
d
=
function
(
e
,
c
,
a
){
d
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
d
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
d
.
d
(
c
,
"a"
,
c
),
c
},
d
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
d
.
p
=
"./"
,
d
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
src/views/enterpriseApp/dailyAttendance/workGroupSet.vue
View file @
d58c304b
...
...
@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-04-12 17:56:45
* @LastEditors : 无尘
* @LastEditTime : 2019-12-25 2
0:55:03
* @LastEditTime : 2019-12-25 2
1:07:08
-->
<
template
>
<div
class=
"notice-list-wrap"
>
...
...
@@ -750,7 +750,7 @@ export default {
}
let
noStoreStructor
=
[];
if
(
that
.
ruleFormData
.
noAttenceRangeStoreType
&&
that
.
ruleFormData
.
noStoreList
.
length
)
{
s
toreStructor
=
that
.
ruleFormData
.
noStoreList
.
map
(
item
=>
{
noS
toreStructor
=
that
.
ruleFormData
.
noStoreList
.
map
(
item
=>
{
return
{
rangeType
:
2
,
storeFlag
:
1
,
...
...
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