Browse Source

feat: 导入项目,更新项目

pull/1/head
song 4 years ago
parent
commit
5e06adf5a3
  1. 1
      CHANGELOG.md
  2. 13
      src/pages/project/project.vue
  3. 54
      src/plugins/p-wbs-import/p-wbs-import.vue
  4. 12
      src/store/project/mutations.js
  5. 6
      src/store/project/state.js

1
CHANGELOG.md

@ -88,6 +88,7 @@
- | 修改报错 | [531c14d](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/531c14d)
- | 修改接口路径 | [df6acf2](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/df6acf2)
- | 修改角色栏组件 | [a54c601](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/a54c601)
- | 切换日历时查询小红点 | [7091789](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/7091789)
- | 定期任务接口 | [aa4981c](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/aa4981c)
- | 定期任务插件 | [92b3254](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/92b3254)
- | 定期任务未加载时,显示空的时间轴并能上下滑动 | [ce38093](https://dd.tall.wiki/gitea/ccsens_fe/TALL-MUI-3/commits/ce38093)

13
src/pages/project/project.vue

@ -1,17 +1,5 @@
<template>
<view :style="{ height: height }" class="flex flex-col overflow-hidden u-font-14">
<!-- 全局提示框 -->
<u-alert-tips
class="top-0 -inset-x-0"
style="position: fixed !important; z-index: 999"
type="error"
:close-able="true"
:title="alert.title"
:show="alert.show"
:description="alert.description"
@close="alert.show = false"
></u-alert-tips>
<!-- 标题栏 -->
<Title />
@ -40,7 +28,6 @@ export default {
...mapState('user', ['user', 'token']),
...mapState('role', ['visibleRoles', 'roleId']),
...mapState('task', ['timeNode', 'timeUnit', 'tasks']),
...mapState('project', ['alert']),
...mapGetters('task', ['timeGranularity']),
},

54
src/plugins/p-wbs-import/p-wbs-import.vue

@ -1,11 +1,14 @@
<template>
<view>
<view @tap="handleUpload">{{ task.name }}</view>
<view @tap="handleUpload" v-if="task.name === '导入WBS新建项目'">{{ task.name }}</view>
<view @tap="handleUpdate" v-if="task.name === '导入WBS更新项目'">{{ task.name }}</view>
<!-- 全局提示框 -->
<u-top-tips ref="uTips"></u-top-tips>
</view>
</template>
<script>
import { mapState, mapMutations } from 'vuex';
import { mapGetters, mapMutations } from 'vuex';
export default {
name: 'p-wbs-import',
@ -19,7 +22,10 @@ export default {
return {};
},
computed: mapState('project', ['alert']),
computed: {
...mapGetters('user', ['userId']),
...mapGetters('project', ['projectId']),
},
methods: {
...mapMutations('project', ['setShowAlert']),
@ -30,11 +36,51 @@ export default {
const data = await this.$u.api.import();
// WBS
//
this.onUploadSuccess();
setTimeout(() => {
this.$u.route('/pages/project/project', {
u: this.userId,
p: data.id,
pname: data.pname,
url: data.url,
});
}, 2000);
} catch (error) {
this.onUploadError(error);
}
},
//
// TODO:
async handleUpdate() {
try {
const data = await this.$u.api.import({ projectId: this.projectId });
console.log('data: ', data);
// WBS
//
this.onUploadSuccess();
} catch (error) {
this.setShowAlert(error);
this.onUploadError(error);
}
},
//
onUploadSuccess() {
this.$refs.uTips.show({
title: '导入成功,即将打开新项目',
type: 'success',
duration: '3000',
});
},
//
onUploadError(error) {
this.$refs.uTips.show({
title: error || '导入失败',
type: 'error',
duration: '6000',
});
},
},
};
</script>

12
src/store/project/mutations.js

@ -30,18 +30,6 @@ const mutations = {
state.project.name = data;
},
/**
* 设置alert展示消息
* @param { object } state
* @param { Boolean } event
*/
setShowAlert(state, event) {
state.alert.description = event || '发生了点小意外';
state.alert.show = true;
setTimeout(() => (state.alert.show = false), 10000);
},
/**
* 设置小红点
* @param { object } state

6
src/store/project/state.js

@ -2,12 +2,6 @@
const state = {
project: { name: '加载中...' }, // 当前项目信息
projects: [], // 项目列表
alert: {
// 全局提示框
show: false,
title: '',
description: '',
},
dotList: [], // 小红点
};

Loading…
Cancel
Save