no message
This commit is contained in:
parent
3eeaa5752a
commit
d1b5179838
10
resources/assets/js/app.js
vendored
10
resources/assets/js/app.js
vendored
@ -29,8 +29,16 @@ Vue.component('TagInput', TagInput)
|
||||
Vue.component('TableAction', TableAction);
|
||||
Vue.component('UserAvatar', UserAvatar);
|
||||
|
||||
import { Tooltip } from 'element-ui';
|
||||
import {
|
||||
Tooltip,
|
||||
Dropdown,
|
||||
DropdownMenu,
|
||||
DropdownItem,
|
||||
} from 'element-ui';
|
||||
Vue.component('ETooltip', Tooltip);
|
||||
Vue.component('EDropdown', Dropdown);
|
||||
Vue.component('EDropdownMenu', DropdownMenu);
|
||||
Vue.component('EDropdownItem', DropdownItem);
|
||||
|
||||
const originalPush = VueRouter.prototype.push
|
||||
VueRouter.prototype.push = function push(location) {
|
||||
|
@ -72,21 +72,28 @@
|
||||
<em>({{column.project_task.length}})</em>
|
||||
</div>
|
||||
<div class="column-head-icon">
|
||||
<Poptip :ref="'poptip_' + column.id">
|
||||
<EDropdown trigger="click" @command="dropColumn(column, $event)">
|
||||
<Icon type="ios-more" />
|
||||
<div class="more-content" slot="content">
|
||||
<ul>
|
||||
<li @click="modifyColumn(column)"><Icon type="md-create" />{{$L('修改')}}</li>
|
||||
<li @click="removeColumn(column)"><Icon type="md-trash" />{{$L('删除')}}</li>
|
||||
<li class="divided"></li>
|
||||
<li class="title">{{$L('颜色')}}</li>
|
||||
<li v-for="(c, k) in colorList" :key="k" @click="saveColumn(column, column.name, c.color)">
|
||||
<EDropdownMenu slot="dropdown" class="project-list-column-more-content">
|
||||
<EDropdownItem command="modify">
|
||||
<div class="item">
|
||||
<Icon type="md-create" />{{$L('修改')}}
|
||||
</div>
|
||||
</EDropdownItem>
|
||||
<EDropdownItem command="delete">
|
||||
<div class="item">
|
||||
<Icon type="md-trash" />{{$L('删除')}}
|
||||
</div>
|
||||
</EDropdownItem>
|
||||
<EDropdownItem divided disabled>{{$L('颜色')}}</EDropdownItem>
|
||||
<EDropdownItem v-for="(c, k) in colorList" :key="k" :command="c">
|
||||
<div class="item">
|
||||
<i class="iconfont" :style="{color:c.color}" v-html="c.color == column.color ? '' : ''"></i>{{$L(c.name)}}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</Poptip>
|
||||
<Icon type="md-add" @click="addTopShow(column)" />
|
||||
</div>
|
||||
</EDropdownItem>
|
||||
</EDropdownMenu>
|
||||
</EDropdown>
|
||||
<Icon class="last" type="md-add" @click="addTopShow(column)" />
|
||||
</div>
|
||||
</div>
|
||||
<div :ref="'column_' + column.id" class="column-task overlay-y">
|
||||
@ -111,8 +118,15 @@
|
||||
@remove="sortUpdate">
|
||||
<div v-for="item in panelTask(column.project_task)" class="task-item task-draggable">
|
||||
<div :class="['task-head', item.desc ? 'has-desc' : '']">
|
||||
<i class="task-choose iconfont"></i>
|
||||
<div class="task-title"><pre>{{item.name}}</pre></div>
|
||||
<Icon type="ios-more" />
|
||||
<EDropdown trigger="click" @command="dropTask(item, $event)">
|
||||
<Icon type="ios-more" />
|
||||
<EDropdownMenu slot="dropdown">
|
||||
<EDropdownItem command="complete">{{$L('完成')}}</EDropdownItem>
|
||||
<EDropdownItem command="delete" divided>{{$L('删除')}}</EDropdownItem>
|
||||
</EDropdownMenu>
|
||||
</EDropdown>
|
||||
</div>
|
||||
<div v-if="item.desc" class="task-desc" v-html="item.desc"></div>
|
||||
<div v-if="item.task_tag.length > 0" class="task-tags">
|
||||
@ -725,6 +739,18 @@ export default {
|
||||
});
|
||||
},
|
||||
|
||||
dropColumn(column, command) {
|
||||
if (command === 'modify') {
|
||||
this.modifyColumn(column);
|
||||
}
|
||||
else if (command === 'delete') {
|
||||
this.removeColumn(column);
|
||||
}
|
||||
else if (command.name) {
|
||||
this.saveColumn(column, column.name, command.color)
|
||||
}
|
||||
},
|
||||
|
||||
modifyColumn(column) {
|
||||
$A.modalInput({
|
||||
value: column.name,
|
||||
@ -737,7 +763,6 @@ export default {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
this.$refs['poptip_' + column.id][0].handleClose();
|
||||
},
|
||||
|
||||
removeColumn(column) {
|
||||
@ -768,7 +793,6 @@ export default {
|
||||
});
|
||||
}
|
||||
});
|
||||
this.$refs['poptip_' + column.id][0].handleClose();
|
||||
},
|
||||
|
||||
saveColumn(column, name, color) {
|
||||
@ -796,7 +820,16 @@ export default {
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$refs['poptip_' + column.id][0].handleClose();
|
||||
},
|
||||
|
||||
dropTask(task, command) {
|
||||
switch (command) {
|
||||
case 'complete':
|
||||
break;
|
||||
|
||||
case 'delete':
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
onSetting() {
|
||||
|
10
resources/assets/sass/element.scss
vendored
10
resources/assets/sass/element.scss
vendored
@ -2,4 +2,14 @@ $--tooltip-fill: #585E6A;
|
||||
$--tooltip-border-color: #585E6A;
|
||||
$--tooltip-font-size: 14px;
|
||||
|
||||
@import "~element-ui/packages/theme-chalk/src/common/transition";
|
||||
@import "~element-ui/packages/theme-chalk/src/tooltip";
|
||||
@import "~element-ui/packages/theme-chalk/src/dropdown";
|
||||
@import "~element-ui/packages/theme-chalk/src/dropdown-menu";
|
||||
@import "~element-ui/packages/theme-chalk/src/dropdown-item";
|
||||
|
||||
|
||||
.el-dropdown-menu__item {
|
||||
min-width: 100px;
|
||||
line-height: 34px;
|
||||
}
|
||||
|
6
resources/assets/sass/iconfont.scss
vendored
6
resources/assets/sass/iconfont.scss
vendored
@ -1,8 +1,8 @@
|
||||
@font-face {
|
||||
font-family: 'iconfont'; /* Project id 2583385 */
|
||||
src: url('//at.alicdn.com/t/font_2583385_9mlcjsehf5c.woff2?t=1622711688395') format('woff2'),
|
||||
url('//at.alicdn.com/t/font_2583385_9mlcjsehf5c.woff?t=1622711688395') format('woff'),
|
||||
url('//at.alicdn.com/t/font_2583385_9mlcjsehf5c.ttf?t=1622711688395') format('truetype');
|
||||
src: url('//at.alicdn.com/t/font_2583385_e77s2y4tokk.woff2?t=1623151884621') format('woff2'),
|
||||
url('//at.alicdn.com/t/font_2583385_e77s2y4tokk.woff?t=1623151884621') format('woff'),
|
||||
url('//at.alicdn.com/t/font_2583385_e77s2y4tokk.ttf?t=1623151884621') format('truetype');
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
|
81
resources/assets/sass/project-list.scss
vendored
81
resources/assets/sass/project-list.scss
vendored
@ -228,9 +228,9 @@
|
||||
.column-head-icon {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 12px;
|
||||
margin-left: 16px;
|
||||
.ivu-icon {
|
||||
padding-left: 8px;
|
||||
padding-right: 8px;
|
||||
font-size: 16px;
|
||||
color: #aaaaaa;
|
||||
cursor: pointer;
|
||||
@ -240,51 +240,8 @@
|
||||
color: #888888;
|
||||
}
|
||||
}
|
||||
.ivu-poptip-popper {
|
||||
color: #515a6e;
|
||||
min-width: 130px;
|
||||
.ivu-poptip-body {
|
||||
padding: 0;
|
||||
}
|
||||
.more-content {
|
||||
ul {
|
||||
margin: 10px 0;
|
||||
> li {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
cursor: pointer;
|
||||
list-style: none;
|
||||
line-height: 30px;
|
||||
padding: 0 20px;
|
||||
> i {
|
||||
font-size: 18px;
|
||||
margin-right: 8px;
|
||||
padding: 0;
|
||||
color: #bbbbbb;
|
||||
&.ivu-icon {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
&.title,
|
||||
&.divided {
|
||||
font-size: 13px;
|
||||
color: #888888;
|
||||
cursor: default;
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
&.divided {
|
||||
margin-top: 5px;
|
||||
height: 6px;
|
||||
border-top: 1px solid #F4F4F5;
|
||||
}
|
||||
&:hover {
|
||||
background-color: #f1f1f1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.last {
|
||||
padding-right: 0;
|
||||
}
|
||||
}
|
||||
&.custom-color {
|
||||
@ -339,6 +296,14 @@
|
||||
.task-head {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
.task-choose {
|
||||
margin-right: 5px;
|
||||
font-size: 22px;
|
||||
color: #aaaaaa;
|
||||
height: 22px;
|
||||
line-height: 22px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.task-title {
|
||||
flex: 1;
|
||||
padding-top: 1px;
|
||||
@ -354,6 +319,10 @@
|
||||
font-size: 22px;
|
||||
color: #666666;
|
||||
margin-left: 8px;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
color: #555555;
|
||||
}
|
||||
}
|
||||
&.has-desc {
|
||||
.task-title {
|
||||
@ -598,3 +567,21 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
.project-list-column-more-content {
|
||||
> li {
|
||||
min-width: 130px;
|
||||
.item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
> i {
|
||||
font-size: 18px;
|
||||
margin-right: 8px;
|
||||
padding: 0;
|
||||
color: #bbbbbb;
|
||||
&.ivu-icon {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user