mirror of
https://github.com/kuaifan/dootask.git
synced 2026-06-28 02:02:14 +00:00
TagInput:
- cut prop 支持字符串或字符串数组,多分隔符任一匹配即切;
v-model 写回用第一个分隔符 (joinChar) 拼接保持向后兼容
- 修复 max 仅在 cut 分隔符路径生效,回车/blur/paste 路径未查 max 的 bug
- 修复 data() 初始化与 watch(value) 用硬编码 ',' 切分,
统一走 joinChar (单一输出分隔符) 还原 v-model,避免含空格的列名
(如项目模板 'Sprint 1') 被切碎
- 修复 watch(value) 空值/null 时不清空 disSource 的潜在残留数据
- v-for 加 :key='text',配合初始化去重避免拖拽错位
- 重复 tag 由静默忽略改为提示「该标签已存在」
- 编辑 tag 加 dedup 检查,重命名成已有 tag 文本时阻止关闭
- 粘贴改为按 cut 切分逐个 addTag;addTag 返回 boolean,
pasteText 在 max 满时 break 短路
- splitByCuts/parseValue 拆分:回切用 joinChar,paste/输入用 cutPattern
- 拼接翻译 '最多只能添加X个' 改为 $L('最多只能添加(*)个', max);
新增「最多只能添加(*)个」「该标签已存在」到 language/original-web.txt
manage.vue:
- 创建项目任务列表启用 :cut=\"[',', ',', ' ']\",支持半角/全角逗号/空格
IME (compositionstart/end 时序不可靠,统一走 @on-keydown + W3C 标准 229 守卫):
- login/ProjectPanel/TaskAdd/UserTagsModal 的 onXxxKeydown 加
isComposing || key=='Process' || keyCode==229 三重守卫,
与 TagInput.downEnter 风格统一
- file.vue 块模式重命名 onKeydown 用 \$nextTick 包 onEnter,
避免 keydown 早于 input 事件 commit v-model 导致少一个字符
AbstractModel.performInsertOrIgnore:
- \$uniqueBy 不为 null 时抛 InvalidArgumentException;
MySQL INSERT IGNORE 无法按指定列 scope 冲突,与框架 ON CONFLICT 语义不一致
- lastInsertId 仅在 > 0 时回填主键;
避免在无 auto_increment 列的表上把业务设置的 PK 覆盖为 0
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
DooTask - Open Source Task Management System
English | 中文文档
QQ Group
- Group Number:
546574618
📍 Migration from 0.x to 1.x
- Please ensure to back up your data before upgrading!
- If the upgrade fails, try running
./cmd updatemultiple times. - If you encounter "Container xxx not found" during upgrade, run
./cmd reupand then execute./cmd update. - If you see a 502 error after upgrading, run
./cmd reupto restart the services. - If you encounter "Application 'xxx' not installed" after upgrading, log in with the admin account and install the relevant applications from the App Store.
Installation Requirements
- Required:
Docker v20.10+andDocker Compose v2.0+ - Supported Systems:
CentOS/Debian/Ubuntu/macOSand other Linux/Unix systems - Hardware Recommendation: 2+ cores, 4GB+ memory
- Database: MariaDB (provided by the default Docker Compose
mariadbservice) - Special Note: Windows users can install Linux environment using WSL2 before installing DooTask.
Deploy Project
# 1、Clone the project to your local machine or server
# Clone project from GitHub
git clone --depth=1 https://github.com/kuaifan/dootask.git
# Or you can use Gitee
git clone --depth=1 https://gitee.com/aipaw/dootask.git
# 2、Enter directory
cd dootask
# 3、One-click installation (Custom port installation: ./cmd install --port 80)
./cmd install
Reset Password
# Reset default administrator password
./cmd repassword
Change Port
# This method only changes HTTP port. For HTTPS port, please read SSL configuration below
./cmd port 80
Stop Service
./cmd down
Start Service
./cmd up
Development & Build
Please ensure you have installed NodeJs 20+
# Development mode
./cmd dev
# Build project (This is for web client. For desktop apps, refer to ".github/workflows/publish.yml")
./cmd prod
SSL Configuration
Method 1: Automatic Configuration
# Run command and follow the prompts
./cmd https
Method 2: Nginx Proxy Configuration
# 1、Add Nginx proxy configuration
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 2、Run command (To cancel Nginx proxy configuration: ./cmd https close)
./cmd https agent
Upgrade & Update
Note: Please backup your data before upgrading!
./cmd update
- Please retry if upgrade fails across major versions.
- If you encounter 502 errors after upgrade, run
./cmd reupto restart services.
Project Migration
After installing the new project, follow these steps to complete migration:
1、Backup the MariaDB database
# Run command in the old project
./cmd mysql backup
./cmd mysqlis the CLI subcommand name; backups run against the MariaDB container.
2、Copy the following files and directories from old project to the same paths in new project
Database backup filedocker/appstorepublic/uploads
3、Restore database to new project
# Run command in the new project
./cmd mysql recovery
Uninstall Project
./cmd uninstall
More Commands
./cmd help
Description
DooTask是一款开源在线项目任务管理工具,提供各类文档协作工具、在线思维导图、在线流程图、项目管理、任务分发、即时IM,文件管理等工具;同时消息功能使用非对称加密技术让你的沟通更安全。
dootaskproject-managementproject-managerremote-worktask-management-systemtask-managerteam-chatto-dotodo
Readme
AGPL-3.0
401 MiB
Languages
PHP
58.6%
Vue
36.3%
HTML
3.1%
Shell
1%
Less
0.5%
Other
0.5%