Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gs1
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
吴迪
gs1
Commits
1be1155f
Commit
1be1155f
authored
Nov 30, 2021
by
Tang
Browse files
Options
Browse Files
Download
Plain Diff
feat: merge
parents
9c7bf7ec
1d7bdd35
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
148 additions
and
1676 deletions
+148
-1676
.env.development
.env.development
+3
-0
.env.production
.env.production
+4
-1
App.vue
src/App.vue
+10
-6
api.js
src/axios/api.js
+12
-5
fetch.js
src/axios/fetch.js
+3
-1
search.js
src/axios/module/search.js
+22
-0
constant.js
src/config/constant.js
+0
-1044
index.js
src/directives/index.js
+0
-41
index.js
src/filters/index.js
+0
-388
utils.js
src/utils/utils.js
+44
-44
index.vue
src/views/Home/index.vue
+2
-1
external.vue
src/views/Search/external.vue
+10
-11
gln.vue
src/views/Search/gln.vue
+38
-19
getters.js
src/vuex/user/getters.js
+0
-111
state.js
src/vuex/user/state.js
+0
-4
No files found.
.env.development
View file @
1be1155f
VUE_APP_CURRENTMODE = "development"
VUE_APP_CURRENTMODE = "development"
VUE_APP_HOST_URL = "http://81.68.189.225:9091"
VUE_APP_HOST_URL = "http://81.68.189.225:9091"
VUE_APP_API_URL = "/"
VUE_APP_GDS_URL = "/gds"
VUE_APP_LOG = true
VUE_APP_LOG = true
\ No newline at end of file
.env.production
View file @
1be1155f
VUE_APP_CURRENTMODE = "production"
VUE_APP_CURRENTMODE = "production"
VUE_APP_HOST_URL = "http://192.168.0.47:8090"
VUE_APP_HOST_URL = "http://81.68.189.225:9091"
VUE_APP_API_URL = "http://81.68.189.225:9091"
VUE_APP_GDS_URL = "http://data-studio.gds.org.cn"
VUE_APP_LOG = false
VUE_APP_LOG = false
\ No newline at end of file
src/App.vue
View file @
1be1155f
<
template
>
<
template
>
<div
id=
"app"
>
<div
id=
"app"
>
<router-view></router-view>
<router-view></router-view>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
created
()
{
console
.
log
(
process
.
env
,
'process.env'
);
},
};
</
script
>
</
script
>
<
style
>
<
style
>
.container-fluid
{
.container-fluid
{
padding
:
0
!important
;
padding
:
0
!important
;
}
}
</
style
>
</
style
>
src/axios/api.js
View file @
1be1155f
import
{
// import {
GET
// GET
}
from
"./fetch.js"
// } from "./fetch.js"
import
Vue
from
"vue"
;
import
VueResource
from
'vue-resource'
Vue
.
use
(
VueResource
);
const
Prefix
=
process
.
env
.
NODE_ENV
===
'development'
?
'/gs1'
:
''
;
const
Prefix
2
=
process
.
env
.
NODE_ENV
===
'development'
?
'/gs1'
:
process
.
env
.
VUE_APP_API_URL
;
/* 公共接口 */
/* 公共接口 */
// 首页大轮播图
// 首页大轮播图
const
getCaptcha
=
(
query
=
{})
=>
{
const
getCaptcha
=
(
query
=
{})
=>
{
return
GET
(
`
${
Prefix
}
/office/captcha.jpg`
,
query
)
return
Vue
.
http
.
get
(
`
${
Prefix2
}
/office/captcha.jpg?uuid=
${
query
.
uuid
}
`
,
{
responseType
:
"blob"
,
})
}
}
import
home
from
"./module/home.js"
import
home
from
"./module/home.js"
import
business
from
"./module/business.js"
import
business
from
"./module/business.js"
import
search
from
"./module/search.js"
const
api
=
{
const
api
=
{
home
,
home
,
business
,
business
,
search
,
getCaptcha
,
getCaptcha
,
}
}
...
...
src/axios/fetch.js
View file @
1be1155f
...
@@ -18,7 +18,9 @@ import {
...
@@ -18,7 +18,9 @@ import {
getToken
getToken
}
from
"@/utils/cookie.js"
}
from
"@/utils/cookie.js"
const
baseUrl
=
process
.
env
.
BASE_URL
const
baseUrl
=
process
.
env
.
VUE_APP_API_URL
;
console
.
log
(
process
.
env
,
baseUrl
,
'baseUrl'
);
function
fetch
(
options
)
{
function
fetch
(
options
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
const
instance
=
axios
.
create
({
const
instance
=
axios
.
create
({
...
...
src/axios/module/search.js
0 → 100644
View file @
1be1155f
import
{
POST
}
from
"../fetch.js"
const
Prefix
=
process
.
env
.
NODE_ENV
===
'development'
?
'/gs1'
:
''
;
// 条码查询—GLN查询/境外码查询
const
searchGln
=
(
params
=
{})
=>
{
return
POST
(
`
${
Prefix
}
/office/codeSearch/api/gln`
,
params
)
}
// 条码查询—缩短码查询
const
searchGetList
=
(
params
=
{})
=>
{
return
POST
(
`
${
Prefix
}
/office/shortcode/api/getList`
,
params
)
}
export
default
{
searchGln
,
searchGetList
,
}
src/config/constant.js
View file @
1be1155f
...
@@ -3,1046 +3,3 @@ export const QUERY_PAGE_SIZE = 10
...
@@ -3,1046 +3,3 @@ export const QUERY_PAGE_SIZE = 10
export
const
QUERY_PAGE_SIZE_10
=
10
export
const
QUERY_PAGE_SIZE_10
=
10
export
const
QUERY_PAGE_SIZE_20
=
20
export
const
QUERY_PAGE_SIZE_20
=
20
export
const
QUERY_PAGE_SIZE_All
=
999999
export
const
QUERY_PAGE_SIZE_All
=
999999
// 二维码状态
export
const
QrCodeStatus
=
{
// 就位
ready
:
0
,
// 已扫描
scanned
:
1
,
// 已同意
agreed
:
2
,
// 已取消
cancelled
:
3
,
// 过期
outdated
:
4
,
}
// 家庭成员角色
export
const
FamilyRoleType
=
{
// 物权所有者
owner
:
0
,
// 家庭成员
member
:
1
}
// 小区管理角色
export
const
BlockRoleType
=
{
// 普通业主
simple
:
0
,
// 综治局 超级管理员
admin
:
1
,
// 物业人员
servant
:
2
,
// 会计
accountant
:
3
,
// 业委会委员
comMember
:
4
,
// 临管人员
temporal
:
5
,
// 社区
community
:
6
,
// 物管办
management
:
7
,
// 网格员
gridManager
:
8
,
}
export
const
BlockRoleSortIndex
=
(
type
)
=>
{
if
(
type
===
BlockRoleType
.
admin
)
{
return
1
}
else
if
(
type
===
BlockRoleType
.
comMember
)
{
return
2
}
else
if
(
type
===
BlockRoleType
.
accountant
)
{
return
3
}
else
if
(
type
===
BlockRoleType
.
servant
)
{
return
4
}
else
if
(
type
===
BlockRoleType
.
temporal
)
{
return
5
}
else
if
(
type
===
BlockRoleType
.
community
)
{
return
6
}
else
if
(
type
===
BlockRoleType
.
management
)
{
return
7
}
else
if
(
type
===
BlockRoleType
.
gridManager
)
{
return
8
}
return
9
}
export
const
BlockRoleNameFromType
=
(
type
)
=>
{
if
(
type
===
BlockRoleType
.
admin
)
{
return
"综治局管理员"
}
else
if
(
type
===
BlockRoleType
.
servant
)
{
return
"物业人员"
}
else
if
(
type
===
BlockRoleType
.
accountant
)
{
return
"代账会计"
}
else
if
(
type
===
BlockRoleType
.
comMember
)
{
return
"业委会委员"
}
else
if
(
type
===
BlockRoleType
.
simple
)
{
return
"普通用户"
}
else
if
(
type
===
BlockRoleType
.
temporal
)
{
return
"临管人员"
}
else
if
(
type
===
BlockRoleType
.
community
)
{
return
"社区人员"
}
else
if
(
type
===
BlockRoleType
.
management
)
{
return
"物管办"
}
else
if
(
type
===
BlockRoleType
.
gridManager
)
{
return
"网格员"
}
return
"普通用户"
}
export
const
GetBlockRoleTypeFromString
=
(
roleStr
)
=>
{
if
(
roleStr
===
'admin'
)
{
return
BlockRoleType
.
admin
}
else
if
(
roleStr
===
'servant'
)
{
return
BlockRoleType
.
servant
}
else
if
(
roleStr
===
'accountant'
)
{
return
BlockRoleType
.
accountant
}
else
if
(
roleStr
===
'comMember'
)
{
return
BlockRoleType
.
comMember
}
else
if
(
roleStr
===
'temporal'
)
{
return
BlockRoleType
.
temporal
}
else
if
(
roleStr
===
'community'
)
{
return
BlockRoleType
.
community
}
else
if
(
roleStr
===
'management'
)
{
return
BlockRoleType
.
management
}
else
if
(
roleStr
===
'gridManager'
)
{
return
BlockRoleType
.
gridManager
}
return
BlockRoleType
.
simple
}
// 账户类型
export
const
AccountType
=
{
// 公共收益账户
normal
:
0
,
// 维修基金账户
repair
:
1
}
// 账户资金流向类型
export
const
AccountDirectionType
=
{
// 收入
income
:
0
,
// 支出
outcome
:
1
}
export
const
MatterType
=
{
// 全部
all
:
'0'
,
// 公函
letter
:
'1'
,
// 业主大会
vote
:
'2'
,
// 业主大会-表决结果
voteResult
:
'3'
,
// 公示
publicity
:
'4'
,
// 公告
announcement
:
'5'
,
// 会议纪要
minutes
:
'6'
,
// 整改单
rectification
:
'7'
}
export
const
GetMatterTypeString
=
(
type
)
=>
{
const
matterType
=
String
(
type
)
if
(
matterType
===
MatterType
.
letter
)
{
return
"公函"
}
else
if
(
matterType
===
MatterType
.
vote
)
{
return
"业主大会"
}
else
if
(
matterType
===
MatterType
.
voteResult
)
{
return
"业主大会-表决结果"
}
else
if
(
matterType
===
MatterType
.
publicity
)
{
return
"公示"
}
else
if
(
matterType
===
MatterType
.
announcement
)
{
return
"公告"
}
else
if
(
matterType
===
MatterType
.
minutes
)
{
return
"会议纪要"
}
else
if
(
matterType
===
MatterType
.
rectification
)
{
return
"整改单"
}
return
""
;
}
export
const
GetMatterTypeColor
=
(
type
)
=>
{
const
matterType
=
String
(
type
)
if
(
matterType
===
MatterType
.
letter
)
{
return
"#7275EF"
}
else
if
(
matterType
===
MatterType
.
vote
)
{
return
"#EF7272"
}
else
if
(
matterType
===
MatterType
.
voteResult
)
{
return
"#C16859"
}
else
if
(
matterType
===
MatterType
.
publicity
)
{
return
"#D1AAF5"
}
else
if
(
matterType
===
MatterType
.
announcement
)
{
return
"#58ACAB"
}
else
if
(
matterType
===
MatterType
.
minutes
)
{
return
"#6B6A6A"
}
else
if
(
matterType
===
MatterType
.
rectification
)
{
return
"#FFB73F"
}
return
"#6B6A6A"
;
}
export
const
MatterStatusOwnerCode
=
{
// 拒绝公示
refuse
:
-
1
,
// 业委会投票未开始
ownerUnStart
:
0
,
// 业委会投票进行中
ownerInProgress
:
1
,
// 居民投票未开始
memberUnStart
:
2
,
// 居民投票进行中
memberInProgress
:
3
,
// 社区审核中
communityInProgress
:
4
,
// 物管会审核中
managementInProgress
:
5
,
// 物管办驳回
managementRefuse
:
97
,
// 社区驳回
communityRefuse
:
98
,
// 事项结束
end
:
99
}
/**
* 业委会状态
*/
export
const
PHASE_STATUS
=
{
OneStage
:
1
,
TwoStage
:
2
,
ThreeStage
:
3
,
FiveStage
:
5
,
SixStage
:
6
,
SevenStage
:
7
,
EngitStage
:
8
,
}
/**
* 一阶段状态
*/
export
const
ONE_STAGE_STATUS
=
{
init
:
{
num
:
0
,
title
:
'待申请'
},
submitted
:
{
num
:
1
,
title
:
'申请待审核'
},
naming
:
{
num
:
2
,
title
:
'联名中'
},
namingEnd
:
{
num
:
3
,
title
:
'联名已结束待审核'
},
approved
:
{
num
:
4
,
title
:
'联名申请已通过'
},
rejected
:
{
num
:
9
,
title
:
'驳回'
},
rejectedSubmit
:
{
num
:
99
,
title
:
'申请事项终止'
},
rejectedNaming
:
{
num
:
98
,
title
:
'联名事项终止'
}
}
/**
* 二阶段状态
*/
export
const
TWO_STAGE_STATUS
=
{
init
:
{
num
:
0
,
title
:
'待起草'
},
checkingDraft
:
{
num
:
1
,
title
:
'待检查'
},
fixing
:
{
num
:
2
,
title
:
'检查未过,待修改'
},
checkingFix
:
{
num
:
3
,
title
:
'待检查'
},
renName
:
{
num
:
4
,
title
:
'待报名开始'
},
renPending
:
{
num
:
14
,
title
:
'待报名结束'
},
renEnd
:
{
num
:
15
,
title
:
'报名结束'
},
approvingReg
:
{
num
:
5
,
title
:
'报名已结束'
},
naming
:
{
num
:
6
,
title
:
'待联名结束'
},
namingEnd
:
{
num
:
17
,
title
:
'联名已结束'
},
approvingNaming
:
{
num
:
7
,
title
:
'联名已结束待审核'
},
pubCandidatesNotice
:
{
num
:
8
,
title
:
'待公示'
},
fixingCandidatesNotice
:
{
num
:
9
,
title
:
'检查未过,待修改'
},
approvingCandidates
:
{
num
:
10
,
title
:
'待检查'
},
wait
:
{
num
:
11
,
title
:
'筹备组候选人已公示'
},
next
:
{
num
:
12
,
title
:
'筹备组候选人已确定'
},
regNotEnough
:
{
num
:
96
,
title
:
'报名数量不足结束流程'
},
regApproveNotEnough
:
{
num
:
97
,
title
:
'报名审核数量不足结束流程'
},
namingNotEnough
:
{
num
:
98
,
title
:
'联名数量不足结束流程'
},
namingApproveNotEnough
:
{
num
:
90
,
title
:
'联名审核数量不足结束流程'
},
reject
:
{
num
:
99
,
title
:
'公示期内终止'
}
}
export
const
TWO_STAGE_APPLICANT_STATUS
=
{
init
:
{
num
:
0
,
title
:
'保存未提交'
},
reg
:
{
num
:
1
,
title
:
'提交报名待审核'
},
regApproved
:
{
num
:
2
,
title
:
'报名审核通过'
},
naming
:
{
num
:
3
,
title
:
'联名待审核'
},
candidate
:
{
num
:
4
,
title
:
'联名审核通过'
},
member
:
{
num
:
5
,
title
:
'被选举成为筹备组成员'
},
memberQuit
:
{
num
:
51
,
title
:
'退出筹备组成员'
},
namingNotEnough
:
{
num
:
97
,
title
:
'联名人数不足'
},
namingReject
:
{
num
:
98
,
title
:
'联名审核不通过'
},
regReject
:
{
num
:
99
,
title
:
'报名审核未通过'
}
}
/**
* 三阶段状态
*/
export
const
THREE_STAGE_STATUS
=
{
init
:
{
num
:
0
,
title
:
'待起草'
},
submitted
:
{
num
:
1
,
title
:
'待检查'
},
fixing
:
{
num
:
2
,
title
:
'检查未过,待修改'
},
approveElectNotice
:
{
num
:
3
,
title
:
'待检查'
},
electoStart
:
{
num
:
41
,
title
:
'成员互选中'
},
electoRetry
:
{
num
:
42
,
title
:
'成员互选中'
},
electoEnd
:
{
num
:
43
,
title
:
'互选结果待确认'
},
electVice
:
{
num
:
5
,
title
:
'副组长选举中'
},
electViceRetry
:
{
num
:
51
,
title
:
'副组长选举中'
},
electViceApprove
:
{
num
:
52
,
title
:
'选举结果待确认'
},
notice
:
{
num
:
6
,
title
:
'待公示'
},
noticeFixing
:
{
num
:
61
,
title
:
'检查未过,待修改'
},
approveListNotice
:
{
num
:
7
,
title
:
'待检查'
},
wait
:
{
num
:
70
,
title
:
'筹备组成员已公示'
},
next
:
{
num
:
8
,
title
:
'筹备组成员已确定'
},
rejected
:
{
num
:
99
,
title
:
'公示期内终止'
}
}
/**
* 四阶段状态
*/
export
const
FOUR_STAGE_STATUS
=
{
draft
:
{
num
:
10
,
title
:
'待起草'
},
nego
:
{
num
:
11
,
title
:
'商议中'
},
fix
:
{
num
:
12
,
title
:
'异议待修正'
},
approve
:
{
num
:
13
,
title
:
'商议完成待检查'
},
notice
:
{
num
:
14
,
title
:
'待公示'
},
noticeFix
:
{
num
:
15
,
title
:
'检查未过,待修改'
},
noticeApprove
:
{
num
:
16
,
title
:
'待检查'
},
noticePass
:
{
num
:
17
,
title
:
'已公示'
},
next
:
{
num
:
88
,
title
:
'已公示'
}
}
/**
* 五阶段状态
*/
export
const
FIVE_STAGE_STATUS
=
{
// init: {
// num: 0,
// title: '待起草'
// },
checkingDraft
:
{
num
:
1
,
title
:
'待检查'
},
fixing
:
{
num
:
2
,
title
:
'检查未过,待修改'
},
checkingFix
:
{
num
:
3
,
title
:
'待检查'
},
renName
:
{
num
:
4
,
title
:
'待报名开始'
},
renPending
:
{
num
:
14
,
title
:
'待报名结束'
},
renEnd
:
{
num
:
15
,
title
:
'报名已结束'
},
approvingReg
:
{
num
:
5
,
title
:
'报名结束待审核'
},
naming
:
{
num
:
6
,
title
:
'联名中'
},
namingEnd
:
{
num
:
17
,
title
:
'联名已结束'
},
approvingNaming
:
{
num
:
7
,
title
:
'联名结束待审核'
},
pubCandidatesNotice
:
{
num
:
8
,
title
:
'待公示'
},
fixingCandidatesNotice
:
{
num
:
9
,
title
:
'检查未过,待修改'
},
approvingCandidates
:
{
num
:
10
,
title
:
'待检查'
},
wait
:
{
num
:
11
,
title
:
'业委会参选人已公示'
},
next
:
{
num
:
12
,
title
:
'业委会参选人已确定'
},
NamingNotEnough
:
{
num
:
90
,
title
:
'联名审核数量不足结束流程'
},
regNotEnough
:
{
num
:
96
,
title
:
'报名数量不足结束流程'
},
regApproveNotEnough
:
{
num
:
97
,
title
:
'报名审核数量不足结束流程'
},
namingNotEnough
:
{
num
:
98
,
title
:
'联名数量不足结束流程'
},
reject
:
{
num
:
99
,
title
:
'公示期内终止'
},
unknown
:
{
num
:
-
1
,
title
:
'未知'
}
}
/**
* 六阶段状态
*/
export
const
SIX_STAGE_STATUS
=
{
init
:
{
num
:
0
,
title
:
'待起草'
},
submitted
:
{
num
:
1
,
title
:
'待检查'
},
fixing
:
{
num
:
2
,
title
:
'检查未过,待修改'
},
approveFixng
:
{
num
:
3
,
title
:
'待检查'
},
electStapt
:
{
num
:
4
,
title
:
'推选中'
},
electRetry
:
{
num
:
41
,
title
:
'推选中'
},
electEnd
:
{
num
:
5
,
title
:
'报名已结束'
},
approvingReg
:
{
num
:
5
,
title
:
'推选结束'
},
listNotice
:
{
num
:
6
,
title
:
'推选完成'
},
listNoticeFixing
:
{
num
:
61
,
title
:
'推选完成'
},
approveListNotice
:
{
num
:
7
,
title
:
'推选完成'
},
wait
:
{
num
:
70
,
title
:
'业委会候选人已公示'
},
next
:
{
num
:
8
,
title
:
'业委会候选人已确定'
},
rejected
:
{
num
:
99
,
title
:
'公示期内终止'
}
}
/**
* 七阶段状态
*/
export
const
SEVEN_STAGE_STATUS
=
{
init
:
{
num
:
0
,
title
:
'待起草'
},
noticeSubmitted
:
{
num
:
1
,
title
:
'待检查'
},
noticeToModify
:
{
num
:
2
,
title
:
'检查未过,待修改'
},
noticePass
:
{
num
:
3
,
title
:
'待投票开始'
},
voting
:
{
num
:
4
,
title
:
'待投票结束'
},
voted
:
{
num
:
5
,
title
:
'投票结束'
},
votedResultAnnounceApprovalPending
:
{
num
:
6
,
title
:
'投票结束'
},
votedResultAnnounceToModify
:
{
num
:
7
,
title
:
'投票结束'
},
votedResultDismissedDuring
:
{
num
:
8
,
title
:
'业委会成员已公示'
},
success
:
{
num
:
9
,
title
:
'业委会成员已确定'
},
fail
:
{
num
:
99
,
title
:
'公示期内终止'
},
notMoreThanHalfFail
:
{
num
:
91
,
title
:
'事项终止'
}
}
/**
* 政治面貌
*/
export
const
RENOVATION_NAME
=
{
COMMUNIST
:
'中共党员'
,
COMMUNIST_PRE
:
'中共预备党员'
,
LEAGUE
:
'共青团员'
,
NONPARTY
:
'无党派人士'
,
MASS
:
'群众'
}
export
const
FIVE_STAGE_APPLICANT_STATUS
=
{
init
:
{
num
:
0
,
title
:
'保存未提交'
},
reg
:
{
num
:
1
,
title
:
'提交报名待审核'
},
regApproved
:
{
num
:
2
,
title
:
'报名审核通过'
},
naming
:
{
num
:
3
,
title
:
'联名待审核'
},
candidate
:
{
num
:
4
,
title
:
'联名审核通过'
},
member
:
{
num
:
5
,
title
:
'被选举成为业委会成员'
},
memberQuit
:
{
num
:
41
,
title
:
'成为候选人'
},
namingNotEnough
:
{
num
:
97
,
title
:
'联名人数不足'
},
namingReject
:
{
num
:
98
,
title
:
'联名审核不通过'
},
regReject
:
{
num
:
99
,
title
:
'报名审核未通过'
}
}
/**
* 顶部路由按钮
*/
export
const
ROUTER_LINK_CODE_NAME
=
[
{
code
:
'TP02'
,
name
:
'发布筹备组候选人报名通知'
,
url
:
'/cmtmgmt/twoStageRegistrationNotice'
},
{
code
:
'TP03'
,
name
:
'发起筹备组选举'
,
url
:
'/cmtmgmt/threeStageElectNotice'
},
{
code
:
'TP05'
,
name
:
'发布业侯报名通知'
,
url
:
'/cmtmgmt/fiveStageRegistrationNotice'
},
{
code
:
'TP06'
,
name
:
'发起选举通知'
,
url
:
'/cmtmgmt/launchOwnerVote'
},
{
code
:
'TP07'
,
name
:
'发起业主大会'
,
url
:
'/cmtmgmt/launchOwnerVote'
},
{
code
:
'TP08'
,
name
:
'发起业委会主任选举'
,
url
:
'/cmtmgmt/threeStageBrightCode'
}
]
/**
* 操作按钮
*/
export
const
OPERATE_CODE_NAME
=
{
A01
:
'审批申请书'
,
A02
:
'审批联名人'
,
B01
:
'编辑通知'
,
B02
:
'检查通知'
,
B03
:
'修改通知'
,
B05
:
'审批报名表'
,
B06
:
'审批联名表'
,
B07
:
'公示'
,
B08
:
'检查公示'
,
B09
:
'修改公示'
,
B10
:
'终止'
,
C01
:
'编辑筹备组选举通知'
,
C02
:
'检查通知'
,
C03
:
'修正通知'
,
C04
:
'亮码'
,
C05
:
'确认成员选举结果'
,
C06
:
'确认副组长选举结果'
,
C07
:
'公示选举结果'
,
C08
:
'检查公示'
,
C09
:
'修改公示'
,
C10
:
'终止'
,
C11
:
'亮码'
,
// 《业委会选举办法》文件
D11
:
'检查'
,
D12
:
'公示'
,
D13
:
'修改公示'
,
D14
:
'检查公示'
,
// 《管理规约》文件
D21
:
'检查'
,
D22
:
'公示'
,
D23
:
'修改公示'
,
D24
:
'检查公示'
,
// 《议事规则》文件
D31
:
'检查'
,
D32
:
'公示'
,
D33
:
'修改公示'
,
D34
:
'检查公示'
,
// 《业主大会召开方案》文件
D41
:
'检查'
,
D42
:
'公示'
,
D43
:
'修改公示'
,
D44
:
'检查公示'
,
// 《业主大会费用预算》文件
D51
:
'检查'
,
D52
:
'公示'
,
D53
:
'修改公示'
,
D54
:
'检查公示'
,
// 《业主票权》文件
D61
:
'检查'
,
D62
:
'公示'
,
D63
:
'修正'
,
D64
:
'检查'
,
E01
:
'编辑'
,
E02
:
'修改'
,
E03
:
'检查'
,
E04
:
'审批'
,
E05
:
'审批'
,
E06
:
'公示'
,
E07
:
'修改'
,
E08
:
'检查'
,
E09
:
'终止'
,
// 第六阶段
F01
:
'编辑'
,
F02
:
'修改'
,
F03
:
'检查'
,
F04
:
'亮码'
,
F05
:
'确认'
,
F06
:
'公示'
,
F07
:
'修改'
,
F08
:
'检查'
,
F09
:
'终止'
,
// 第七阶段
G01
:
'检查'
,
G02
:
'修改'
,
G03
:
'公示'
,
G04
:
'检查'
,
G05
:
'修改'
,
G06
:
'终止'
,
// 第八阶段
H01
:
'确认'
,
H02
:
'公示'
,
H03
:
'检查'
,
H04
:
'修改'
,
H05
:
'亮码'
,
}
/**
* 资料名称
*/
export
const
MATERIAL_CODE_NAME
=
{
AF01
:
'申请书'
,
AF02
:
'联名书'
,
BF01
:
'通知'
,
BF02
:
'报名表'
,
BF03
:
'联名表'
,
BF04
:
'公示名单'
,
CF01
:
'选举通知'
,
CF02
:
'成员选举结果'
,
CF03
:
'副组长选举结果'
,
CF04
:
'选举结果公示'
,
// 阶段四
DF01
:
'历史编撰记录'
,
DF02
:
'历史编撰记录'
,
DF03
:
'历史编撰记录'
,
DF04
:
'历史编撰记录'
,
DF05
:
'历史编撰记录'
,
DF06
:
'历史编撰记录'
,
DF11
:
'《业委会选举办法》文件公示'
,
DF12
:
'《管理规约》文件公示'
,
DF13
:
'《议事规则》文件公示'
,
DF14
:
'《业主大会召开方案》文件公示'
,
DF15
:
'《业主大会费用预算》文件公示'
,
DF16
:
'《业主票权》文件公示'
,
// 阶段五
EF01
:
'通知'
,
EF02
:
'报名表'
,
EF03
:
'联名表'
,
EF04
:
'公示'
,
// 阶段六
FF01
:
'通知'
,
FF02
:
'推选结果表'
,
FF03
:
'公示'
,
// 阶段七
GF01
:
'通知'
,
GF02
:
'投票结果表'
,
GF03
:
'公示'
,
// 阶段八
HF01
:
'推选结果表'
,
HF02
:
'公示'
}
export
const
COMMITTEE_TITLE
=
[
{
name
:
"业委会候选人报名通知"
,
code
:
5
},
{
name
:
'业委会参选人名单公示'
,
code
:
51
,
},
{
name
:
"业委会参选人名单公示审批"
,
code
:
52
},
{
name
:
"业委会候选人推选通知"
,
code
:
6
,
},
{
name
:
"业委会候选人名单公示"
,
code
:
61
},
{
name
:
"业委会候选人名单公示审批"
,
code
:
62
}
]
export
const
DETAILS_TITLE
=
[
{
name
:
"业委会候选人推选通知"
,
code
:
'F03'
},
{
name
:
'业委会候选人推选选举结果'
,
code
:
'F05'
,
},
{
name
:
"业委会候选人名单公示"
,
code
:
'F06'
},
{
name
:
"业委会候选人名单公示"
,
code
:
'F08'
,
type
:
true
},
{
name
:
"业委会候选人名单公示"
,
code
:
'F09'
,
type
:
true
},
{
name
:
"业委会候选人名单公示"
,
code
:
'FF03'
,
type
:
true
},
{
name
:
"业委会选举表决单"
,
code
:
'G01'
},
{
name
:
'业委会选举表决结果的公示'
,
code
:
'G03'
,
type
:
true
},
{
name
:
"业委会委员选举公示"
,
code
:
'G04'
,
type
:
true
},
{
name
:
"业委会委员选举公示"
,
code
:
'G06'
,
type
:
true
},
{
name
:
"业委会选举结果公示"
,
code
:
'GF03'
,
type
:
true
},
{
name
:
"业委会主任选举结果"
,
code
:
'H01'
,
},
{
name
:
"业委会主任选举结果"
,
code
:
'H01'
,
},
{
name
:
'业委会主任推选结果公示'
,
code
:
'H02'
,
type
:
true
},
{
name
:
"业委会主任选举结果公示"
,
code
:
'H03'
,
type
:
true
},
{
name
:
"业委会主任选举结果公示"
,
code
:
'HF02'
,
type
:
true
},
]
\ No newline at end of file
src/directives/index.js
View file @
1be1155f
import
Vue
from
"vue"
import
Vue
from
"vue"
import
{
BlockRoleType
}
from
"@/config/constant"
import
store
from
"@/vuex/store"
;
Vue
.
directive
(
"preventReClick"
,{
Vue
.
directive
(
"preventReClick"
,{
inserted
(
el
,
binding
){
inserted
(
el
,
binding
){
...
@@ -15,43 +11,6 @@ Vue.directive("preventReClick",{
...
@@ -15,43 +11,6 @@ Vue.directive("preventReClick",{
}
}
})
})
Vue
.
directive
(
"permission"
,
{
bind
(
el
,
{
value
})
{
let
isHas
=
false
const
roleId
=
store
.
getters
[
"user/userRole"
];
// 设置业委会委员、会计、物业 需要管理员权限
if
(
value
===
'block_set_comMember'
||
value
===
'block_set_accountant'
||
value
===
'block_set_servant'
)
{
isHas
=
roleId
===
BlockRoleType
.
admin
}
// 会计有添加账号权限
if
(
value
===
'account_add_balance'
)
{
isHas
=
roleId
===
BlockRoleType
.
accountant
}
// 事项
if
(
value
===
'matter_create_rectification'
||
value
===
'matter_create_letter'
)
{
isHas
=
roleId
===
BlockRoleType
.
comMember
}
if
(
value
===
'matter_create'
||
value
===
'matter_create_vote'
||
value
===
'matter_create_vote-result'
||
value
===
'matter_create_announce'
)
{
isHas
=
roleId
===
BlockRoleType
.
comMember
||
roleId
===
BlockRoleType
.
temporal
}
setTimeout
(()
=>
{
if
(
!
isHas
)
{
try
{
el
.
parentNode
.
removeChild
(
el
)
}
catch
(
err
)
{
// console.log(err)
}
}
},
200
)
}
})
src/filters/index.js
View file @
1be1155f
...
@@ -5,7 +5,6 @@ import {
...
@@ -5,7 +5,6 @@ import {
ceil
ceil
}
from
"@/utils/createRound.js"
}
from
"@/utils/createRound.js"
import
*
as
Config
from
"@/config/constant"
// 格式化时间 yyyy-MM-dd HH:mm:ss
// 格式化时间 yyyy-MM-dd HH:mm:ss
const
timeFormat
=
(
value
,
fmt
=
"yyyy-MM-dd HH:mm:ss"
,
defValue
=
"- -"
)
=>
{
const
timeFormat
=
(
value
,
fmt
=
"yyyy-MM-dd HH:mm:ss"
,
defValue
=
"- -"
)
=>
{
...
@@ -85,396 +84,9 @@ const percentageFormat = (value, digits = 2, method = "round", defReturn = '- -'
...
@@ -85,396 +84,9 @@ const percentageFormat = (value, digits = 2, method = "round", defReturn = '- -'
return
defReturn
return
defReturn
}
}
// 小区管理人员
const
blockManagersFormat
=
(
roleData
,
type
,
defReturn
=
"- -"
)
=>
{
const
roleType
=
Config
.
GetBlockRoleTypeFromString
(
type
)
if
(
roleData
)
{
const
list
=
roleData
[
roleType
]
if
(
list
&&
Array
.
isArray
(
list
))
{
return
list
.
map
(
item
=>
{
return
item
.
realName
})
.
filter
((
item
,
index
,
arr
)
=>
{
return
!!
item
&&
arr
.
indexOf
(
item
,
0
)
===
index
}).
join
(
'、'
)
||
defReturn
}
}
return
defReturn
}
// 事项类型
const
matterTypeFormat
=
(
type
,
defReturn
=
"- -"
)
=>
{
return
Config
.
GetMatterTypeString
(
type
)
||
defReturn
}
const
matterStatusFormat
=
(
data
,
isCurrentBlockOnlyTemporal
)
=>
{
function
timeFormat
(
param
)
{
return
param
<
10
?
'0'
+
param
:
param
}
function
timeoutCountdown
(
endTime
)
{
const
now
=
new
Date
().
getTime
()
if
(
now
>
endTime
)
{
return
""
}
let
time
=
(
endTime
-
now
)
/
1000
let
day
=
parseInt
(
time
/
(
60
*
60
*
24
));
let
hou
=
parseInt
((
time
%
(
60
*
60
*
24
))
/
3600
);
let
min
=
parseInt
(((
time
%
(
60
*
60
*
24
))
%
3600
)
/
60
);
let
sec
=
parseInt
(((
time
%
(
60
*
60
*
24
))
%
3600
)
%
60
);
// let retTime = ""
// if (day > 0) {
// retTime += `${day}天`
// }
// if (hou > 0 || !!retTime){
// retTime += `${timeFormat(hou)}时`;
// }
// if (min > 0 || !!retTime) {
// retTime += `${timeFormat(min)}分`
// }
// retTime += `${timeFormat(sec)}秒`
// return retTime
if
(
day
>
0
)
{
return
`
${
day
}
天
${
timeFormat
(
hou
)}
时`
;
}
else
if
(
hou
>
0
)
{
return
`
${
timeFormat
(
hou
)}
时
${
timeFormat
(
min
)}
分`
;
}
else
{
return
`
${
timeFormat
(
min
)}
分
${
timeFormat
(
sec
)}
秒`
;
}
}
const
{
status
,
matterType
,
ownerStartTime
,
ownerEndTime
,
memberStartTime
,
memberEndTime
}
=
data
||
{}
const
defReturn
=
"- -"
if
(
status
!=
null
)
{
const
myStatus
=
Number
(
status
)
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
ownerUnStart
)
{
const
str
=
timeoutCountdown
(
ownerStartTime
)
return
str
?
str
+
(
isCurrentBlockOnlyTemporal
?
"后临管确认开始"
:
"后业委会投票开始"
)
:
defReturn
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
ownerInProgress
)
{
const
str
=
timeoutCountdown
(
ownerEndTime
)
return
str
?
str
+
(
isCurrentBlockOnlyTemporal
?
"后临管确认结束"
:
"后业委会投票结束"
)
:
defReturn
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
memberUnStart
)
{
const
str
=
timeoutCountdown
(
memberStartTime
)
return
str
?
str
+
"后居民投票开始"
:
defReturn
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
memberInProgress
)
{
const
str
=
timeoutCountdown
(
memberEndTime
)
return
str
?
str
+
"后居民投票结束"
:
defReturn
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
communityInProgress
)
{
return
"社区待审"
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
managementInProgress
)
{
return
"物管办待审"
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
communityRefuse
)
{
return
"未通过,事项终止"
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
managementRefuse
)
{
return
"未通过,事项终止"
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
refuse
)
{
return
"未通过,事项终止"
}
else
if
(
myStatus
===
Config
.
MatterStatusOwnerCode
.
end
)
{
const
myMatterType
=
String
(
matterType
)
if
(
myMatterType
===
Config
.
MatterType
.
vote
)
{
return
"投票已结束"
}
else
if
(
myMatterType
===
Config
.
MatterType
.
letter
)
{
const
{
isLetters
=
false
}
=
data
||
{}
return
isLetters
?
"已回函"
:
"待回函"
}
else
if
(
myMatterType
===
Config
.
MatterType
.
rectification
)
{
const
{
isAccept
=
false
}
=
data
||
{}
return
isAccept
?
"物业已接收"
:
"物业待接收"
}
return
"已发布"
}
}
return
defReturn
}
const
matterVoteResultOptionIndexFommat
=
(
index
)
=>
{
const
indexList
=
[
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
"I"
,
'J'
,
'K'
,
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
]
if
(
index
<
0
||
index
>
25
)
{
index
=
0
}
return
indexList
[
index
]
}
const
cmtmgmtStatusFormat
=
(
data
)
=>
{
function
timeFormat
(
param
)
{
return
param
<
10
?
'0'
+
param
:
param
}
function
timeoutCountdown
(
endTime
)
{
const
now
=
new
Date
().
getTime
()
if
(
now
>
endTime
)
{
return
""
}
let
time
=
(
endTime
-
now
)
/
1000
let
day
=
parseInt
(
time
/
(
60
*
60
*
24
));
let
hou
=
parseInt
((
time
%
(
60
*
60
*
24
))
/
3600
);
let
min
=
parseInt
(((
time
%
(
60
*
60
*
24
))
%
3600
)
/
60
);
let
sec
=
parseInt
(((
time
%
(
60
*
60
*
24
))
%
3600
)
%
60
);
if
(
day
>
0
)
{
return
`
${
day
}
天
${
timeFormat
(
hou
)}
时`
;
}
else
if
(
hou
>
0
)
{
return
`
${
timeFormat
(
hou
)}
时
${
timeFormat
(
min
)}
分`
;
}
else
{
return
`
${
timeFormat
(
min
)}
分
${
timeFormat
(
sec
)}
秒`
;
}
}
const
{
phase
,
status
,
statusDesc
,
timerEndTime
}
=
data
||
{}
const
defReturn
=
"- -"
if
(
status
!=
null
)
{
const
myStatus
=
Number
(
status
)
if
(
phase
==
Config
.
PHASE_STATUS
.
TwoStage
)
{
if
(
myStatus
===
Config
.
TWO_STAGE_STATUS
.
naming
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后联名结束'
:
defReturn
}
else
if
(
myStatus
===
Config
.
TWO_STAGE_STATUS
.
renPending
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后报名结束'
:
defReturn
}
else
if
(
myStatus
===
Config
.
TWO_STAGE_STATUS
.
renName
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后报名开始'
:
defReturn
}
else
{
return
statusDesc
}
}
else
if
(
phase
==
Config
.
PHASE_STATUS
.
FiveStage
){
if
(
myStatus
===
Config
.
FIVE_STAGE_STATUS
.
naming
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后联名结束'
:
defReturn
}
else
if
(
myStatus
===
Config
.
FIVE_STAGE_STATUS
.
renPending
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后报名结束'
:
defReturn
}
else
if
(
myStatus
===
Config
.
FIVE_STAGE_STATUS
.
renName
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后报名开始'
:
defReturn
}
else
{
return
statusDesc
}
}
else
if
(
phase
==
Config
.
PHASE_STATUS
.
SevenStage
){
if
(
myStatus
===
Config
.
SEVEN_STAGE_STATUS
.
voting
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后投票结束'
:
defReturn
}
else
if
(
myStatus
===
Config
.
SEVEN_STAGE_STATUS
.
noticePass
.
num
)
{
const
str
=
timeoutCountdown
(
timerEndTime
)
return
str
?
str
+
'后投票开始'
:
defReturn
}
else
{
return
statusDesc
}
}
else
{
return
statusDesc
}
}
return
defReturn
}
const
title
=
(
value
)
=>
{
switch
(
value
)
{
case
'D11'
:
return
'业委会选举办法草案'
case
'DF01'
:
return
'业委会选举办法草案'
case
'D12'
:
return
'业委会选举办法公示'
case
'D13'
:
return
'业委会选举办法公示'
case
'DF11'
:
return
'业委会选举办法公示'
case
'D14'
:
return
'业委会选举办法的公示'
case
'D21'
:
return
'管理规约草案'
case
'DF02'
:
return
'管理规约草案'
case
'D22'
:
return
'管理规约公示'
case
'D23'
:
return
'管理规约公示'
case
'D24'
:
return
'管理规约的公示'
case
'DF12'
:
return
'管理规约编制'
case
'D31'
:
return
'议事规则草案'
case
'DF03'
:
return
'议事规则草案'
case
'D32'
:
return
'议事规则公示'
case
'D33'
:
return
'议事规则公示'
case
'D34'
:
return
'议事规则的公示'
case
'DF13'
:
return
'议事规则编制'
case
'D41'
:
return
'业主大会召开方案草案'
case
'DF04'
:
return
'业主大会召开方案草案'
case
'D42'
:
return
'业主大会召开方案公示'
case
'D43'
:
return
'业主大会召开方案公示'
case
'D44'
:
return
'业主大会召开方案的公示'
case
'DF14'
:
return
'业主大会召开方案编制'
case
'D51'
:
return
'业主大会费用预算草案'
case
'DF05'
:
return
'业主大会费用预算草案'
case
'D52'
:
return
'业主大会费用预算公示'
case
'D53'
:
return
'业主大会费用预算公示'
case
'D54'
:
return
'业主大会费用预算的公示'
case
'DF15'
:
return
'业主大会费用预算编制'
case
'D61'
:
return
'业主票权草案'
case
'DF06'
:
return
'业主票权草案'
case
'D62'
:
return
'业主票权公示'
case
'D63'
:
return
'业主票权公示'
case
'D64'
:
return
'业主票权的公示'
case
'DF16'
:
return
'业主票权编制'
}
}
//第四文件公示事项状态
const
p4status
=
(
value
)
=>
{
switch
(
value
)
{
case
'10'
:
return
'待草拟'
case
'11'
:
return
'商议中'
case
'12'
:
return
'异议待修正'
case
'13'
:
return
'商议完成待检查'
case
'14'
:
return
'待公示'
case
'15'
:
return
'检查未过,待修改'
case
'16'
:
return
'待检查'
case
'17'
:
return
'已公示'
case
'88'
:
return
'已公示'
}
}
//第六通知/公示事项状态
const
p6status
=
(
value
)
=>
{
switch
(
value
)
{
case
'0'
:
return
'待起草'
case
'1'
:
return
'待检查'
case
'2'
:
return
'检查未过,待修改'
case
'3'
:
return
'待检查'
case
'4'
:
return
'推选中'
case
'41'
:
return
'推选中'
case
'5'
:
return
'推选结束,待审核'
case
'6'
:
return
'推选完成,待公示'
case
'61'
:
return
'检查未过,待修改'
case
'7'
:
return
'待检查'
case
'70'
:
return
'业委会候选人已公示'
case
'8'
:
return
'业委会候选人已确定'
case
'99'
:
return
'公示期内终止'
}
}
//第七通知公示事项状态
const
p7status
=
(
value
)
=>
{
switch
(
value
)
{
case
'0'
:
return
'待起草'
case
'1'
:
return
'待检查'
case
'2'
:
return
'检查未过,待修改'
case
'3'
:
return
'待投票开始'
case
'4'
:
return
'待投票结束'
case
'5'
:
return
'投票结束待公示'
case
'6'
:
return
'待检查'
case
'7'
:
return
'检查未过,待修改'
case
'8'
:
return
'业委会成员已公示'
case
'9'
:
return
'业委会成员已确定'
case
'99'
:
return
'公示期内终止'
case
'91'
:
return
'双过半人数不足7人, 选举失败'
}
}
//第八通知公示事项状态
const
p8status
=
(
value
)
=>
{
switch
(
value
)
{
case
'0'
:
return
'待发起'
case
'1'
:
return
'投票中'
case
'11'
:
return
'投票中'
case
'2'
:
return
'待社区确认'
case
'3'
:
return
'待公示'
case
'4'
:
return
'待检查'
case
'5'
:
return
'检查未过,待修改'
case
'6'
:
return
'业委会主任已公示'
}
}
export
default
{
export
default
{
timeFormat
,
timeFormat
,
numberFormat
,
numberFormat
,
percentageFormat
,
percentageFormat
,
blockManagersFormat
,
matterTypeFormat
,
matterStatusFormat
,
cmtmgmtStatusFormat
,
matterVoteResultOptionIndexFommat
,
title
,
p4status
,
p6status
,
p7status
,
p8status
}
}
src/utils/utils.js
View file @
1be1155f
// 节流
// 节流
export
function
throttle
(
fn
,
interval
)
{
export
function
throttle
(
fn
,
interval
)
{
let
delay
=
interval
||
1500
let
delay
=
interval
||
1500
let
previous
=
0
let
previous
=
0
return
function
()
{
return
function
()
{
let
now
=
Date
.
now
()
let
now
=
Date
.
now
()
let
that
=
this
let
that
=
this
let
args
=
arguments
let
args
=
arguments
if
(
now
-
previous
>
delay
)
{
if
(
now
-
previous
>
delay
)
{
fn
.
apply
(
that
,
args
)
fn
.
apply
(
that
,
args
)
previous
=
now
previous
=
now
}
}
}
}
}
}
// 防抖
// 防抖
export
function
debounce
(
fn
,
interval
)
{
export
function
debounce
(
fn
,
interval
)
{
let
delay
=
interval
||
1500
let
delay
=
interval
||
1500
let
timer
=
null
let
timer
=
null
return
function
()
{
return
function
()
{
let
that
=
this
let
that
=
this
let
args
=
arguments
let
args
=
arguments
timer
&&
clearTimeout
(
timer
)
timer
&&
clearTimeout
(
timer
)
timer
=
setTimeout
(
function
()
{
timer
=
setTimeout
(
function
()
{
fn
.
apply
(
that
,
args
)
fn
.
apply
(
that
,
args
)
},
delay
)
},
delay
)
}
}
}
}
var
unique
=
0
;
var
unique
=
0
;
export
function
uuid
(
prefix
)
{
export
function
uuid
(
prefix
)
{
const
time
=
Date
.
now
();
const
time
=
Date
.
now
();
const
random
=
Math
.
floor
(
Math
.
random
()
*
1000000000
);
const
random
=
Math
.
floor
(
Math
.
random
()
*
1000000000
);
unique
++
;
unique
++
;
return
prefix
+
'_'
+
random
+
unique
+
String
(
time
);
return
prefix
+
'_'
+
random
+
unique
+
String
(
time
);
}
}
// 一维数组转换成二维数组
// 一维数组转换成二维数组
export
const
groupList
=
(
list
,
length
)
=>
{
export
const
groupList
=
(
list
,
length
)
=>
{
const
pages
=
[];
const
pages
=
[];
list
.
forEach
((
item
,
index
)
=>
{
list
.
forEach
((
item
,
index
)
=>
{
const
page
=
Math
.
floor
(
index
/
length
);
const
page
=
Math
.
floor
(
index
/
length
);
if
(
!
pages
[
page
])
{
if
(
!
pages
[
page
])
{
pages
[
page
]
=
[];
pages
[
page
]
=
[];
}
}
pages
[
page
].
push
(
item
);
pages
[
page
].
push
(
item
);
});
});
return
pages
;
return
pages
;
};
};
/**
/**
* 获取uuid
* 获取uuid
*/
*/
export
const
getUUID
=
()
=>
{
export
const
getUUID
=
()
=>
{
return
'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'
.
replace
(
/
[
xy
]
/g
,
c
=>
{
return
'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'
.
replace
(
/
[
xy
]
/g
,
c
=>
{
return
(
c
===
'x'
?
(
Math
.
random
()
*
16
|
0
)
:
(
'r&0x3'
|
'0x8'
)).
toString
(
16
)
return
(
c
===
'x'
?
(
Math
.
random
()
*
16
|
0
)
:
(
'r&0x3'
|
'0x8'
)).
toString
(
16
)
})
})
}
}
\ No newline at end of file
\ No newline at end of file
src/views/Home/index.vue
View file @
1be1155f
...
@@ -1009,7 +1009,8 @@ export default {
...
@@ -1009,7 +1009,8 @@ export default {
},
},
// 商品全球身份证
// 商品全球身份证
async
homeNewGtin
()
{
async
homeNewGtin
()
{
this
.
$http
.
get
(
"/gds/Data/NewGtin"
).
then
((
res
)
=>
{
console
.
log
(
process
.
env
,
'process.env'
);
this
.
$http
.
get
(
`
${
process
.
env
.
VUE_APP_GDS_URL
}
/Data/NewGtin`
).
then
((
res
)
=>
{
res
.
body
.
murl
=
`http://data-studio.gds.org.cn/
${
res
.
body
.
murl
}
`
;
res
.
body
.
murl
=
`http://data-studio.gds.org.cn/
${
res
.
body
.
murl
}
`
;
res
.
body
.
surl
=
`http://data-studio.gds.org.cn/
${
res
.
body
.
surl
}
`
;
res
.
body
.
surl
=
`http://data-studio.gds.org.cn/
${
res
.
body
.
surl
}
`
;
this
.
spqqsfz
=
res
.
body
;
this
.
spqqsfz
=
res
.
body
;
...
...
src/views/Search/external.vue
View file @
1be1155f
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
<el-form-item
label=
"验证码:"
>
<el-form-item
label=
"验证码:"
>
<div
class=
"y-center"
>
<div
class=
"y-center"
>
<el-input
<el-input
v-model=
"search.
validate
"
v-model=
"search.
captcha
"
placeholder=
"请输入验证码"
placeholder=
"请输入验证码"
class=
"w160"
class=
"w160"
></el-input>
></el-input>
...
@@ -121,8 +121,7 @@ export default {
...
@@ -121,8 +121,7 @@ export default {
data
()
{
data
()
{
return
{
return
{
captchaPath
:
""
,
captchaPath
:
""
,
uuid
:
""
,
search
:
{
code
:
""
,
captcha
:
""
,
uuid
:
""
},
search
:
{
code
:
""
,
validate
:
""
},
searchCodeShow
:
""
,
searchCodeShow
:
""
,
showResult
:
false
,
showResult
:
false
,
result
:
null
,
result
:
null
,
...
@@ -164,14 +163,14 @@ export default {
...
@@ -164,14 +163,14 @@ export default {
methods
:
{
methods
:
{
// 获取验证码
// 获取验证码
getCaptcha
()
{
getCaptcha
()
{
this
.
uuid
=
getUUID
();
this
.
search
.
uuid
=
getUUID
();
this
.
$http
const
query
=
{
.
get
(
`/gs1/office/captcha.jpg?uuid=
${
this
.
uuid
}
`
,
{
uuid
:
this
.
search
.
uuid
,
responseType
:
"blob"
,
};
})
this
.
$api
.
getCaptcha
(
query
).
then
((
res
)
=>
{
.
then
((
res
)
=>
{
console
.
log
(
res
,
'res'
);
this
.
captchaPath
=
window
.
URL
.
createObjectURL
(
res
.
body
);
this
.
captchaPath
=
window
.
URL
.
createObjectURL
(
res
.
body
);
});
});
},
},
handleSearch
()
{
handleSearch
()
{
this
.
searchCodeShow
=
this
.
search
.
code
;
this
.
searchCodeShow
=
this
.
search
.
code
;
...
...
src/views/Search/gln.vue
View file @
1be1155f
...
@@ -2,8 +2,8 @@
...
@@ -2,8 +2,8 @@
<div
class=
"search-content"
>
<div
class=
"search-content"
>
<div
class=
"title"
>
GLN查询
</div>
<div
class=
"title"
>
GLN查询
</div>
<div
class=
"body"
>
<div
class=
"body"
>
<div
style=
"padding-top:20px"
>
<div
style=
"padding-top:
20px"
>
<el-form
label-position=
"left"
label-width=
"
18
0px"
:model=
"search"
>
<el-form
label-position=
"left"
label-width=
"
20
0px"
:model=
"search"
>
<el-form-item
label=
"参与方位置编码(GLN)查询:"
>
<el-form-item
label=
"参与方位置编码(GLN)查询:"
>
<el-input
<el-input
v-model=
"search.code"
v-model=
"search.code"
...
@@ -15,17 +15,17 @@
...
@@ -15,17 +15,17 @@
<el-form-item
label=
"验证码:"
>
<el-form-item
label=
"验证码:"
>
<div
class=
"y-center"
>
<div
class=
"y-center"
>
<el-input
<el-input
v-model=
"search.
validate
"
v-model=
"search.
captcha
"
placeholder=
"请输入验证码"
placeholder=
"请输入验证码"
class=
"w160"
class=
"w160"
></el-input>
></el-input>
<div
class=
"validate-code"
>
<div
class=
"validate-code"
>
<img
src=
"../../assets/image/validate.jpg
"
alt=
""
/>
<img
:src=
"captchaPath"
@
click=
"getCaptcha()
"
alt=
""
/>
</div>
</div>
<el-button
<el-button
style=
"margin-left:40px"
style=
"margin-left:
40px"
type=
"primary"
type=
"primary"
@
click=
"handleSearch"
@
click=
"handleSearch"
>
查询
</el-button
>
查询
</el-button
...
@@ -53,20 +53,15 @@
...
@@ -53,20 +53,15 @@
<div
class=
"content-wrapper"
>
<div
class=
"content-wrapper"
>
<img
src=
"./img/query-external-barcode.png"
align=
"right"
alt=
""
/>
<img
src=
"./img/query-external-barcode.png"
align=
"right"
alt=
""
/>
<p>
<p>
1、参与方位置编码(Global Location Number)是对参与供应链等活动的法律实体、功能实体和物理实体进行唯一标识的代码,用13位数字表示,主要应用于条码符号自动识别与数据采集和电子数据交换
1、参与方位置编码(Global Location
Number)是对参与供应链等活动的法律实体、功能实体和物理实体进行唯一标识的代码,用13位数字表示,主要应用于条码符号自动识别与数据采集和电子数据交换
</p>
</p>
<p>
<p>
2、当用条码符号表示参与方位置编码时,应与参与方位置编码应用标识符一起使用,如左图中的"410"代表"交货地"。
2、当用条码符号表示参与方位置编码时,应与参与方位置编码应用标识符一起使用,如左图中的"410"代表"交货地"。
</p>
</p>
<p>
<p>
注:
</p>
注:
<p>
3、法律实体是指合法存在的机构,如:供应商、客户、银行、承运商等。
</p>
</p>
<p>
4、功能实体是指法律实体内的具体的部门,如:某公司的财务部。
</p>
<p>
3、法律实体是指合法存在的机构,如:供应商、客户、银行、承运商等。
</p>
<p>
4、功能实体是指法律实体内的具体的部门,如:某公司的财务部。
</p>
<p>
<p>
5、物理实体是指具体的位置,如:建筑物的某个房间、仓库或仓库的某个门、交货地等。
5、物理实体是指具体的位置,如:建筑物的某个房间、仓库或仓库的某个门、交货地等。
</p>
</p>
...
@@ -76,21 +71,45 @@
...
@@ -76,21 +71,45 @@
</template>
</template>
<
script
>
<
script
>
import
{
getUUID
}
from
"@/utils/utils"
;
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
search
:
{
code
:
""
,
validate
:
""
},
captchaPath
:
''
,
search
:
{
code
:
""
,
captcha
:
""
,
type
:
"GLN"
,
requestedLanguage
:
"en"
,
uuid
:
''
},
searchCodeShow
:
""
,
searchCodeShow
:
""
,
showResult
:
false
,
showResult
:
false
,
result
:
null
,
result
:
null
,
};
};
},
},
created
()
{
this
.
getCaptcha
();
},
methods
:
{
methods
:
{
handleSearch
()
{
// 获取验证码
getCaptcha
()
{
this
.
search
.
uuid
=
getUUID
();
const
query
=
{
uuid
:
this
.
search
.
uuid
,
};
this
.
$api
.
getCaptcha
(
query
).
then
((
res
)
=>
{
console
.
log
(
res
,
'res'
);
this
.
captchaPath
=
window
.
URL
.
createObjectURL
(
res
.
body
);
});
},
async
handleSearch
()
{
this
.
searchCodeShow
=
this
.
search
.
code
;
this
.
searchCodeShow
=
this
.
search
.
code
;
this
.
showResult
=
true
;
this
.
showResult
=
true
;
if
(
this
.
search
.
code
===
"1"
)
{
const
params
=
{...
this
.
search
};
this
.
result
=
{};
const
searchGlnRes
=
await
this
.
$api
.
search
.
searchGln
(
params
);
const
{
returnCode
,
data
}
=
searchGlnRes
;
console
.
log
(
searchGlnRes
,
'searchGlnRes'
);
if
(
returnCode
===
"0"
)
{
this
.
result
=
data
;
}
else
{
this
.
result
=
null
;
}
}
},
},
},
},
...
...
src/vuex/user/getters.js
View file @
1be1155f
import
{
BlockRoleType
,
BlockRoleNameFromType
,
MatterType
,
MatterStatusOwnerCode
}
from
"@/config/constant.js"
const
getters
=
{
const
getters
=
{
// 用户id
// 用户id
userId
:
state
=>
{
userId
:
state
=>
{
...
@@ -34,109 +27,6 @@ const getters = {
...
@@ -34,109 +27,6 @@ const getters = {
const
{
userInfo
}
=
state
const
{
userInfo
}
=
state
return
Number
(
userInfo
.
roleId
)
return
Number
(
userInfo
.
roleId
)
},
},
userRoleName
:
state
=>
{
const
{
userInfo
}
=
state
return
BlockRoleNameFromType
(
Number
(
userInfo
.
roleId
))
},
isLoggedAdmin
:
state
=>
{
const
{
userInfo
}
=
state
return
Number
(
userInfo
.
roleId
)
===
BlockRoleType
.
admin
},
isCurrentBlockOnlyTemporal
:
state
=>
{
const
{
userInfo
}
=
state
return
userInfo
.
blockName
===
'旭日爱上城6区'
},
isElementPermission
:
state
=>
(
value
,
data
=
null
)
=>
{
const
{
userInfo
}
=
state
const
roleId
=
Number
(
userInfo
.
roleId
)
// const roleId = BlockRoleType.comMember
// 设置网格管理员
if
(
value
===
'block_set_grid_manager'
)
{
return
roleId
===
BlockRoleType
.
admin
}
// 设置业委会委员、临管人员、会计、物业 需要管理员权限
if
(
value
===
'block_set_comMember'
||
value
===
'block_set_community'
||
value
===
'block_set_management'
||
value
===
'block_set_temporal'
||
value
===
'block_set_accountant'
||
value
===
'block_set_servant'
)
{
if
(
roleId
!==
BlockRoleType
.
admin
)
{
return
false
}
// 仅旭日爱上城6区需要设置临管人员
const
{
name
}
=
data
||
{}
const
block_xrasc6
=
'旭日爱上城6区'
if
(
value
===
'block_set_temporal'
)
{
return
name
===
block_xrasc6
}
if
(
value
===
'block_set_comMember'
)
{
return
name
!==
block_xrasc6
}
return
true
}
// 会计有添加账号权限
if
(
value
===
'account_add_balance'
)
{
return
roleId
===
BlockRoleType
.
accountant
}
// 事项
if
(
value
===
'matter_create'
)
{
return
(
roleId
===
BlockRoleType
.
comMember
||
roleId
===
BlockRoleType
.
temporal
)
}
if
(
value
===
'matter_create_rectification'
||
value
===
'matter_create_letter'
)
{
return
(
roleId
===
BlockRoleType
.
comMember
||
roleId
===
BlockRoleType
.
temporal
)
}
if
(
value
===
'matter_create_vote'
||
value
===
'matter_create_vote-result'
||
value
===
'matter_create_announce'
)
{
return
(
roleId
===
BlockRoleType
.
comMember
||
roleId
===
BlockRoleType
.
temporal
)
}
if
(
value
===
'matter_action_audit_approve'
||
value
===
'matter_action_audit_reject'
)
{
// 审核仅社区和物管办
const
{
status
}
=
data
||
{}
const
myStatus
=
Number
(
status
)
return
(
roleId
===
BlockRoleType
.
community
&&
myStatus
===
MatterStatusOwnerCode
.
communityInProgress
)
||
(
roleId
===
BlockRoleType
.
management
&&
myStatus
===
MatterStatusOwnerCode
.
managementInProgress
)
}
if
(
value
===
'matter_action_reply_letter'
)
{
// 已发布的公函,业委会需要进行回函
const
{
matterType
,
status
,
isLetters
}
=
data
||
{}
const
myMatterType
=
String
(
matterType
)
const
myStatus
=
Number
(
status
)
return
(
myMatterType
===
MatterType
.
letter
&&
myStatus
===
MatterStatusOwnerCode
.
end
&&
!
isLetters
&&
(
roleId
===
BlockRoleType
.
comMember
||
roleId
===
BlockRoleType
.
temporal
)
)
}
if
(
value
===
'matter_action_accept_rectification'
)
{
// 已发布的整改单,物业需要进行接收整改
const
{
matterType
,
status
,
isAccept
}
=
data
||
{}
const
myMatterType
=
String
(
matterType
)
const
myStatus
=
Number
(
status
)
return
(
myMatterType
===
MatterType
.
rectification
&&
myStatus
===
MatterStatusOwnerCode
.
end
&&
!
isAccept
&&
roleId
===
BlockRoleType
.
servant
)
}
if
(
value
===
'matter_action_edit_tags'
)
{
return
false
}
return
false
}
}
}
export
default
getters
export
default
getters
\ No newline at end of file
src/vuex/user/state.js
View file @
1be1155f
...
@@ -10,10 +10,6 @@ const state = {
...
@@ -10,10 +10,6 @@ const state = {
userInfo
:
storage
.
get
(
"userInfo"
)
||
{},
userInfo
:
storage
.
get
(
"userInfo"
)
||
{},
// 登录用户菜单列表
// 登录用户菜单列表
userMenus
:
storage
.
get
(
"userMenus"
)
||
[],
userMenus
:
storage
.
get
(
"userMenus"
)
||
[],
// 账号交易类型列表
financeTypeList
:
storage
.
get
(
"financeTypeList"
)
||
[],
// 当前所有小区的列表数据
allBlockList
:
storage
.
get
(
"allBlockList"
)
||
[],
}
}
export
default
state
export
default
state
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