Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
contractmanage
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张伯涛
contractmanage
Commits
6f6f1ab4
Commit
6f6f1ab4
authored
Mar 05, 2022
by
张伯涛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
61d77214
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
811 additions
and
769 deletions
+811
-769
index.vue
src/layout/components/TagsView/index.vue
+15
-1
header.vue
src/layout/components/header.vue
+3
-1
index.js
src/router/index.js
+1
-1
add.vue
src/views/list/add.vue
+26
-21
index.vue
src/views/list/index.vue
+23
-2
apis.js
src/views/user/apis.js
+742
-742
login.vue
src/views/user/login.vue
+1
-1
No files found.
src/layout/components/TagsView/index.vue
View file @
6f6f1ab4
...
...
@@ -13,7 +13,7 @@
@click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''"
@contextmenu.prevent.native="openMenu(tag,$event)"
>
{{
tag
.
title
}}
{{
setName
(
tag
)
}}
<span
v-if=
"!isAffix(tag)"
class=
"el-icon-close"
@
click
.
prevent
.
stop=
"closeSelectedTag(tag)"
/>
</router-link>
</scroll-pane>
...
...
@@ -71,6 +71,20 @@ export default {
this
.
addTags
()
},
methods
:
{
setName
(
route
)
{
console
.
log
(
'路由'
,
route
)
if
(
route
.
path
===
'/contract/manage1/add'
)
{
if
(
route
.
query
.
type
===
'add'
)
{
return
'新增'
+
route
.
title
}
else
if
(
route
.
query
.
type
===
'update'
)
{
return
'修改'
+
route
.
title
}
else
if
(
route
.
query
.
type
===
'checkDetails'
)
{
return
'查看'
+
route
.
title
}
}
else
{
return
route
.
title
}
},
isActive
(
route
)
{
return
route
.
path
===
this
.
$route
.
path
},
...
...
src/layout/components/header.vue
View file @
6f6f1ab4
...
...
@@ -37,7 +37,7 @@
<!--
<i
class=
"el-icon-message-solid"
/>
-->
<!--
</el-badge>
-->
<span
class=
"username-text"
>
[您好,
{{
userName
}}
]
[您好,
{{
userName
}}
{{
name
}}
]
</span>
<el-dropdown
class=
"avatar-container"
trigger=
"click"
>
<div
class=
"avatar-wrapper"
>
...
...
@@ -68,6 +68,7 @@ export default {
return
{
appList
:
[],
userName
:
''
,
name
:
''
,
avatar
:
''
,
specialTag
:
this
.
$store
.
state
.
user
.
specialTag
}
...
...
@@ -82,6 +83,7 @@ export default {
try
{
const
user
=
JSON
.
parse
(
Store
.
get
(
storeKey
.
user
))
this
.
userName
=
user
.
userName
this
.
name
=
user
.
name
this
.
avatar
=
user
.
avatar
}
catch
(
e
)
{
...
...
src/router/index.js
View file @
6f6f1ab4
...
...
@@ -62,7 +62,7 @@ export const constantRoutes = [
path
:
'/contract/manage1/add'
,
name
:
'contractManage'
.
toLocaleUpperCase
(),
component
:
()
=>
import
(
'@/views/list/add'
),
meta
:
{
title
:
'
新增
合同信息'
}
meta
:
{
title
:
'合同信息'
}
}
]
},
...
...
src/views/list/add.vue
View file @
6f6f1ab4
...
...
@@ -13,7 +13,7 @@
<el-tab-pane
name=
"file"
label=
"附件信息"
/>
</el-tabs>
</div>
<el-form
ref=
"form"
label-width=
"auto"
label-position=
"right"
:model=
"form"
style=
"height: 100%;flex:1"
:rules=
"rules"
:disabled=
"
type === 'detail1
'"
>
<el-form
ref=
"form"
label-width=
"auto"
label-position=
"right"
:model=
"form"
style=
"height: 100%;flex:1"
:rules=
"rules"
:disabled=
"
$route.query.type === 'checkDetails
'"
>
<div
class=
"right-form"
@
scroll=
"parentScroll"
>
<div
class=
"step-form"
>
<div
id=
"basic"
class=
"step-header"
>
...
...
@@ -185,7 +185,7 @@
label=
"争议解决方式"
prop=
"DISPUTESOLUTIONWAY"
:rules=
"[
{ required: true, message: '请选择争议解决方式', trigger: '
change
' }
{ required: true, message: '请选择争议解决方式', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.DISPUTESOLUTIONWAY"
placeholder=
"请选择"
>
...
...
@@ -279,7 +279,7 @@
label=
"履约进度"
prop=
"PERFORMSCHEDULE"
:rules=
"[
{ required: true, message: '请选择履约进度', trigger: '
change
' }
{ required: true, message: '请选择履约进度', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.PERFORMSCHEDULE"
placeholder=
"请选择"
>
...
...
@@ -667,7 +667,7 @@
label=
"支付币种"
prop=
"TZXX.PAYMENTCURRENCY"
:rules=
"[
{ required: true, message: '请选择支付币种', trigger: '
change
' }
{ required: true, message: '请选择支付币种', trigger: '
blur
' }
]"
>
<el-select
...
...
@@ -690,7 +690,7 @@
label=
"汇率确定方式"
prop=
"TZXX.RATEMETHOD"
:rules=
"[
{ required: true, message: '请选择汇率确定方式', trigger: '
change
' }
{ required: true, message: '请选择汇率确定方式', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.TZXX.RATEMETHOD"
placeholder=
"请选择"
>
...
...
@@ -709,7 +709,7 @@
label=
"价款方式"
prop=
"TZXX.PAYMETHOD"
:rules=
"[
{ required: true, message: '请选择价款方式', trigger: '
change
' }
{ required: true, message: '请选择价款方式', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.TZXX.PAYMETHOD"
placeholder=
"请选择"
>
...
...
@@ -831,7 +831,7 @@
label=
"发票类型"
prop=
"TZXX.INVOICETYPE"
:rules=
"[
{ required: true, message: '请选择发票类型', trigger: '
change
' }
{ required: true, message: '请选择发票类型', trigger: '
blur
' }
]"
>
<el-select
...
...
@@ -911,7 +911,7 @@
label=
"采购方式"
prop=
"TZXX.PURCHASEMETHOD"
:rules=
"[
{ required: true, message: '采购方式', trigger: '
change
' }
{ required: true, message: '采购方式', trigger: '
blur
' }
]"
>
<el-select
...
...
@@ -934,7 +934,7 @@
label=
"是否来源于框架协议"
prop=
"TZXX.ISAGREEMENT"
:rules=
"[
{ required: true, message: '是否来源于框架协议', trigger: '
change
' }
{ required: true, message: '是否来源于框架协议', trigger: '
blur
' }
]"
>
<el-select
...
...
@@ -1008,7 +1008,7 @@
label=
"是否联合体"
prop=
"TZXX.ISCOALITION"
:rules=
"[
{ required: true, message: '请选择是否联合体', trigger: '
change
' }
{ required: true, message: '请选择是否联合体', trigger: '
blur
' }
]"
>
<el-radio-group
v-model=
"form.TZXX.ISCOALITION"
>
...
...
@@ -1095,7 +1095,7 @@
label=
"材料是否可以调差"
prop=
"TZXX.ISMATADJUSTMENT"
:rules=
"[
{ required: true, message: '材料是否可以调差', trigger: '
change
' }
{ required: true, message: '材料是否可以调差', trigger: '
blur
' }
]"
>
<el-radio-group
v-model=
"form.TZXX.ISMATADJUSTMENT"
>
...
...
@@ -1110,7 +1110,7 @@
label=
"最终结算审核方式"
prop=
"TZXX.FINISHVERIFYMETHOD"
:rules=
"[
{ required: true, message: '最终结算审核方式', trigger: '
change
' }
{ required: true, message: '最终结算审核方式', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.TZXX.FINISHVERIFYMETHOD"
placeholder=
"请选择"
>
...
...
@@ -1191,7 +1191,7 @@
label=
"付款类型"
prop=
"TZXX.PAYMENTMETHOD"
:rules=
"[
{ required: true, message: '付款类型', trigger: '
change
' }
{ required: true, message: '付款类型', trigger: '
blur
' }
]"
>
<el-select
v-model=
"form.TZXX.PAYMENTMETHOD"
placeholder=
"请选择"
>
...
...
@@ -1218,7 +1218,7 @@
label=
"是否有担保"
prop=
"TZXX.ISSFYDB"
:rules=
"[
{ required: true, message: '是否有担保', trigger: '
change
' }
{ required: true, message: '是否有担保', trigger: '
blur
' }
]"
>
<el-radio-group
v-model=
"form.TZXX.ISSFYDB"
>
...
...
@@ -1735,7 +1735,7 @@ export default {
rules
:
{
FROMID
:
[{
required
:
true
,
message
:
'原系统合同 id'
,
trigger
:
'blur'
},
{
max
:
64
,
message
:
'长度64个字符以内'
,
trigger
:
'blur'
}],
CONNAMECN
:
[{
required
:
true
,
message
:
'合同中文名称'
,
trigger
:
'blur'
},
{
max
:
450
,
message
:
'长度450个字符以内'
,
trigger
:
'blur'
}],
CONLANGUAGE
:
[{
required
:
true
,
message
:
'合同语言'
,
trigger
:
'
change
'
}],
CONLANGUAGE
:
[{
required
:
true
,
message
:
'合同语言'
,
trigger
:
'
blur
'
}],
CONNAME
:
[{
max
:
450
,
message
:
'长度450个字符以内'
,
trigger
:
'blur'
}],
CONMAINCODE
:
[{
max
:
50
,
message
:
'长度50个字符以内'
,
trigger
:
'blur'
}],
CONCODE
:
[{
required
:
true
,
message
:
'合同编码'
,
trigger
:
'blur'
},
{
max
:
64
,
message
:
'长度64个字符以内'
,
trigger
:
'blur'
}],
...
...
@@ -1752,7 +1752,7 @@ export default {
CONPERFORMXIAN
:
[{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
SIGNDATE
:
[{
required
:
true
,
message
:
'签约日期'
,
trigger
:
'blur'
},
{
max
:
12
,
message
:
'长度12个字符以内'
,
trigger
:
'blur'
}],
DISPUTESOLUTIONWAY
:
[{
required
:
true
,
message
:
'争议解决方式'
,
trigger
:
'blur'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
CONMODELUSECONDITION
:
[{
required
:
true
,
message
:
'合同范本使用情况'
,
trigger
:
'
change
'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
CONMODELUSECONDITION
:
[{
required
:
true
,
message
:
'合同范本使用情况'
,
trigger
:
'
blur
'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
CONUNDERTAKERID
:
[{
required
:
true
,
message
:
'合同承办人ID'
,
trigger
:
'blur'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
CONUNDERTAKER
:
[{
required
:
true
,
message
:
'合同承办人姓名'
,
trigger
:
'blur'
},
{
max
:
100
,
message
:
'长度100个字符以内'
,
trigger
:
'blur'
}],
CONUNDERTAKERCONTACT
:
[{
required
:
true
,
message
:
'合同承办人联系方式'
,
trigger
:
'blur'
},
{
max
:
100
,
message
:
'长度100个字符以内'
,
trigger
:
'blur'
}],
...
...
@@ -1764,8 +1764,8 @@ export default {
SJLYDWNAME
:
[{
required
:
true
,
message
:
'合同实际履约主体名称'
,
trigger
:
'blur'
},
{
max
:
100
,
message
:
'长度100个字符以内'
,
trigger
:
'blur'
}],
ACCOUNTUNITCODE
:
[{
required
:
true
,
message
:
'核算组织机构编码'
,
trigger
:
'blur'
},
{
max
:
100
,
message
:
'长度100个字符以内'
,
trigger
:
'blur'
}],
ACCOUNTUNITNAME
:
[{
required
:
true
,
message
:
'核算组织机构名称'
,
trigger
:
'blur'
},
{
max
:
100
,
message
:
'长度100个字符以内'
,
trigger
:
'blur'
}],
CONSTATUS
:
[{
required
:
true
,
message
:
'合同状态'
,
trigger
:
'
change
'
}],
CURRENCY
:
[{
required
:
true
,
message
:
'总金额币种'
,
trigger
:
'
change
'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
CONSTATUS
:
[{
required
:
true
,
message
:
'合同状态'
,
trigger
:
'
blur
'
}],
CURRENCY
:
[{
required
:
true
,
message
:
'总金额币种'
,
trigger
:
'
blur
'
},
{
max
:
30
,
message
:
'长度30个字符以内'
,
trigger
:
'blur'
}],
ONAME
:
[{
max
:
450
,
message
:
'长度450个字符以内'
,
trigger
:
'blur'
}],
ISYZDW
:
[{
max
:
1
,
message
:
'长度1个字符以内'
,
trigger
:
'blur'
}],
// PAYMENTCURRENCY: [{ required: true, message: '支付币种', trigger: 'blur' }],
...
...
@@ -1790,8 +1790,8 @@ export default {
BGBDWCDBFHTETAXAMT
:
[{
required
:
true
,
message
:
'变更后本单位承担合同额适用税额'
,
trigger
:
'blur'
}],
PROGRESSRULE
:
[{
required
:
true
,
message
:
'进度款付款条件'
,
trigger
:
'blur'
}],
FINISHRATIO
:
[{
required
:
true
,
message
:
'完工验收支付比例'
,
trigger
:
'blur'
}],
TAXAMT
:
[{
required
:
true
,
message
:
'税额'
,
trigger
:
'blur'
},
{
validator
:
this
.
isNum
,
trigger
:
'blur'
}],
//
TAXAMT: [{ required: true, message: '税额', trigger: 'blur' },
//
{ validator: this.isNum, trigger: 'blur' }],
HSAMT
:
[{
required
:
true
,
message
:
'合同总金额(含税)'
,
trigger
:
'blur'
},
{
validator
:
this
.
isNum
,
trigger
:
'blur'
}],
HSBGAMT
:
[{
required
:
true
,
message
:
'合同变更后总金额(含税)'
,
trigger
:
'blur'
},
...
...
@@ -1851,7 +1851,7 @@ export default {
this
.
$forceUpdate
()
},
getDetails
()
{
if
(
this
.
$route
.
query
.
type
===
'update'
)
{
if
(
this
.
$route
.
query
.
type
===
'update'
||
this
.
$route
.
query
.
type
===
'checkDetails'
)
{
const
FROMID
=
this
.
$route
.
query
.
row
.
FROMID
this
.
$axios
.
get
(
this
.
HTTPApi
+
'/contract/contract/detail/'
+
FROMID
).
then
(
res
=>
{
this
.
form
=
res
.
data
.
data
...
...
@@ -1863,6 +1863,11 @@ export default {
{
EXAMDATE
:
''
,
EXAMROLE
:
''
,
OPERATOR
:
''
,
EXAMOPINION
:
''
,
EXAMRESULT
:
''
}
]
}
if
(
res
.
data
.
data
.
FJXX
===
null
||
res
.
data
.
data
.
FJXX
.
length
===
0
)
{
this
.
form
.
FJXX
=
[
{
BUSINESSID
:
''
,
BUSITYPE
:
'合同签订文本扫描件'
,
FILENAME
:
''
,
FILESAVENAME
:
''
}
]
}
this
.
form
.
BUSINESSTYPEName
=
this
.
$route
.
query
.
businessTypeName
if
(
this
.
form
.
PROJNAME
===
''
)
{
this
.
PROJNAMEDisabled
=
true
...
...
src/views/list/index.vue
View file @
6f6f1ab4
...
...
@@ -40,7 +40,11 @@
<el-table
:row-style=
"tableRowStyle"
:data=
"data"
border
>
<el-table-column
label=
"序号"
type=
"index"
width=
"55"
/>
<el-table-column
label=
"原合同ID"
prop=
"FROMID"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"合同中文名称"
prop=
"CONNAMECN"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"合同中文名称"
prop=
"CONNAMECN"
:show-overflow-tooltip=
"true"
>
<template
slot-scope=
"
{ row }">
<el-link
type=
"primary"
@
click
.
stop=
"checkDetail(row)"
>
{{
row
.
CONNAMECN
}}
</el-link>
</
template
>
</el-table-column>
<el-table-column
label=
"合同编码"
prop=
"CONCODE"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"项目编码"
prop=
"PROJNUMBER"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"项目名称"
prop=
"PROJNAME"
:show-overflow-tooltip=
"true"
/>
...
...
@@ -77,6 +81,7 @@
<el-table-column
width=
"135px"
label=
"操作"
>
<
template
slot-scope=
"{ row }"
>
<el-link
:underline=
"false"
type=
"primary"
@
click
.
stop=
"update(row)"
>
修改
</el-link>
<!--
<el-link
:underline=
"false"
type=
"warning"
style=
"margin-left: 10px "
@
click
.
stop=
"checkDetail(row)"
>
查看
</el-link>
-->
<el-link
v-if=
"jurisdiction === '2016012550'"
:underline=
"false"
type=
"success"
style=
"margin-left: 10px"
@
click
.
stop=
"pushInfo(row)"
>
推送
</el-link>
<el-link
:underline=
"false"
type=
"danger"
style=
"margin-left: 10px "
@
click
.
stop=
"del(row)"
>
删除
</el-link>
</
template
>
...
...
@@ -84,7 +89,7 @@
</el-table>
</el-tab-pane>
<el-tab-pane
label=
"部门列表"
name=
"second"
>
<
div
class
=
"title"
>
合同列表
啊啊啊
<
/div
>
<div
class=
"title"
>
合同列表
</div>
<el-table
:row-style=
"tableRowStyle"
:data=
"deptData"
border
>
<el-table-column
label=
"序号"
type=
"index"
width=
"55"
/>
<el-table-column
label=
"原合同ID"
prop=
"FROMID"
:show-overflow-tooltip=
"true"
/>
...
...
@@ -125,6 +130,7 @@
<el-table-column
width=
"135px"
label=
"操作"
>
<
template
slot-scope=
"{ row }"
>
<el-link
:underline=
"false"
type=
"primary"
@
click
.
stop=
"update(row)"
>
修改
</el-link>
<!--
<el-link
:underline=
"false"
type=
"warning"
style=
"margin-left: 10px "
@
click
.
stop=
"checkDetail(row)"
>
查看
</el-link>
-->
<el-link
v-if=
"jurisdiction === '2016012550'"
:underline=
"false"
type=
"success"
style=
"margin-left: 10px"
@
click
.
stop=
"pushInfo(row)"
>
推送
</el-link>
<el-link
:underline=
"false"
type=
"danger"
style=
"margin-left: 10px "
@
click
.
stop=
"del(row)"
>
删除
</el-link>
</
template
>
...
...
@@ -173,6 +179,7 @@
<el-table-column
width=
"135px"
label=
"操作"
>
<
template
slot-scope=
"{ row }"
>
<el-link
:underline=
"false"
type=
"primary"
@
click
.
stop=
"update(row)"
>
修改
</el-link>
<!--
<el-link
:underline=
"false"
type=
"warning"
style=
"margin-left: 10px "
@
click
.
stop=
"checkDetail(row)"
>
查看
</el-link>
-->
<el-link
v-if=
"jurisdiction === '2016012550'"
:underline=
"false"
type=
"success"
style=
"margin-left: 10px"
@
click
.
stop=
"pushInfo(row)"
>
推送
</el-link>
<el-link
:underline=
"false"
type=
"danger"
style=
"margin-left: 10px "
@
click
.
stop=
"del(row)"
>
删除
</el-link>
</
template
>
...
...
@@ -499,6 +506,20 @@ obj=this.typeform*/
}
})
},
checkDetail
(
row
)
{
const
number
=
this
.
updateOptions
.
find
(
item
=>
item
.
label
.
split
(
' '
)[
0
]
===
row
.
BUSINESSTYPE
).
type
const
businessTypeName
=
this
.
updateOptions
.
find
(
item
=>
item
.
label
.
split
(
' '
)[
0
]
===
row
.
BUSINESSTYPE
).
value
console
.
log
(
'aaaaaaa'
,
number
)
this
.
$router
.
push
({
path
:
'/contract/manage1/add'
,
query
:
{
row
:
row
,
type
:
'checkDetails'
,
number
:
number
,
businessTypeName
:
businessTypeName
}
})
},
query
()
{
this
.
queryLoading
=
true
api
.
query
().
then
(
res
=>
{
...
...
src/views/user/apis.js
View file @
6f6f1ab4
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/views/user/login.vue
View file @
6f6f1ab4
...
...
@@ -150,7 +150,7 @@ export default {
Login
({
username
,
password
}).
then
((
res
)
=>
{
this
.
loading
=
false
Store
.
set
(
storeKey
.
token
,
`
${
Math
.
random
()}
_
${
new
Date
().
getTime
()}
`
)
Store
.
set
(
storeKey
.
user
,
JSON
.
stringify
({
userName
:
username
,
userId
:
res
.
userId
,
deptId
:
res
.
deptId
,
avatar
:
'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif'
}))
Store
.
set
(
storeKey
.
user
,
JSON
.
stringify
({
userName
:
username
,
userId
:
res
.
userId
,
deptId
:
res
.
deptId
,
name
:
res
.
name
,
avatar
:
'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif'
}))
if
(
rememberMe
)
{
Store
.
set
(
'username'
,
username
)
Store
.
set
(
'password'
,
encrypt
(
password
))
...
...
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