Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
21c2f02b
Commit
21c2f02b
authored
Oct 25, 2023
by
youjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
28c3e396
b7814958
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
486 additions
and
360 deletions
+486
-360
ApprovalStatistical.vue
src/components/administrative/ApprovalStatistical.vue
+486
-360
No files found.
src/components/administrative/ApprovalStatistical.vue
View file @
21c2f02b
<
template
>
<
template
>
<div
class=
"flexOne"
>
<div
class=
"flexOne"
>
<div
class=
"query-box"
style=
"border-bottom: none;"
>
<div
class=
"query-box"
style=
"border-bottom: none;"
>
<ul>
<ul>
<li>
<li>
<span><em>
公司
</em><el-select
filterable
@
change=
'getUser'
v-model=
'msg.RB_BranchId'
>
<span><em>
公司
</em>
<el-option
label=
'不限'
value=
'-1'
></el-option>
<el-select
filterable
@
change=
'getUser'
v-model=
'msg.RB_BranchId'
>
<el-option
v-for=
'item in companyList'
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
<el-option
label=
'不限'
value=
'-1'
></el-option>
</el-select>
<el-option
v-for=
'item in companyList'
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
</span>
</el-select>
</li>
</span>
<li>
</li>
<span><em>
申请人
</em><el-select
filterable
v-model=
'msg.CreateBy'
>
<li>
<el-option
label=
'不限'
value=
'0'
></el-option>
<span><em>
申请人
</em>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
<el-select
filterable
v-model=
'msg.CreateBy'
>
</el-select>
<el-option
label=
'不限'
value=
'0'
></el-option>
</span>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
</li>
</el-select>
<li>
</span>
<span><em>
待审核人
</em><el-select
filterable
v-model=
'msg.ToAuditId'
>
</li>
<el-option
label=
'不限'
value=
'0'
></el-option>
<li>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
<span><em>
待审核人
</em>
</el-select>
<el-select
filterable
v-model=
'msg.ToAuditId'
>
</span>
<el-option
label=
'不限'
value=
'0'
></el-option>
</li>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
<li>
</el-select>
<span><em>
已审核人
</em><el-select
filterable
v-model=
'msg.AuditedId'
>
</span>
<el-option
label=
'不限'
value=
'0'
></el-option>
</li>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
<li>
</el-select>
<span><em>
已审核人
</em>
</span>
<el-select
filterable
v-model=
'msg.AuditedId'
>
</li>
<el-option
label=
'不限'
value=
'0'
></el-option>
<li>
<el-option
v-for=
'item in userList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
></el-option>
<span><em>
请假类型
</em><el-select
v-model=
'msg.TemplateId'
>
</el-select>
<el-option
v-for=
'item in ApplyTypeList'
:label=
'item.label'
:value=
'item.value'
:key=
'item.value'
></el-option>
</span>
</el-select></span>
</li>
</li>
<li>
<li>
<span><em>
请假类型
</em>
<span><em>
申请审核状态
</em><el-select
v-model=
'msg.appAuditStatus'
>
<el-select
v-model=
'msg.TemplateId'
>
<el-option
v-for=
'item in appAuditStatusList'
:label=
'item.label'
:value=
'item.value'
:key=
'item.value'
></el-option>
<el-option
v-for=
'item in ApplyTypeList'
:label=
'item.label'
:value=
'item.value'
:key=
'item.value'
>
</el-select></span>
</el-option>
</li>
</el-select>
<li><span><em>
申请时间
</em><el-date-picker
v-model=
'msg.StartTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</span>
-
</li>
<el-date-picker
v-model=
'msg.EndTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
<li>
</span>
<span><em>
申请审核状态
</em>
</li>
<el-select
v-model=
'msg.appAuditStatus'
>
<li>
<el-option
v-for=
'item in appAuditStatusList'
:label=
'item.label'
:value=
'item.value'
:key=
'item.value'
>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"查询"
@
click=
"resetPageIndex(),getList()"
/>
</el-option>
</li>
</el-select>
</ul>
</span>
</div>
</li>
<div
style=
"width: 100%; overflow: auto;"
>
<li><span><em>
申请时间
</em>
<table
style=
"min-width: 1400px;"
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<el-date-picker
v-model=
'msg.StartTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
<tr>
-
<th>
公司
</th>
<el-date-picker
v-model=
'msg.EndTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
<th>
申请人
</th>
</span>
<th>
请假类型
</th>
</li>
<th
width=
"300"
>
待审核人
</th>
<li>
<th
width=
"300"
>
已审核人
</th>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"查询"
@
click=
"resetPageIndex(),getList()"
/>
<th>
申请时间
</th>
</li>
<th>
{{
$t
(
'admin.admin_status'
)
}}
</th>
</ul>
<th
width=
"150"
>
{{
$t
(
'system.table_operation'
)
}}
</th>
</div>
</tr>
<div
style=
"width: 100%; overflow: auto;"
>
<table
style=
"min-width: 1400px;"
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr
v-for=
'item in list'
v-loading=
'loading'
>
<tr>
<td>
{{
item
.
BName
}}
</td>
<th>
公司
</th>
<td>
{{
item
.
EmName
}}
</td>
<th>
申请人
</th>
<td>
{{
item
.
TemplateName
}}
</td>
<th>
请假类型
</th>
<td>
{{
item
.
ToAuditName
}}
</td>
<th
width=
"300"
>
待审核人
</th>
<td>
{{
item
.
AuditedName
}}
</td>
<th
width=
"300"
>
已审核人
</th>
<td>
{{
item
.
CreateTime
}}
</td>
<th>
申请时间
</th>
<td>
{{
item
.
Status
}}
</td>
<th>
{{
$t
(
'admin.admin_status'
)
}}
</th>
<td>
<th
width=
"150"
>
{{
$t
(
'system.table_operation'
)
}}
</th>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"详情"
placement=
"top"
>
</tr>
<el-button
type=
"primary"
icon=
"el-icon-tickets"
circle
@
click=
"getDetail(item.Id,item.TemplateType)"
></el-button>
<tbody
v-loading=
'loading'
>
</el-tooltip>
<tr
v-for=
'item in list'
>
</td>
<td>
{{
item
.
BName
}}
</td>
</tr>
<td>
{{
item
.
EmName
}}
</td>
</table>
<td>
{{
item
.
TemplateName
}}
</td>
</div>
<td>
{{
item
.
ToAuditName
}}
</td>
<el-pagination
background
<td>
{{
item
.
AuditedName
}}
</td>
@
current-change=
"handleCurrentChange"
<td>
{{
item
.
CreateTime
}}
</td>
:current-page
.
sync=
"currentPage"
<td>
{{
item
.
Status
}}
</td>
layout=
"total,prev, pager, next, jumper"
<td>
:page-size=
msg.pageSize
<el-tooltip
class=
"item"
effect=
"dark"
content=
"详情"
placement=
"top"
>
:total=
total
>
<el-button
type=
"primary"
icon=
"el-icon-tickets"
circle
@
click=
"getDetail(item.Id,item.TemplateType)"
>
</el-pagination>
</el-button>
</el-tooltip>
<el-dialog
custom-class=
'w500'
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
>
</td>
<div
class=
"approvalStatisticalDialog"
>
</tr>
<div
class=
"title"
>
{{
detailList
.
Proposer
}}{{
detailList
.
TempleteTypeName
}}
</div>
</tbody>
<div
class=
"user"
>
</table>
<img
v-if=
"!detailList.ProposerPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
</div>
<img
v-else
:src=
"detailList.ProposerPhoto"
alt=
""
:onerror=
"defaultImg"
>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
<p>
{{
detailList
.
Proposer
}}
</p>
layout=
"total,prev, pager, next, jumper"
:page-size=
msg.pageSize
:total=
total
>
<p><span
style=
"color:#257BF1; font-size: 14px;"
>
{{
detailList
.
Status
}}
</span></p>
</el-pagination>
</div>
<el-dialog
custom-class=
'w500'
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
>
<div
class=
"approvalStatisticalDialog"
>
<div
class=
"detail"
>
<div
class=
"title"
>
{{
detailList
.
Proposer
}}{{
detailList
.
TempleteTypeName
}}
</div>
<table
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
class=
"myApprovalTable"
>
<div
class=
"user"
>
<tr
v-for=
"(item,index) in detailList.Details"
v-if=
"(item.formType=='Image' && item.value.length>0) || item.formType!='Image'"
>
<img
v-if=
"!detailList.ProposerPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<td
width=
"80"
>
{{
item
.
title
}}
:
</td>
<img
v-else
:src=
"detailList.ProposerPhoto"
alt=
""
:onerror=
"defaultImg"
>
<p>
{{
detailList
.
Proposer
}}
</p>
<td
v-if=
"item.formType=='String'"
>
{{
item
.
value
}}
</td>
<p><span
style=
"color:#257BF1; font-size: 14px;"
>
{{
detailList
.
Status
}}
</span></p>
<td
v-if=
"item.formType=='Json'"
>
</div>
<div
v-for=
"(i,index) in item.value"
style=
"border-bottom: 1px solid #ccc; padding:10px 0;"
>
<div
class=
"detail"
>
<p
style=
"line-height: 24px;"
v-for=
"o in i"
>
{{
o
.
title
}}
:
{{
o
.
value
}}
</p>
<table
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
class=
"myApprovalTable"
>
</div>
<tr
v-for=
"(item,index) in detailList.Details"
</td>
v-if=
"(item.formType=='Image' && item.value.length>0) || item.formType!='Image'"
>
<td
v-if=
"item.formType=='Image'"
>
<td
width=
"80"
>
{{
item
.
title
}}
:
</td>
<img
v-if=
'item.value.length>0'
style=
"width: 50px; height: 50px; border-radius: 4px; margin:0 10px 0 0;"
v-for=
"(img,index) in item.value"
:src=
"img"
@
click=
"getPic(item.value)"
/>
</td>
</tr>
</table>
</div>
<div
class=
"audit"
>
<div
class=
"auditItem"
>
<img
v-if=
"!detailList.ProposerPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
v-else
:src=
"detailList.ProposerPhoto"
alt=
""
:onerror=
"defaultImg"
>
<p>
<span>
{{
detailList
.
Proposer
}}
</span>
<span>
发起申请
</span><span
class=
"fr"
>
{{
detailList
.
ProposerTime
}}
</span>
</p>
</div>
<div
class=
"auditItem"
v-for=
"(item,index) in detailList.arList"
>
<img
v-if=
'item.AuditRecordList.length==1&&!item.AuditRecordList[0].AuditEmPhoto'
src=
"../../assets/img/litheader.png"
/>
<img
v-if=
'item.AuditRecordList.length==1&&item.AuditRecordList[0].AuditEmPhoto'
:src=
'item.AuditRecordList[0].AuditEmPhoto'
alt=
""
:onerror=
"defaultImg"
/>
<img
v-if=
'item.AuditRecordList.length>1'
src=
"../../assets/img/bg_z1@2x.png"
/>
<p
v-if=
'item.AuditRecordList.length==1'
>
<span>
{{
item
.
AuditRecordList
[
0
].
AuditEmName
}}
</span>
<span
:style=
"'color: ' + item.AuditRecordList[0].StatusColor + ' !important'"
>
{{
item
.
AuditRecordList
[
0
].
Stauts
}}
</span>
<span
class=
"fr"
>
{{
item
.
AuditRecordList
[
0
].
AuditTime
}}
</span>
<span
style=
"display:block; padding-left: 40px; text-indent: 0; font-size: 12px; line-height: 24px; color: #333;"
>
{{
item
.
AuditRecordList
[
0
].
Description
}}
</span>
<span
v-if=
"item.AuditRecordList[0].CareOfList!=null"
style=
"display: inline-block; line-height: 24px; font-size: 12px; text-indent: 0; padding-left:40px; color: #666;"
>
<b
style=
"color: red;"
>
由
</b>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
BeFrom
}}
<b
style=
"color: red;"
>
转
</b>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
Target
}}
<br/>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
Remarks
}}
</span>
</p>
<p
v-if=
'item.AuditRecordList.length>1'
style=
"cursor: pointer;"
>
<span>
{{
item
.
AuditDescription
}}{{
item
.
AuditWay
}}
</span>
<i
class=
"el-icon-arrow-right"
></i>
</p>
<div
v-if=
'item.AuditRecordList.length>1'
style=
" width: 300px; height: auto; margin:15px 0; border-radius: 4px; background: #F0F3FA;"
>
<p
v-if=
'item.AuditWayStatus==2'
style=
"padding: 10px; color: #666;"
>
须以下人员全部审批通过
</p>
<p
v-if=
'item.AuditWayStatus==3'
style=
"padding: 10px; color: #666;"
>
以下人员大于等于一人审批通过即可
</p>
<div
v-for=
"i in item.AuditRecordList"
>
<p
class=
"auditItemDetailtitle"
>
<img
width=
"28"
height=
"28"
v-if=
"!i.AuditEmPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
width=
"28"
height=
"28"
v-else
:src=
"i.AuditEmPhoto"
alt=
""
:onerror=
"defaultImg"
>
<span>
{{
i
.
AuditEmName
}}
</span>
<span
:style=
"'color: ' + i.StatusColor + ' !important'"
>
{{
i
.
Stauts
}}
</span>
<span
style=
"display:block; padding-left: 40px; text-indent: 0; font-size: 12px; line-height: 24px; color: #333;"
>
{{
i
.
Description
}}
</span>
<span
v-if=
'i.CareOfList!=null'
style=
"display: inline-block; line-height: 24px; font-size: 12px; text-indent: 0; padding-left:40px; color: #666;"
>
<b
style=
"color: red;"
>
由
</b>
{{
i
.
CareOfList
[
0
].
BeFrom
}}
<b
style=
"color: red;"
>
转
</b>
{{
i
.
CareOfList
[
0
].
Target
}}
<br/>
{{
i
.
CareOfList
[
0
].
Remarks
}}
</span>
</p>
<div
class=
"auditItemImgList"
v-if=
"toArr(i.Image).length>0"
>
<img
v-for=
'img in toArr(i.Image)'
:src=
"img"
@
click=
"getPic(toArr(i.Image))"
/>
</div>
</div>
</div>
</div>
</div>
<!--audit end-->
<div
class=
"send"
v-if=
"detailList.AuditStatus==5"
>
<!--v-if="detailList.AuditStatus==5"-->
<p
class=
"sentTitle"
>
抄送
<span>
审批通过后,通知抄送人
</span></p>
<div
class=
"sendList"
>
<div
v-for=
"(item,index) in detailList.CopyToPeopleList"
>
<img
v-if=
"!item.EmPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
v-else
:src=
"item.EmPhoto"
alt=
""
:onerror=
"defaultImg"
>
<br/>
{{
item
.
EmName
}}
</div>
</div>
</div>
<!--send end-->
</div>
<div
:class=
"
{viewBigPicLayer:true,viewBigPicLayerDisplayNone:dspNone}" @click="closePicLayer">
<i
@
click=
"closePicLayer"
class=
"el-icon-circle-close-outline clolseViewBigPicLayer"
></i>
<el-carousel
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
<img
:src=
"item"
/>
</el-carousel-item>
</el-carousel>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<td
v-if=
"item.formType=='String'"
>
{{
item
.
value
}}
</td>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible=false"
>
关闭
</button>
<td
v-if=
"item.formType=='Json'"
>
</div>
<div
v-for=
"(i,index) in item.value"
style=
"border-bottom: 1px solid #ccc; padding:10px 0;"
>
</el-dialog>
<p
style=
"line-height: 24px;"
v-for=
"o in i"
>
{{
o
.
title
}}
:
{{
o
.
value
}}
</p>
</div>
</td>
</div>
<td
v-if=
"item.formType=='Image'"
>
<img
v-if=
'item.value.length>0'
style=
"width: 50px; height: 50px; border-radius: 4px; margin:0 10px 0 0;"
v-for=
"(img,index) in item.value"
:src=
"img"
@
click=
"getPic(item.value)"
/>
</td>
</tr>
</table>
</div>
<div
class=
"audit"
>
<div
class=
"auditItem"
>
<img
v-if=
"!detailList.ProposerPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
v-else
:src=
"detailList.ProposerPhoto"
alt=
""
:onerror=
"defaultImg"
>
<p>
<span>
{{
detailList
.
Proposer
}}
</span>
<span>
发起申请
</span><span
class=
"fr"
>
{{
detailList
.
ProposerTime
}}
</span>
</p>
</div>
<div
class=
"auditItem"
v-for=
"(item,index) in detailList.arList"
>
<img
v-if=
'item.AuditRecordList.length==1&&!item.AuditRecordList[0].AuditEmPhoto'
src=
"../../assets/img/litheader.png"
/>
<img
v-if=
'item.AuditRecordList.length==1&&item.AuditRecordList[0].AuditEmPhoto'
:src=
'item.AuditRecordList[0].AuditEmPhoto'
alt=
""
:onerror=
"defaultImg"
/>
<img
v-if=
'item.AuditRecordList.length>1'
src=
"../../assets/img/bg_z1@2x.png"
/>
<p
v-if=
'item.AuditRecordList.length==1'
>
<span>
{{
item
.
AuditRecordList
[
0
].
AuditEmName
}}
</span>
<span
:style=
"'color: ' + item.AuditRecordList[0].StatusColor + ' !important'"
>
{{
item
.
AuditRecordList
[
0
].
Stauts
}}
</span>
<span
class=
"fr"
>
{{
item
.
AuditRecordList
[
0
].
AuditTime
}}
</span>
<span
style=
"display:block; padding-left: 40px; text-indent: 0; font-size: 12px; line-height: 24px; color: #333;"
>
{{
item
.
AuditRecordList
[
0
].
Description
}}
</span>
<span
v-if=
"item.AuditRecordList[0].CareOfList!=null"
style=
"display: inline-block; line-height: 24px; font-size: 12px; text-indent: 0; padding-left:40px; color: #666;"
>
<b
style=
"color: red;"
>
由
</b>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
BeFrom
}}
<b
style=
"color: red;"
>
转
</b>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
Target
}}
<br
/>
{{
item
.
AuditRecordList
[
0
].
CareOfList
[
0
].
Remarks
}}
</span>
</p>
<p
v-if=
'item.AuditRecordList.length>1'
style=
"cursor: pointer;"
>
<span>
{{
item
.
AuditDescription
}}{{
item
.
AuditWay
}}
</span>
<i
class=
"el-icon-arrow-right"
></i>
</p>
<div
v-if=
'item.AuditRecordList.length>1'
style=
" width: 300px; height: auto; margin:15px 0; border-radius: 4px; background: #F0F3FA;"
>
<p
v-if=
'item.AuditWayStatus==2'
style=
"padding: 10px; color: #666;"
>
须以下人员全部审批通过
</p>
<p
v-if=
'item.AuditWayStatus==3'
style=
"padding: 10px; color: #666;"
>
以下人员大于等于一人审批通过即可
</p>
<div
v-for=
"i in item.AuditRecordList"
>
<p
class=
"auditItemDetailtitle"
>
<img
width=
"28"
height=
"28"
v-if=
"!i.AuditEmPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
width=
"28"
height=
"28"
v-else
:src=
"i.AuditEmPhoto"
alt=
""
:onerror=
"defaultImg"
>
<span>
{{
i
.
AuditEmName
}}
</span>
<span
:style=
"'color: ' + i.StatusColor + ' !important'"
>
{{
i
.
Stauts
}}
</span>
<span
style=
"display:block; padding-left: 40px; text-indent: 0; font-size: 12px; line-height: 24px; color: #333;"
>
{{
i
.
Description
}}
</span>
<span
v-if=
'i.CareOfList!=null'
style=
"display: inline-block; line-height: 24px; font-size: 12px; text-indent: 0; padding-left:40px; color: #666;"
>
<b
style=
"color: red;"
>
由
</b>
{{
i
.
CareOfList
[
0
].
BeFrom
}}
<b
style=
"color: red;"
>
转
</b>
{{
i
.
CareOfList
[
0
].
Target
}}
<br
/>
{{
i
.
CareOfList
[
0
].
Remarks
}}
</span>
</p>
<div
class=
"auditItemImgList"
v-if=
"toArr(i.Image).length>0"
>
<img
v-for=
'img in toArr(i.Image)'
:src=
"img"
@
click=
"getPic(toArr(i.Image))"
/>
</div>
</div>
</div>
</div>
</div>
<!--audit end-->
<div
class=
"send"
v-if=
"detailList.AuditStatus==5"
>
<!--v-if="detailList.AuditStatus==5"-->
<p
class=
"sentTitle"
>
抄送
<span>
审批通过后,通知抄送人
</span></p>
<div
class=
"sendList"
>
<div
v-for=
"(item,index) in detailList.CopyToPeopleList"
>
<img
v-if=
"!item.EmPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<img
v-else
:src=
"item.EmPhoto"
alt=
""
:onerror=
"defaultImg"
>
<br
/>
{{
item
.
EmName
}}
</div>
</div>
</div>
<!--send end-->
</div>
<div
:class=
"
{viewBigPicLayer:true,viewBigPicLayerDisplayNone:dspNone}" @click="closePicLayer">
<i
@
click=
"closePicLayer"
class=
"el-icon-circle-close-outline clolseViewBigPicLayer"
></i>
<el-carousel
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
<img
:src=
"item"
/>
</el-carousel-item>
</el-carousel>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible=false"
>
关闭
</button>
</div>
</el-dialog>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
picObj
:[],
picObj
:
[],
dspNone
:
true
,
dspNone
:
true
,
loading
:
true
,
loading
:
true
,
outerVisible
:
false
,
outerVisible
:
false
,
dialogTitle
:
""
,
dialogTitle
:
""
,
total
:
0
,
total
:
0
,
currentPage
:
1
,
currentPage
:
1
,
defaultImg
:
'this.src="'
+
require
(
'../../assets/img/litheader.png'
)
+
'"'
,
defaultImg
:
'this.src="'
+
require
(
'../../assets/img/litheader.png'
)
+
'"'
,
//请求数据
//请求数据
msg
:{
msg
:
{
RB_BranchId
:
'-1'
,
RB_BranchId
:
'-1'
,
Status
:
'0'
,
Status
:
'0'
,
CreateBy
:
'0'
,
CreateBy
:
'0'
,
ToAuditId
:
'0'
,
ToAuditId
:
'0'
,
AuditedId
:
'0'
,
AuditedId
:
'0'
,
TemplateId
:
0
,
TemplateId
:
0
,
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
15
,
pageSize
:
15
,
StartTime
:
''
,
StartTime
:
''
,
EndTime
:
''
,
EndTime
:
''
,
},
},
getCompanyMsg
:{
getCompanyMsg
:
{
RB_Group_Id
:
'0'
,
RB_Group_Id
:
'0'
,
Status
:
'0'
,
Status
:
'0'
,
},
},
getUserMsg
:{
getUserMsg
:
{
RB_Branch_id
:
'-1'
,
RB_Branch_id
:
'-1'
,
},
},
//返回数据
//返回数据
list
:[],
list
:
[],
companyList
:[],
companyList
:
[],
userList
:[],
userList
:
[],
ApplyTypeList
:[],
ApplyTypeList
:
[],
appAuditStatusList
:[],
appAuditStatusList
:
[],
detailList
:{},
detailList
:
{},
}
}
},
},
methods
:
{
methods
:
{
getPic
(
obj
){
getPic
(
obj
)
{
this
.
picObj
=
obj
this
.
picObj
=
obj
this
.
dspNone
=
false
;
this
.
dspNone
=
false
;
},
},
closePicLayer
(){
closePicLayer
()
{
this
.
dspNone
=
true
this
.
dspNone
=
true
},
},
toArr
(
val
){
toArr
(
val
)
{
let
arr
=
[]
let
arr
=
[]
if
(
val
!=
"[]"
)
if
(
val
!=
"[]"
)
{
{
val
.
substring
(
1
,
val
.
length
-
1
).
split
(
','
).
forEach
(
item
=>
{
val
.
substring
(
1
,
val
.
length
-
1
).
split
(
','
).
forEach
(
item
=>
{
arr
.
push
(
item
.
substring
(
1
,
item
.
length
-
1
))
arr
.
push
(
item
.
substring
(
1
,
item
.
length
-
1
))
});
});
}
return
arr
;
},
getDetail
(
id
,
type
)
{
this
.
apipost
(
'app_user_workflow_GetAuditInfo'
,
{
WorkFlowId
:
id
,
TemplateType
:
type
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
outerVisible
=
true
;
this
.
dialogTitle
=
'审批详情'
this
.
detailList
=
res
.
data
.
data
}
},
err
=>
{})
},
getAppAuditStatus
()
{
this
.
apipost
(
'app_user_workflow_get_myinitiate_auditstatus'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
res
.
data
.
data
.
forEach
(
item
=>
{
for
(
let
key
in
item
)
{
if
(
item
.
hasOwnProperty
(
key
))
{
this
.
appAuditStatusList
.
push
({
label
:
key
,
value
:
item
[
key
]
})
}
}
return
arr
;
}
},
})
getDetail
(
id
,
type
){
}
this
.
apipost
(
'app_user_workflow_GetAuditInfo'
,{
WorkFlowId
:
id
,
TemplateType
:
type
},
res
=>
{
},
err
=>
{})
if
(
res
.
data
.
resultCode
==
1
)
{
},
this
.
outerVisible
=
true
;
getApplyType
()
{
//模板类型
this
.
dialogTitle
=
'审批详情'
this
.
apipost
(
'app_user_workflow_get_templatetype'
,
{},
res
=>
{
this
.
detailList
=
res
.
data
.
data
if
(
res
.
data
.
resultCode
==
1
)
{
}
res
.
data
.
data
.
forEach
(
item
=>
{
},
err
=>
{})
for
(
let
key
in
item
)
{
},
if
(
item
.
hasOwnProperty
(
key
))
{
getAppAuditStatus
(){
this
.
ApplyTypeList
.
push
({
this
.
apipost
(
'app_user_workflow_get_myinitiate_auditstatus'
,{},
res
=>
{
label
:
key
,
if
(
res
.
data
.
resultCode
==
1
)
{
value
:
item
[
key
]
res
.
data
.
data
.
forEach
(
item
=>
{
})
for
(
let
key
in
item
){
}
if
(
item
.
hasOwnProperty
(
key
)){
}
this
.
appAuditStatusList
.
push
({
label
:
key
,
value
:
item
[
key
]})
})
}
}
}
},
err
=>
{})
})
},
}
getCompany
()
{
},
err
=>
{})
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
},
if
(
res
.
data
.
resultCode
==
1
)
{
getApplyType
(){
//模板类型
this
.
companyList
=
res
.
data
.
data
;
this
.
apipost
(
'app_user_workflow_get_templatetype'
,{},
res
=>
{
}
else
{}
if
(
res
.
data
.
resultCode
==
1
)
{
},
err
=>
{})
res
.
data
.
data
.
forEach
(
item
=>
{
},
for
(
let
key
in
item
){
getUser
()
{
if
(
item
.
hasOwnProperty
(
key
)){
this
.
msg
.
CreateBy
=
'0'
this
.
ApplyTypeList
.
push
({
label
:
key
,
value
:
item
[
key
]})
this
.
msg
.
ToAuditId
=
'0'
}
this
.
msg
.
AuditedId
=
'0'
}
this
.
getUserMsg
.
RB_Branch_id
=
this
.
msg
.
RB_BranchId
;
})
this
.
apipost
(
'app_get_company_employee'
,
this
.
getUserMsg
,
res
=>
{
}
if
(
res
.
data
.
resultCode
==
1
)
{
},
err
=>
{})
this
.
userList
=
res
.
data
.
data
;
},
}
else
{}
getCompany
(){
},
err
=>
{})
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
},
if
(
res
.
data
.
resultCode
==
1
){
getList
()
{
this
.
companyList
=
res
.
data
.
data
;
this
.
loading
=
true
;
}
else
{}
this
.
apipost
(
'WorkFlow_get_GetOAPageList'
,
this
.
msg
,
res
=>
{
},
err
=>
{})
if
(
res
.
data
.
resultCode
==
1
)
{
},
this
.
list
=
res
.
data
.
data
.
pageData
;
getUser
(){
this
.
total
=
res
.
data
.
data
.
count
;
this
.
msg
.
CreateBy
=
'0'
this
.
loading
=
false
this
.
msg
.
ToAuditId
=
'0'
this
.
msg
.
AuditedId
=
'0'
}
else
{}
this
.
getUserMsg
.
RB_Branch_id
=
this
.
msg
.
RB_BranchId
;
},
err
=>
{})
this
.
apipost
(
'app_get_company_employee'
,
this
.
getUserMsg
,
res
=>
{
},
if
(
res
.
data
.
resultCode
==
1
){
handleCurrentChange
(
val
)
{
this
.
userList
=
res
.
data
.
data
;
this
.
msg
.
pageIndex
=
val
;
}
else
{}
this
.
getList
();
},
err
=>
{})
},
},
resetPageIndex
()
{
getList
(){
this
.
msg
.
pageIndex
=
1
;
this
.
loading
=
true
;
this
.
currentPage
=
1
this
.
apipost
(
'WorkFlow_get_GetOAPageList'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
},
this
.
list
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
loading
=
false
}
else
{}
},
err
=>
{})
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
},
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
getUserMsg
.
RB_Group_id
=
this
.
getCompanyMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团ID
this
.
getCompany
()
this
.
getUser
()
this
.
getList
()
this
.
getApplyType
()
this
.
getAppAuditStatus
()
}
},
}
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
getUserMsg
.
RB_Group_id
=
this
.
getCompanyMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团ID
this
.
getCompany
()
this
.
getUser
()
this
.
getList
()
this
.
getApplyType
()
this
.
getAppAuditStatus
()
}
}
</
script
>
</
script
>
<
style
>
<
style
>
.approvalStatisticalDialog
{
.approvalStatisticalDialog
{
width
:
400px
;
background
:
#fff
}
width
:
400px
;
.approvalStatisticalDialog
.title
{
height
:
48px
;
background
:
#EDEEF0
;
line-height
:
48px
;
font-size
:
16px
;
color
:
#333
;
text-indent
:
30px
;}
background
:
#fff
.approvalStatisticalDialog
.user
{
width
:
340px
;
margin
:
0
30px
;
border-bottom
:
1px
solid
#E6E6E6
;
height
:
60px
;
padding
:
30px
0
;
box-sizing
:
content-box
}
}
.approvalStatisticalDialog
.user
>
p
{
line-height
:
28px
;}
.approvalStatisticalDialog
.user
>
img
{
width
:
58px
;
height
:
58px
;
border-radius
:
29px
;
float
:
left
;
margin
:
0
12px
0
0
;}
.approvalStatisticalDialog
.title
{
.approvalStatisticalDialog
.detail
{
width
:
340px
;
margin
:
0
30px
;
padding
:
25px
0
;
border-bottom
:
1px
solid
#E6E6E6
;
min-height
:
120px
;}
height
:
48px
;
.approvalStatisticalDialog
.audit
{
width
:
340px
;
margin
:
30px
30px
0
;
min-height
:
120px
;
border-bottom
:
1px
solid
#E6E6E6
;}
background
:
#EDEEF0
;
.approvalStatisticalDialog
.audit
.auditItem
{
min-height
:
80px
;
width
:
320px
;
margin-left
:
20px
;
border-left
:
1px
solid
#EDEDED
;
position
:
relative
;
font-size
:
14px
;}
line-height
:
48px
;
.approvalStatisticalDialog
.audit
.auditItem
:last-child
{
border-left
:
none
;}
font-size
:
16px
;
.approvalStatisticalDialog
.audit
.auditItem
>
p
{
line-height
:
40px
;
text-indent
:
40px
;}
color
:
#333
;
.approvalStatisticalDialog
.audit
.auditItem
>
img
{
width
:
40px
;
height
:
40px
;
border-radius
:
20px
;
position
:
absolute
;
left
:
-20px
;}
text-indent
:
30px
;
.approvalStatisticalDialog
.send
{
width
:
340px
;
margin
:
30px
30px
0
;
min-height
:
120px
;}
}
.approvalStatisticalDialog
.send
.sentTitle
{
height
:
14px
;
line-height
:
14px
;
text-indent
:
10px
;
border-left
:
3px
solid
#E95252
;
font-size
:
14px
;}
.approvalStatisticalDialog
.send
.sentTitle
span
{
color
:
#666
;
margin-left
:
20px
;}
.approvalStatisticalDialog
.user
{
.approvalStatisticalDialog
.send
.sendList
>
div
{
float
:
left
;
margin
:
10px
10px
0
0
;
font-size
:
12px
;
color
:
#666
;
width
:
40px
;
text-align
:
center
;}
width
:
340px
;
.approvalStatisticalDialog
.send
.sendList
>
div
>
img
{
width
:
40px
;
height
:
40px
;
border-radius
:
20px
;}
margin
:
0
30px
;
.approvalStatisticalDialog
.myApprovalTable
tr
{
height
:
40px
;
font-size
:
14px
;}
border-bottom
:
1px
solid
#E6E6E6
;
.approvalStatisticalDialog
.myApprovalTable
tr
td
:nth-child
(
1
)
{
text-align
:
right
;
color
:
#666
;
}
height
:
60px
;
</
style
>
padding
:
30px
0
;
\ No newline at end of file
box-sizing
:
content-box
}
.approvalStatisticalDialog
.user
>
p
{
line-height
:
28px
;
}
.approvalStatisticalDialog
.user
>
img
{
width
:
58px
;
height
:
58px
;
border-radius
:
29px
;
float
:
left
;
margin
:
0
12px
0
0
;
}
.approvalStatisticalDialog
.detail
{
width
:
340px
;
margin
:
0
30px
;
padding
:
25px
0
;
border-bottom
:
1px
solid
#E6E6E6
;
min-height
:
120px
;
}
.approvalStatisticalDialog
.audit
{
width
:
340px
;
margin
:
30px
30px
0
;
min-height
:
120px
;
border-bottom
:
1px
solid
#E6E6E6
;
}
.approvalStatisticalDialog
.audit
.auditItem
{
min-height
:
80px
;
width
:
320px
;
margin-left
:
20px
;
border-left
:
1px
solid
#EDEDED
;
position
:
relative
;
font-size
:
14px
;
}
.approvalStatisticalDialog
.audit
.auditItem
:last-child
{
border-left
:
none
;
}
.approvalStatisticalDialog
.audit
.auditItem
>
p
{
line-height
:
40px
;
text-indent
:
40px
;
}
.approvalStatisticalDialog
.audit
.auditItem
>
img
{
width
:
40px
;
height
:
40px
;
border-radius
:
20px
;
position
:
absolute
;
left
:
-20px
;
}
.approvalStatisticalDialog
.send
{
width
:
340px
;
margin
:
30px
30px
0
;
min-height
:
120px
;
}
.approvalStatisticalDialog
.send
.sentTitle
{
height
:
14px
;
line-height
:
14px
;
text-indent
:
10px
;
border-left
:
3px
solid
#E95252
;
font-size
:
14px
;
}
.approvalStatisticalDialog
.send
.sentTitle
span
{
color
:
#666
;
margin-left
:
20px
;
}
.approvalStatisticalDialog
.send
.sendList
>
div
{
float
:
left
;
margin
:
10px
10px
0
0
;
font-size
:
12px
;
color
:
#666
;
width
:
40px
;
text-align
:
center
;
}
.approvalStatisticalDialog
.send
.sendList
>
div
>
img
{
width
:
40px
;
height
:
40px
;
border-radius
:
20px
;
}
.approvalStatisticalDialog
.myApprovalTable
tr
{
height
:
40px
;
font-size
:
14px
;
}
.approvalStatisticalDialog
.myApprovalTable
tr
td
:nth-child
(
1
)
{
text-align
:
right
;
color
:
#666
;
}
</
style
>
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