mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-12 11:19:56 +00:00
perf: 添加任务支持自定义协助人
This commit is contained in:
parent
e27ea9e117
commit
4703b03b82
@ -363,7 +363,8 @@ class ProjectTask extends AbstractModel
|
||||
$content = $data['content'];
|
||||
$times = $data['times'];
|
||||
$owner = $data['owner'];
|
||||
$add_assist = intval($data['add_assist']);
|
||||
$add_assist = intval($data['add_assist']); // 将自己添加到参与者
|
||||
$assist = $data['assist']; // 参与者,此项设置时 add_assist 无效
|
||||
$subtasks = $data['subtasks'];
|
||||
$p_level = intval($data['p_level']);
|
||||
$p_name = $data['p_name'];
|
||||
@ -438,9 +439,12 @@ class ProjectTask extends AbstractModel
|
||||
}
|
||||
$owner = $tmpArray;
|
||||
// 协助人员
|
||||
$assist = [];
|
||||
if (!in_array($userid, $owner) && $add_assist) {
|
||||
$assist = [$userid];
|
||||
$assist = is_array($assist) ? $assist : [];
|
||||
if (empty($assist)) {
|
||||
// 添加自己
|
||||
if (!in_array($userid, $owner) && $add_assist) {
|
||||
$assist = [$userid];
|
||||
}
|
||||
}
|
||||
// 创建人
|
||||
$task->userid = $userid;
|
||||
|
||||
@ -78,7 +78,7 @@
|
||||
type="datetimerange"
|
||||
@on-change="taskTimeChange(addData.times)"/>
|
||||
</FormItem>
|
||||
<FormItem :label="$L('任务负责人')" >
|
||||
<FormItem :label="$L('负责人')" >
|
||||
<UserSelect
|
||||
v-model="addData.owner"
|
||||
:multiple-max="10"
|
||||
@ -86,12 +86,16 @@
|
||||
:project-id="addData.project_id"
|
||||
:avatar-size="24"
|
||||
border/>
|
||||
<div v-if="showAddAssist" class="task-add-assist">
|
||||
<Checkbox v-model="addData.add_assist" :true-value="1" :false-value="0">{{$L('加入任务协助人员列表')}}</Checkbox>
|
||||
<ETooltip :disabled="$isEEUiApp || windowTouch" :content="$L('你不是任务负责人时建议加入任务协助人员列表')">
|
||||
<Icon type="ios-alert-outline" />
|
||||
</ETooltip>
|
||||
</div>
|
||||
</FormItem>
|
||||
<FormItem :label="$L('协助人员')" >
|
||||
<UserSelect
|
||||
v-model="addData.assist"
|
||||
:multiple-max="10"
|
||||
:title="$L('选择任务协助人员')"
|
||||
:project-id="addData.project_id"
|
||||
:disabled-choice="addData.owner"
|
||||
:avatar-size="24"
|
||||
border/>
|
||||
</FormItem>
|
||||
<FormItem>
|
||||
<div slot="label">
|
||||
@ -223,7 +227,7 @@ export default {
|
||||
name: "",
|
||||
content: "",
|
||||
owner: [],
|
||||
add_assist: 1,
|
||||
assist: [],
|
||||
project_id: 0,
|
||||
column_id: 0,
|
||||
times: [],
|
||||
@ -306,14 +310,18 @@ export default {
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
|
||||
showAddAssist() {
|
||||
return !this.addData.owner.includes(this.userId);
|
||||
}
|
||||
},
|
||||
|
||||
watch: {
|
||||
'addData.owner'(owner) {
|
||||
this.addData.assist = this.addData.assist.filter(item => {
|
||||
return owner.indexOf(item) === -1;
|
||||
})
|
||||
if (owner.length === 0 && this.addData.assist.length === 0) {
|
||||
this.addData.assist = [this.userId];
|
||||
}
|
||||
},
|
||||
'addData.project_id'(projectId) {
|
||||
if (projectId > 0) {
|
||||
$A.IDBSave("cacheAddTaskProjectId", projectId);
|
||||
@ -537,7 +545,7 @@ export default {
|
||||
name: "",
|
||||
content: "",
|
||||
owner: [],
|
||||
add_assist: 1,
|
||||
assist: [],
|
||||
column_id: 0,
|
||||
times: [],
|
||||
subtasks: [],
|
||||
|
||||
@ -162,6 +162,7 @@
|
||||
.taskfont {
|
||||
display: inline-block;
|
||||
transform: scale(0.9);
|
||||
opacity: 0.8;
|
||||
font-size: 12px;
|
||||
margin-right: 0;
|
||||
}
|
||||
@ -210,16 +211,6 @@
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
.task-add-assist {
|
||||
margin-top: 6px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
.ivu-icon {
|
||||
font-size: 16px;
|
||||
color: $primary-desc-color;
|
||||
}
|
||||
}
|
||||
.ivu-modal-footer {
|
||||
padding: 26px 0 22px !important;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user