Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
assets
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
黄媛媛
assets
Commits
60fd9f0b
Commit
60fd9f0b
authored
Dec 06, 2019
by
黄媛媛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
111
parent
d0c68c32
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
386 additions
and
37 deletions
+386
-37
reset.css
src/assets/css/reset.css
+134
-0
Archivesmaterials.vue
src/components/Materialman/Archivesmaterials.vue
+1
-1
AssetsClassification.vue
src/components/Systemman/AssetsClassification.vue
+20
-5
assetsList.vue
src/components/assetsman/assetsList.vue
+216
-27
index.vue
src/components/global/index.vue
+3
-2
index.js
src/plugins/index.js
+12
-2
No files found.
src/assets/css/reset.css
View file @
60fd9f0b
...
...
@@ -85,3 +85,137 @@
text-align
:
center
;
}
.queryul
li
span
>
em
{
display
:
inline-block
;
min-width
:
80px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
15px
0
0
;}
/* dialog */
.el-dialog
{
background
:
rgba
(
248
,
250
,
251
,
1
);
border-radius
:
20px
;
}
.el-dialog__headerbtn
.el-dialog__close
{
color
:
#111111
;
}
.el-dialog__title
{
font-size
:
12px
;
}
/* form MyEditForm */
.MyEditForm
.el-form-item
{
display
:
inline-block
;
margin-right
:
30px
;
background
:
#fff
;
padding
:
5px
0
;
box-sizing
:
border-box
;
border-radius
:
10px
;
width
:
235px
;
box-shadow
:
0px
6px
14px
0px
rgba
(
176
,
176
,
176
,
0.1
);
position
:
relative
;
min-height
:
56px
;
}
.MyEditForm
.el-form-item
.label
{
font-size
:
10px
;
color
:
#888888
;
padding-left
:
15px
;
}
.MyEditForm
.el-form-item
.el-form-item__content
{
line-height
:
initial
;
}
.MyEditForm
.el-form-item
.el-input__inner
{
border
:
none
;
outline
:
none
;
width
:
220px
;
}
.MyEditForm
.el-form-item
.el-form-item__error
{
top
:
113%
;
}
.vue-treeselect
:not
(
.vue-treeselect--disabled
)
:not
(
.vue-treeselect--focused
)
.vue-treeselect__control
:hover
{
border
:
none
;
}
.vue-treeselect__control
{
border
:
none
;
height
:
28px
;
}
.vue-treeselect__menu
{
border
:
none
;
}
.MyEditForm
.btnformItem
{
display
:
block
!important
;
text-align
:
center
;
font-size
:
12px
;
margin-top
:
20px
;
}
.MyEditForm
.btnformItem
span
{
display
:
inline-block
;
width
:
120px
;
height
:
44px
;
line-height
:
44px
;
border-radius
:
22px
;
}
.MyEditForm
.btnformItem
.submitBtn
{
background
:
rgba
(
0
,
210
,
214
,
1
);
color
:
#fff
;
margin-right
:
20px
;
}
.MyEditForm
.btnformItem
.exitBtn
{
border
:
1px
solid
rgba
(
0
,
210
,
214
,
1
);
color
:
rgba
(
0
,
210
,
214
,
1
);
}
.MyEditForm
.is-required
::after
,
.is-required
::before
{
position
:
absolute
;
left
:
-10px
;
top
:
10px
;
content
:
'*'
;
color
:
#F56C6C
;
margin-right
:
4px
;
}
/* 上传图片 */
.uploadDiv
{
width
:
120px
;
height
:
120px
;
background
:
rgba
(
255
,
255
,
255
,
1
);
box-shadow
:
0px
6px
14px
0px
rgba
(
176
,
176
,
176
,
0.1
);
border-radius
:
10px
;
margin-top
:
6px
;
display
:
inline-flex
;
align-items
:
center
;
justify-content
:
center
;
}
.uploadDiv
.el-upload__text
{
color
:
#A6C6C6
;
font-size
:
12px
;
}
.uploadUl
{
float
:
left
;
}
.uploadUl
li
{
display
:
inline-block
;
width
:
120px
;
height
:
120px
;
border-radius
:
10px
;
margin-right
:
30px
;
overflow
:
hidden
;
position
:
relative
;
}
.uploadUl
li
img
{
min-height
:
100%
;
border-radius
:
10px
;
}
.uploadUl
li
.hoverDiv
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
top
:
0
;
background
:
rgba
(
0
,
0
,
0
,
0.2
);
z-index
:
20
;
text-align
:
center
;
display
:
none
;
}
.uploadUl
li
:hover
.hoverDiv
{
display
:
block
;
}
.uploadUl
li
.hoverDiv
img
{
margin-top
:
50px
;
width
:
32px
!important
;
min-height
:
32px
!important
;
cursor
:
pointer
;
}
\ No newline at end of file
src/components/Materialman/Archivesmaterials.vue
View file @
60fd9f0b
...
...
@@ -64,7 +64,7 @@
<el-dialog
:title=
"dialogtitle"
:visible
.
sync=
"dialogState"
width=
"680px"
>
width=
"680px"
style=
"height:700px"
>
<el-form
class=
"Archivesform"
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
<el-form-item
label=
"档案名称"
prop=
"Name"
>
<el-input
size=
"small"
v-model=
"addMsg.Name"
></el-input>
...
...
src/components/Systemman/AssetsClassification.vue
View file @
60fd9f0b
...
...
@@ -11,7 +11,10 @@
<span
class=
"TreeSpan"
slot-scope=
"
{ node, data }">
<span>
{{
node
.
label
}}
</span>
<span
class=
"spanIcon"
>
<el-button
<img
@
click=
"Add(data)"
style=
"width:12px;height:12px;margin-left:15px"
src=
"../../assets/img/add.png"
alt=
""
>
<img
@
click=
"Edit(data)"
style=
"width:12px;height:12px;margin:0 15px"
src=
"../../assets/img/treeedit.png"
alt=
""
>
<img
@
click=
"DeleteNode(data)"
style=
"width:12px;height:12px"
src=
"../../assets/img/treedelete.png"
alt=
""
>
<!--
<el-button
type=
"text"
size=
"mini"
@
click=
"() => Add(data)"
>
...
...
@@ -28,7 +31,7 @@
size=
"mini"
@
click=
"() => DeleteNode(node, data)"
>
删除
</el-button>
</el-button>
-->
</span>
</span>
</el-tree>
...
...
@@ -212,7 +215,7 @@ export default {
this
.
getflList
(
data
.
Tier
)
},
DeleteNode
(
node
,
data
){
this
.
Delete
(
data
);
this
.
Delete
(
node
);
},
Delete
(
data
)
{
let
Id
=
data
.
Id
;
...
...
@@ -334,10 +337,16 @@ export default {
}
</
script
>
<
style
scoped
>
<
style
>
.Assetscation
.TreeDiv
.spanIcon
{
display
:
none
;
}
.Assetscation
.el-tree
{
color
:
#111111
;
}
.Assetscation
.TreeDiv
.el-tree-node__content
:hover
{
background
:
#fff
;
}
.Assetscation
.TreeDiv
.el-tree-node__content
:hover
.spanIcon
{
display
:
inline-block
!important
;
}
...
...
@@ -360,11 +369,17 @@ export default {
.Assetscation
{
padding-top
:
30px
;
position
:
relative
;
}
.Assetscation
.TreeDiv
{
width
:
2
5
0px
;
width
:
2
2
0px
;
position
:
absolute
;
left
:
30px
;
z-index
:
10
;
background
:
#fff
;
height
:
100%
;
padding
:
20px
10px
;
box-sizing
:
border-box
;
font-size
:
12px
;
}
</
style
>
src/components/assetsman/assetsList.vue
View file @
60fd9f0b
...
...
@@ -123,31 +123,171 @@
<el-dialog
:title=
"dialogtitle"
:visible
.
sync=
"dialogState"
width=
"30%"
>
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
<el-form-item
label=
"供应商名称"
prop=
"Name"
>
<el-input
v-model=
"addMsg.Name"
></el-input>
top=
"3%"
width=
"850px"
>
<el-form
class=
"MyEditForm"
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"0px"
>
<el-form-item
label=
""
prop=
"Name"
>
<span
class=
"label"
>
资产名称
</span>
<el-input
size=
"mini"
v-model=
"addMsg.Name"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"联系人"
prop=
"Contact"
>
<el-input
v-model=
"addMsg.Contact"
></el-input>
<el-form-item
label=
""
prop=
"SerialNumber"
>
<span
class=
"label"
>
序列号
</span>
<el-input
size=
"mini"
v-model=
"addMsg.SerialNumber"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"联系电话"
prop=
"Mobile"
>
<el-input
v-model=
"addMsg.Mobile"
></el-input>
<el-form-item
label=
""
prop=
"CategoryId"
style=
"float:left;padding:0 5px;"
>
<span
class=
"label"
>
资产分类
</span>
<treeselect
style=
"height:28px;width:100%"
:options=
"treedata"
v-model=
"addMsg.CategoryId"
placeholder=
"不限"
:normalizer=
"normalizer"
@
select=
'treeClick'
/>
</el-form-item>
<el-form-item>
<
el-button
type=
"primary"
@
click=
"submitForm('addMsg')"
>
确定
</el-butto
n>
<el-button
@
click=
"dialogState=false"
>
取消
</el-button
>
<el-form-item
label=
""
prop=
"BrandName"
>
<
span
class=
"label"
>
品牌
</spa
n>
<el-input
size=
"mini"
v-model=
"addMsg.BrandName"
placeholder=
"请输入"
></el-input
>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
金额
</span>
<el-input
size=
"mini"
v-model=
"addMsg.Money"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
prop=
"BuyDate"
>
<p
class=
"label"
>
购置日期
</p>
<el-date-picker
size=
"mini"
v-model=
"addMsg.BuyDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"选择日期"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
""
prop=
"BuyType"
>
<span
class=
"label"
>
购置方式
</span>
<el-input
size=
"mini"
v-model=
"addMsg.BuyType"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
单位
</span>
<el-input
size=
"mini"
v-model=
"addMsg.Units"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
使用年份期限
</span>
<el-input
size=
"mini"
v-model=
"addMsg.UseMonths"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
使用状态
</span>
<el-select
size=
"mini"
v-model=
"addMsg.UseStatus"
placeholder=
"请选择"
>
<el-option
v-for=
"item in options"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
型号
</span>
<el-input
size=
"mini"
v-model=
"addMsg.PropertyModel"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
备注
</span>
<el-input
size=
"mini"
v-model=
"addMsg.Remark"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
使用人
</span>
<el-select
size=
"mini"
v-model=
"addMsg.EmployeeId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in EmployeeList"
:key=
"item.EmployeeId"
:label=
"item.EmName"
:value=
"item.EmployeeId"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
""
>
<span
class=
"label"
>
供应商
</span>
<el-select
size=
"mini"
v-model=
"addMsg.SupplierId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in supplierList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
""
>
<p
class=
"label"
>
领取时间
</p>
<el-date-picker
size=
"mini"
v-model=
"addMsg.GetTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"选择日期"
>
</el-date-picker>
</el-form-item>
<div
class=
"_addUpload_box"
>
<ul
class=
"uploadUl"
>
<li>
<img
src=
"../../assets/img/pic.png"
alt=
""
>
<div
class=
"hoverDiv"
>
<img
src=
"../../assets/img/imgdelete.png"
alt=
""
>
</div>
</li>
</ul>
<div
class=
"uploadDiv"
>
<el-upload
:http-request=
"uploadFileBtn"
:multiple=
"false"
:show-file-list=
"false"
action
>
<img
style=
"width:40px;height:36px"
src=
"../../assets/img/pic.png"
alt=
""
>
<div
class=
"el-upload__text"
>
上传图片
</div>
</el-upload>
</div>
</div>
<div
class=
"btnformItem"
>
<span
class=
"submitBtn"
type=
"primary"
@
click=
"submitForm('addMsg')"
>
确定
</span>
<span
class=
"exitBtn"
@
click=
"dialogState=false"
>
取消
</span>
</div>
</el-form>
</el-dialog>
</div>
</
template
>
<
script
>
import
Treeselect
from
"@riophae/vue-treeselect"
;
import
"@riophae/vue-treeselect/dist/vue-treeselect.css"
;
export
default
{
name
:
'assetsList'
,
components
:
{
Treeselect
},
data
(){
return
{
addMsg
:{
Id
:
0
,
Name
:
''
,
BrandName
:
''
,
SerialNumber
:
''
,
CategoryId
:
null
,
BuyDate
:
''
,
BuyType
:
''
,
Units
:
''
,
UseMonths
:
''
,
UseStatus
:
''
,
PropertyStatus
:
''
,
PropertyModel
:
''
,
ImageList
:[],
Remark
:
''
,
EmployeeId
:
''
,
SupplierId
:
''
,
GetTime
:
''
,
},
normalizer
(
node
)
{
var
obj
=
{
id
:
node
.
Id
,
label
:
node
.
Name
,
};
if
(
node
.
ChildList
!=
null
&&
node
.
ChildList
.
length
>
0
)
{
obj
.
children
=
node
.
ChildList
;
}
return
obj
;
},
morequery
:
false
,
dateList
:[],
options
:
[{
...
...
@@ -183,26 +323,21 @@ export default {
StartTime
:
''
,
EndTime
:
''
,
},
addMsg
:{
Id
:
0
,
Name
:
''
,
PropertyNum
:
''
,
SerialNumber
:
''
,
CategoryId
:
''
,
PropertyStatus
:
''
,
EmployeeId
:
''
,
SupplierId
:
''
,
StartTime
:
''
,
EndTime
:
''
,
},
dialogtitle
:
'新增资产'
,
dialogState
:
fals
e
,
dialogState
:
tru
e
,
rules
:{
Name
:
[
{
required
:
true
,
message
:
'请输入供应商名称'
,
trigger
:
'blur'
}
],
Contact
:
[
{
required
:
true
,
message
:
'请输入联系人'
,
trigger
:
'blur'
}
BrandName
:
[
{
required
:
true
,
message
:
'请输入品牌'
,
trigger
:
'blur'
}
],
BuyType
:
[
{
required
:
true
,
message
:
'请输入购置方式'
,
trigger
:
'blur'
}
],
BuyDate
:
[
{
type
:
'date'
,
required
:
true
,
message
:
'请选择日期'
,
trigger
:
'change'
}
],
Mobile
:
[
{
required
:
true
,
message
:
'请输入联系电话'
,
trigger
:
'blur'
},
...
...
@@ -211,12 +346,20 @@ export default {
},
supplierList
:[],
EmployeeList
:[],
nodemsg
:{
ParentId
:
-
1
,
Tier
:
''
,
Name
:
''
,
Type
:
1
,
},
treedata
:[],
}
},
mounted
(){
this
.
getList
();
this
.
getEmployee
();
this
.
getSupplierList1
();
this
.
getNode
();
},
methods
:{
chongzhi
(){
...
...
@@ -235,6 +378,52 @@ export default {
};
this
.
getList
();
},
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
$message
.
warning
(
"文件大小不能超过10M!"
)
return
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[
{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
3
},
]
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
'.'
)
+
1
,
file
.
file
.
name
.
length
).
toUpperCase
();
let
fileTypeNumber
=
2
;
let
typeOk
=
false
;
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
typeOk
=
true
;
}
})
if
(
!
typeOk
)
return
this
.
$message
.
error
(
"请上传图片!"
);
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
let
path
=
"/Upload/Temporary"
this
.
$message
.
info
(
"上传中..."
)
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
fileSize
=
file
.
file
.
size
<
1024
?
file
.
file
.
size
:(
file
.
file
.
size
/
1024
).
toFixed
(
0
);
this
.
addMsg
.
ImageList
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
console
.
log
(
"this.addMsg.ImageList"
,
this
.
addMsg
.
ImageList
)
this
.
Success
(
"上传成功"
);
});
},
treeClick
(
data
){
this
.
msg
.
CategoryId
=
data
.
Id
;
},
getNode
(){
this
.
apiJavaPost
(
"/api/property/CateporyGetTreeList"
,
this
.
nodemsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
treedata
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
addSupplier
(){
this
.
addMsg
=
{
Id
:
0
,
...
...
@@ -281,7 +470,7 @@ export default {
submitForm
(
formName
)
{
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
apiJavaPost
(
"/api/property/Set
Supplier
Info"
,
this
.
addMsg
,
this
.
apiJavaPost
(
"/api/property/Set
Property
Info"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
...
...
src/components/global/index.vue
View file @
60fd9f0b
...
...
@@ -60,6 +60,7 @@ export default {
padding-top
:
70px
;
position
:
relative
;
box-sizing
:
border-box
;
background
:
#F8FAFB
;
}
.nav
{
position
:
fixed
;
...
...
@@ -67,13 +68,13 @@ export default {
top
:
0
;
left
:
0
;
height
:
100%
;
z-index
:
9999
;
z-index
:
100
;
}
.appContent
.HeadDiv
{
position
:
absolute
;
width
:
calc
(
100%
-
214px
);
top
:
0
;
z-index
:
200
;
}
.appContent
{
width
:
100%
;
...
...
src/plugins/index.js
View file @
60fd9f0b
import
md5
from
'js-md5'
import
co
from
'co'
export
default
{
data
:
{
loginUser
:
{},
...
...
@@ -31,7 +31,7 @@ export default {
javaUrl
:
"http://192.168.2.16:8087"
,
ViittoFileUrl
:
locationName
.
indexOf
(
'oytour'
)
!==
-
1
||
locationName
.
indexOf
(
'testb2b.oytour.com'
)
!==
-
1
?
"http://staticfile.oytour.com"
:
'http://192.168.2.214:8130'
,
UploadUrl
:
locationName
.
indexOf
(
'oytour'
)
!==
-
1
||
locationName
.
indexOf
(
'testb2b.oytour.com'
)
!==
-
1
?
"http://uploadfile.oytour.com"
:
"http://192.168.2.214:81
3
0"
,
UploadUrl
:
locationName
.
indexOf
(
'oytour'
)
!==
-
1
||
locationName
.
indexOf
(
'testb2b.oytour.com'
)
!==
-
1
?
"http://uploadfile.oytour.com"
:
"http://192.168.2.214:81
2
0"
,
// UploadUrl: "http://uploadfile.oytour.com",
LocalFileStreamDownLoadUrl
:
domainUrl
+
"/api/file/GetFileFromWebApi"
,
};
...
...
@@ -284,6 +284,16 @@ export default {
});
}
}
Vue
.
prototype
.
random_string
=
function
(
len
)
{
len
=
len
||
32
;
var
chars
=
'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'
;
var
maxPos
=
chars
.
length
;
var
pwd
=
''
;
for
(
let
i
=
0
;
i
<
len
;
i
++
)
{
pwd
+=
chars
.
charAt
(
Math
.
floor
(
Math
.
random
()
*
maxPos
));
}
return
pwd
;
},
//验证只能输入2位小数
Vue
.
prototype
.
checkPrice
=
function
(
item
,
filed
)
{
var
value
=
""
;
...
...
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