Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
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
周远喜
mes-ui
Commits
64af1e23
Commit
64af1e23
authored
Nov 25, 2020
by
luo ying
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'mes-ui20201118'
parents
19dd57c3
bd6fdb83
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
140 additions
and
80 deletions
+140
-80
Vcard.vue
components/page/Vcard.vue
+3
-7
life.vue
components/page/life.vue
+61
-4
rightM.vue
components/page/rightM.vue
+71
-62
add.vue
pages/project/project/add.vue
+1
-1
iview.js
plugins/iview.js
+4
-6
No files found.
components/page/Vcard.vue
View file @
64af1e23
...
...
@@ -74,7 +74,6 @@
<slot
name=
"leftBottom"
v-if=
"leftOneName"
>
<Icon
:type=
"leftOneIcon"
class=
"iconStyle"
/>
{{
leftOneName
}}
<!-- v-show="leftBtmicon" -->
</slot>
</span>
<span
class=
"overdue f14 fwBold mr20"
>
...
...
@@ -84,9 +83,9 @@
</slot>
</span>
</div>
<
span
class=
"rightMore"
>
<
div
class=
"rightMore"
>
<slot
name=
"rightBottom"
>
</slot>
</
span
>
</
div
>
</div>
</div>
</div>
...
...
@@ -283,7 +282,7 @@ export default {
}
}
.bottomCard {
justify-content: space-between;
//
justify-content: space-between;
padding-bottom: 20px;
padding-left: 14px;
.leftBtm {
...
...
@@ -307,9 +306,6 @@ export default {
}
.cardBox:hover {
box-shadow: 0px 0px 10px rgba(38, 128, 235, 0.4);
// .topCard {
// background: rgba(38, 128, 235, 0.4);
// }
}
.borderCss {
border: 2px solid #2680eb;
...
...
components/page/life.vue
View file @
64af1e23
<
template
>
<div
class=
"datalife
"
>
<div
class=
"bigBing"
:style=
"
{width:220*bigNum+'px'}" v-if="mode">
<div
class=
"datalife
"
>
<div
class=
"bigBing"
:style=
"
{width:220*bigNum+
100+
'px'}" v-if="mode">
<div
v-for=
"(item, index) in data"
:key=
"index"
class=
"linebox"
>
<div
class=
"box"
:class=
"curIndex == index ? 'boxBorder1':curIndex
<index
?
'
boxBorder2
'
:
'
boxBorder
'
"
>
<Tag
type=
"dot"
:color=
"item.color?item.color:tagColor"
>
{{
item
.
name
}}
</Tag>
...
...
@@ -9,8 +9,21 @@
<span
class=
"item arrow-right"
:class=
"[curIndex==index? 'boxBorder1' :curIndex
<index
?
'
boxBorder2
'
:
'
boxBorder
']"
></span>
</div>
</div>
<div
class=
'rightCode '
>
<Poptip
:content=
"code"
placement=
'left-start'
>
<a
data-clipboard-action=
"copy"
:data-clipboard-text=
"code"
@
click=
"copy"
id=
"code"
class=
"tag-read"
><Icon
type=
"ios-more"
/></a
>
</Poptip>
</div>
</div>
<div
class=
"bigBing"
:style=
"
{width:240*bigNum+'px'}" v-else>
<div
class=
"bigBing"
:style=
"
{width:240*bigNum+
100+
'px'}" v-else>
<div
class=
"lifeBox"
v-for=
"(item, index) in data"
:key=
"index"
>
<div
class=
"arrow-left"
>
<b
class=
"right"
v-if=
"index != 0"
>
...
...
@@ -26,11 +39,26 @@
></b>
</div>
</div>
<div
class=
'rightCode'
>
<Poptip
:content=
"code"
placement=
'left-start'
>
<a
data-clipboard-action=
"copy"
:data-clipboard-text=
"code"
@
click=
"copy"
id=
"code"
class=
"tag-read"
><Icon
type=
"ios-more"
/></a
>
</Poptip>
</div>
</div>
</div>
</
template
>
<
script
>
import
Clipboard
from
"clipboard"
;
export
default
{
name
:
"life"
,
data
()
{
...
...
@@ -60,6 +88,9 @@ export default {
type
:
String
,
default
:
""
}
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
created
()
{
this
.
data
=
this
.
$store
.
getters
.
dictionaryByKey
(
this
.
code
)
||
[];
...
...
@@ -71,13 +102,35 @@ export default {
})
},
methods
:
{
copy
()
{
var
clipboard
=
new
Clipboard
(
".tag-read"
);
clipboard
.
on
(
"success"
,
(
e
)
=>
{
this
.
$Message
.
success
(
"复制成功:"
+
this
.
code
);
clipboard
.
destroy
();
});
clipboard
.
on
(
"error"
,
(
e
)
=>
{
// 不支持复制
console
.
log
(
"该浏览器不支持自动复制"
);
// 释放内存
clipboard
.
destroy
();
});
},
},
};
</
script
>
<
style
lang=
"less"
>
.datalife {
overflow-x: auto;
width: auto;
.bigBing{
position: relative;
.rightCode{
position: absolute;
right: 0;
top: 0;
}
}
.linebox {
display: inline-flex;
.box {
...
...
@@ -270,5 +323,9 @@ export default {
}
}
}
// .ivu-poptip-popper{
// top: 27px;
// right:0
// }
}
</
style
>
\ No newline at end of file
components/page/rightM.vue
View file @
64af1e23
<
template
>
<div
class=
"rightM flex"
:class=
"
{ mr10: num == 1 }"
v-if="rightM
&&
rightList"
@mouseleave="outPut"
>
<slot
>
<op
v-if=
"rightList && rightList.slice(0, num).length > 0"
v-for=
"(v, i) in rightList.slice(0, num)"
:key=
"i"
:title=
"v.name"
:type=
"v.type"
:msg=
"v.msg"
:disable=
"v.disable"
@
click=
"v.click(row,$event)"
>
<Icon
:type=
"v.icon==null || v.icon==undefined ? 'ios-paper':v.icon"
v-if=
"v.type=='icon'|| v.type=='' || v.type==undefined || v.type==null "
/>
<span
v-if=
"v.name"
>
{{
v
.
name
}}
</span>
</op>
<span
class=
"elliPsis fwBold"
slot=
"elliPsis"
v-if=
"rightList && rightList.length > num > 0"
>
<span
:class=
"
{ hide: inlines, mr10: !inlines }" @mouseenter="inFo"
>•••
</span
>
<span
class=
"mr10"
:class=
"
{ inline: inlines, hide: !inlines }">
<op
v-for=
"(value, index) in rightList.slice(num)"
:key=
"index"
:title=
"value.name"
:type=
"value.type"
:msg=
"value.msg"
:disable=
"value.disable"
@
click=
"value.click(row,$event)"
v-if=
"rightList && rightList.slice(num).length >= num"
>
<Icon
:type=
"value.icon==''?'ios-paper':value.icon"
v-if=
"value.type=='icon'|| value.type=='' || value.type==undefined || value.type==null"
/>
<span
v-if=
"value.name"
>
{{
value
.
name
}}
</span>
</op>
</span>
</span>
</slot>
<div
class=
"rightM pr"
v-if=
"rightM && rightList"
>
<div
class=
"flex rightMbtns mr10"
:class=
"
{'pa':!more}" @mouseleave="more=true" >
<slot>
<op
class=
"mr5 opBtns tc"
v-if=
"btnBoxList && btnBoxList.length > 0"
v-for=
"(v, i) in btnBoxList"
:key=
"i"
:title=
"v.name"
:type=
"v.type"
:msg=
"v.msg"
:disable=
"v.disable == null || v.disable == undefined ? false : true"
@
click
.
native=
"v.click(row,$event)"
>
<Icon
:type=
"v.icon == null || v.icon == undefined ? 'ios-paper' : v.icon"
v-if=
"
v.type == 'icon' ||
v.type == '' ||
v.type == undefined ||
v.type == null
"
/>
<span
v-if=
"v.name"
>
{{
v
.
name
}}
</span>
</op>
<div
class=
"elliPsis fwBold mr10"
v-if=
"num
<rightList
.
length
&&
more
"
@
mouseenter=
"more=false"
>
•••
</div>
</slot>
</div>
</div>
</
template
>
<
script
>
export
default
{
name
:
"rm"
,
data
()
{
return
{
inlines
:
false
,
btnBoxList
:
[],
more
:
true
,
};
},
props
:
{
row
:
{
type
:[
Object
,
Array
],
default
:
[]
type
:
[
Object
,
Array
],
default
:
[]
,
},
rightList
:
{
type
:[
Object
,
Array
]
,
type
:
Array
,
default
:
[],
},
num
:
{
...
...
@@ -75,25 +65,44 @@ export default {
},
},
mounted
()
{
// console.log("$slots",this.$slots,this.$slots.default)
},
methods
:
{
inFo
()
{
this
.
inlines
=
true
;
},
outPut
()
{
this
.
inlines
=
false
;
},
// hello(row,event){
// console.log('111',row,event)
// }
},
computed
:{
btnBoxList
(){
if
(
this
.
num
>=
this
.
rightList
.
length
){
return
this
.
rightList
;
}
else
{
if
(
this
.
more
)
return
this
.
rightList
.
slice
(
0
,
this
.
num
);
else
return
this
.
rightList
;
}
}
}
};
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
>
.rightM {
overflow: visible;
cursor: pointer;
height: auto;
width: 100%;
height: 100%;
.elliPsis {
color: #2680eb;
}
.rightMbtns{
background: #ffffff;
right: 0;
top:-12px;
z-index: 99;
}
.opBtns{
min-width: 55px;
}
}
</
style
>
\ No newline at end of file
pages/project/project/add.vue
View file @
64af1e23
...
...
@@ -199,7 +199,7 @@ export default {
}
Api
.
create
(
this
.
entity
)
.
then
((
r
)
=>
{
debugger
;
if
(
r
.
success
)
{
this
.
$Message
.
success
(
"保存成功"
);
//添加当前登陆人为项目经理
...
...
plugins/iview.js
View file @
64af1e23
...
...
@@ -171,12 +171,10 @@ Vue.component("FilesViewer", FilesViewer)
Vue
.
use
(
Contextmenu
);
//注入mock
// require("../mock")
// Vue.component("Vcard", Vcard)
// Vue.component("BtnBox", BtnBox)
// Vue.component("RightM", RightM)
//注入mock
// require("../mock")
require
(
"../mock"
)
Vue
.
component
(
"Vcard"
,
Vcard
)
Vue
.
component
(
"BtnBox"
,
BtnBox
)
Vue
.
component
(
"RightM"
,
RightM
)
Vue
.
prototype
.
$api
=
request
;
Vue
.
prototype
.
$http
=
Api
;
...
...
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