diff --git a/CHANGELOG.md b/CHANGELOG.md index fbf2701..e8e1c4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -# 0.1.0 (2021-09-02) +# 0.1.0 (2021-09-03) ### 🌟 新功能 范围|描述|commitId @@ -23,6 +23,7 @@ - | 任务状态时间显示 | [56f5183](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/56f5183) - | 任务进行中状态数字 | [27b7326](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/27b7326) - | 全局插件及默认插件位置修改 | [6c80d08](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/6c80d08) + - | 分享项目和点击分享的项目链接 | [032d83c](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/032d83c) - | 向右箭头图标变化 | [8e9ca55](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/8e9ca55) - | 字体大小更改 | [82cfdd4](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/82cfdd4) - | 存token | [b8a178d](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/b8a178d) @@ -35,6 +36,7 @@ - | 提交到本地 | [9cbe411](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/9cbe411) - | 插件参数处理调整 | [a3e68d3](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/a3e68d3) - | 插件数据获取 | [5b91bdc](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/5b91bdc) + - | 新建形目 | [f7d7108](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/f7d7108) - | 日历定位;合并 | [ea3f937](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/ea3f937) - | 日常任务插件调整 | [c1881f9](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/c1881f9) - | 时间基准线,默认插件 | [a33ba1e](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/a33ba1e) @@ -46,6 +48,7 @@ - | 检查交付物 | [9d92be5](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/9d92be5) - | 模拟接口测试 | [69e7931](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/69e7931) - | 添加内置插件-交付物 | [6e0bc46](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/6e0bc46) + - | 模拟接口测试 | [69e7931](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/69e7931) - | 添加子任务插件 子项目插件 | [7bda7e2](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/7bda7e2) - | 添加时间轴上下滚动 | [2b81bbc](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/2b81bbc) - | 添加项目排序 | [a0b491b](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/a0b491b) @@ -61,6 +64,7 @@ - | 面变化首页变化 | [5e860f1](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/5e860f1) - | 项目api url设置 | [6cd5245](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/6cd5245) - | 项目列表, 项目url | [32e005b](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/32e005b) + - | 项目创建分享链接 | [eb2c4ba](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/eb2c4ba) - | 首页项目样式改变 | [8514c85](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/8514c85) @@ -157,6 +161,7 @@ 范围|描述|commitId --|--|-- - | README.md | [ab0eb05](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/ab0eb05) + - | 新建项目,分享项目样式修改 | [4524d4a](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/4524d4a) ### 🔧 测试 @@ -197,11 +202,13 @@ - | 1.时间轴筛选相同的时间替换数据 2.整理代码 | [e082ccb](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e082ccb) - | 修改代码格式 | [14123d7](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/14123d7) - | 修改定期任务骨架屏高度 | [909a734](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/909a734) + - | 修改样式 | [322b0fb](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/322b0fb) - | 小红点api缓存修改 | [e992343](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e992343) - | 插件查询及展示 | [4dba770](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/4dba770) - | 整理代码 | [7a55315](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/7a55315) - | 日历的更改 | [7353ac8](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/7353ac8) - | 测试接口 | [215e074](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/215e074) + - | 添加弹框动画 | [8903854](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/8903854) - | 组件文件夹新建 | [22bfe7b](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/22bfe7b) - | 组件文件夹新建 | [17bb8c9](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/17bb8c9) - | 组件文件夹新建 | [1421504](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/1421504) @@ -234,4 +241,3 @@ - | style:index | [978f272](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/978f272) - | !2 基础模板v1.1.0 | [f5e61dd](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/f5e61dd) - | init | [c0f1deb](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/c0f1deb) - diff --git a/package.json b/package.json index 74c1510..bcc80e8 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "regenerator-runtime": "^0.12.1", "uview-ui": "^1.8.4", "vue": "^2.6.11", + "vue-clipboard2": "^0.3.1", "vuex": "^3.2.0" }, "devDependencies": { @@ -74,14 +75,12 @@ "eslint-plugin-prettier": "^3.3.1", "eslint-plugin-vue": "^6.2.2", "husky": "^3.0.9", - "jest": "^25.4.0", "lint-staged": "^11.0.0", "mini-types": "*", "miniprogram-api-typings": "*", "postcss": "^7.0.36", "postcss-comment": "^2.0.0", "prettier": "^2.2.1", - "puppeteer": "^10.2.0", "right-pad": "^1.0.1", "sass": "^1.38.2", "sass-loader": "^8.0.2", diff --git a/src/App.vue b/src/App.vue index e36ab95..ccee2d3 100644 --- a/src/App.vue +++ b/src/App.vue @@ -16,12 +16,14 @@ export default { if (!this.token) { // 不论有没有token都直接从userId获取token // token有过期时间 从本地获取可能是过期 干脆直接从userId获取 - if (!options.query || !options.query.u) { - // 参数里没有u (userId)提示 - this.$t.ui.showToast('缺少用户信息参数'); - } else { - const data = await this.getToken(options.query.u); - this.noPhone(data.phone); + if (!options.query.share) { + if (!options.query || !options.query.u) { + // 参数里没有u (userId)提示 + this.$t.ui.showToast('缺少用户信息参数'); + } else { + const data = await this.getToken(options.query.u); + this.noPhone(data.phone); + } } } // FIXME: 这里重复书写的 diff --git a/src/apis/project.js b/src/apis/project.js index 4832fa4..e255bf0 100644 --- a/src/apis/project.js +++ b/src/apis/project.js @@ -2,6 +2,12 @@ const install = (Vue, vm) => { vm.$u.api = { ...vm.$u.api } || {}; //根据id获取项目信息 vm.$u.api.findProjectById = param => vm.$u.post(`${uni.$t.domain}/project/findProjectById`, param); + + //创建分享连接 + vm.$u.api.createShare = param => vm.$u.post(`${uni.$t.domain}/share/create`, param); + + //点击分享连接 + vm.$u.api.clickShare = param => vm.$u.post(`${uni.$t.domain}/share/click`, param); }; export default { install }; diff --git a/src/common/styles/app.scss b/src/common/styles/app.scss index 8da9867..dbb6945 100644 --- a/src/common/styles/app.scss +++ b/src/common/styles/app.scss @@ -1,3 +1,6 @@ .min-0 { min-width: 0; } +.border-b-1 { + border-bottom-width: 1px; +} diff --git a/src/components/ShareProject/ShareProject.vue b/src/components/ShareProject/ShareProject.vue new file mode 100644 index 0000000..d8608a5 --- /dev/null +++ b/src/components/ShareProject/ShareProject.vue @@ -0,0 +1,231 @@ + + + + + diff --git a/src/components/Title/Title.vue b/src/components/Title/Title.vue index 9088b61..1180197 100644 --- a/src/components/Title/Title.vue +++ b/src/components/Title/Title.vue @@ -1,6 +1,6 @@ + diff --git a/src/components/Title/components/NewProjects.vue b/src/components/Title/components/NewProjects.vue new file mode 100644 index 0000000..c704367 --- /dev/null +++ b/src/components/Title/components/NewProjects.vue @@ -0,0 +1,320 @@ + + + + diff --git a/src/main.js b/src/main.js index 6ace7d3..5fa4fac 100644 --- a/src/main.js +++ b/src/main.js @@ -1,6 +1,7 @@ import App from './App'; import Tall from '@/utils/tall'; import Vue from 'vue'; +import VueClipboard from 'vue-clipboard2'; import dayjs from 'dayjs'; import plugin from '@/apis/plugin.js'; import project from '@/apis/project.js'; @@ -22,6 +23,8 @@ import wbs from '@/apis/wbs.js'; // Vue.use(indexedDB); //#endif +Vue.use(VueClipboard); + Vue.config.productionTip = false; Vue.prototype.$moment = dayjs; Vue.use(uView); diff --git a/src/pages/project/project.vue b/src/pages/project/project.vue index d5a4a41..8cd670c 100644 --- a/src/pages/project/project.vue +++ b/src/pages/project/project.vue @@ -36,7 +36,13 @@ export default { }, onLoad(options) { - this.init(options); + if (options.share && options.share === '1') { + console.log('是分享来的'); + this.shareInit(options); + } else { + console.log('不是分享来的'); + this.init(options); + } }, watch: { @@ -287,6 +293,40 @@ export default { } }, + // 分享链接来的初始化 + async shareInit(options) { + const user = JSON.parse(this.$t.storage.getStorageSync('user')); + if (user && user.id) { + await this.getToken(user.id); + const res = await this.clickShare({ code: options.shareId }); + if (res && res.projectId) { + let query = { ...this.$route.query }; + query = { + u: user.id, + p: res.projectId, + }; + this.$router.push({ path: this.$route.path, query }); + this.init(query); + } + } else { + this.$t.ui.showToast('缺少用户信息参数,请登录'); + } + }, + + /** + * 点击分享连接 + * @param {any} commit + * @param {object} param 请求参数 + */ + async clickShare(param) { + try { + const data = await this.$u.api.clickShare(param); + return data; + } catch (error) { + this.$t.ui.showToast(error.msg || '获取失败'); + } + }, + /** * 通过项目id获取项目信息 * @param {object} params 提交的参数