mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-17 06:32:51 +00:00
feat 导出前端页
This commit is contained in:
parent
16ea92c970
commit
2cf661b54f
@ -72,6 +72,7 @@
|
|||||||
<DropdownItem name="exportTask">{{$L('导出任务统计')}}</DropdownItem>
|
<DropdownItem name="exportTask">{{$L('导出任务统计')}}</DropdownItem>
|
||||||
<DropdownItem name="exportOverdueTask">{{$L('导出超期任务')}}</DropdownItem>
|
<DropdownItem name="exportOverdueTask">{{$L('导出超期任务')}}</DropdownItem>
|
||||||
<DropdownItem name="exportCheckin">{{$L('导出签到数据')}}</DropdownItem>
|
<DropdownItem name="exportCheckin">{{$L('导出签到数据')}}</DropdownItem>
|
||||||
|
<DropdownItem name="exportWorkflow">{{$L('导出审批数据')}}</DropdownItem>
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
<!-- 其他菜单 -->
|
<!-- 其他菜单 -->
|
||||||
@ -247,6 +248,9 @@
|
|||||||
<!--导出签到数据-->
|
<!--导出签到数据-->
|
||||||
<CheckinExport v-model="exportCheckinShow"/>
|
<CheckinExport v-model="exportCheckinShow"/>
|
||||||
|
|
||||||
|
<!--导出审批数据-->
|
||||||
|
<WorkflowExport v-model="exportWorkflowShow"/>
|
||||||
|
|
||||||
<!--任务详情-->
|
<!--任务详情-->
|
||||||
<TaskModal ref="taskModal"/>
|
<TaskModal ref="taskModal"/>
|
||||||
|
|
||||||
@ -314,6 +318,7 @@ import DialogModal from "./manage/components/DialogModal";
|
|||||||
import TaskModal from "./manage/components/TaskModal";
|
import TaskModal from "./manage/components/TaskModal";
|
||||||
import CheckinExport from "./manage/components/CheckinExport";
|
import CheckinExport from "./manage/components/CheckinExport";
|
||||||
import TaskExport from "./manage/components/TaskExport";
|
import TaskExport from "./manage/components/TaskExport";
|
||||||
|
import WorkflowExport from "./manage/components/WorkflowExport";
|
||||||
import notificationKoro from "notification-koro1";
|
import notificationKoro from "notification-koro1";
|
||||||
import {Store} from "le5le-store";
|
import {Store} from "le5le-store";
|
||||||
|
|
||||||
@ -321,6 +326,7 @@ export default {
|
|||||||
components: {
|
components: {
|
||||||
TaskExport,
|
TaskExport,
|
||||||
CheckinExport,
|
CheckinExport,
|
||||||
|
WorkflowExport,
|
||||||
TaskModal,
|
TaskModal,
|
||||||
DialogModal,
|
DialogModal,
|
||||||
MeetingManager,
|
MeetingManager,
|
||||||
@ -358,6 +364,8 @@ export default {
|
|||||||
|
|
||||||
exportTaskShow: false,
|
exportTaskShow: false,
|
||||||
exportCheckinShow: false,
|
exportCheckinShow: false,
|
||||||
|
exportWorkflowShow: false,
|
||||||
|
|
||||||
|
|
||||||
dialogMsgSubscribe: null,
|
dialogMsgSubscribe: null,
|
||||||
|
|
||||||
@ -744,6 +752,9 @@ export default {
|
|||||||
case 'exportCheckin':
|
case 'exportCheckin':
|
||||||
this.exportCheckinShow = true;
|
this.exportCheckinShow = true;
|
||||||
return;
|
return;
|
||||||
|
case 'exportWorkflow':
|
||||||
|
this.exportWorkflowShow = true;
|
||||||
|
return;
|
||||||
case 'workReport':
|
case 'workReport':
|
||||||
if (this.reportUnreadNumber > 0) {
|
if (this.reportUnreadNumber > 0) {
|
||||||
this.reportTabs = "receive";
|
this.reportTabs = "receive";
|
||||||
|
|||||||
133
resources/assets/js/pages/manage/components/WorkflowExport.vue
Normal file
133
resources/assets/js/pages/manage/components/WorkflowExport.vue
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
<template>
|
||||||
|
<Modal
|
||||||
|
v-model="show"
|
||||||
|
:title="$L('导出审批数据')"
|
||||||
|
:mask-closable="false">
|
||||||
|
<Form ref="exportTask" :model="formData" label-width="auto" @submit.native.prevent>
|
||||||
|
<FormItem :label="$L('审批类型')">
|
||||||
|
<Select v-model="formData.proc_def_name" @on-open-change="getProcName">
|
||||||
|
<Option v-for="(item, key) in procList" :value="item.name" :key="key" >{{ item.name }}</Option>
|
||||||
|
</Select>
|
||||||
|
</FormItem>
|
||||||
|
<FormItem :label="$L('时间范围')">
|
||||||
|
<DatePicker
|
||||||
|
v-model="formData.date"
|
||||||
|
type="daterange"
|
||||||
|
format="yyyy/MM/dd"
|
||||||
|
style="width:100%"
|
||||||
|
:placeholder="$L('请选择时间')"/>
|
||||||
|
<div class="form-tip checkin-export-quick-select">
|
||||||
|
<span>{{$L('快捷选择')}}:</span>
|
||||||
|
<em @click="formData.date=dateShortcuts('prev')">{{$L('上个月')}}</em>
|
||||||
|
<em @click="formData.date=dateShortcuts('this')">{{$L('这个月')}}</em>
|
||||||
|
</div>
|
||||||
|
</FormItem>
|
||||||
|
<FormItem prop="type" :label="$L('导出类型')">
|
||||||
|
<RadioGroup v-model="formData.is_finished">
|
||||||
|
<Radio label="0">{{$L('未完成')}}</Radio>
|
||||||
|
<Radio label="1">{{$L('已完成')}}</Radio>
|
||||||
|
</RadioGroup>
|
||||||
|
</FormItem>
|
||||||
|
</Form>
|
||||||
|
<div slot="footer" class="adaption">
|
||||||
|
<Button type="default" @click="show=false">{{$L('取消')}}</Button>
|
||||||
|
<Button type="primary" :loading="loadIng > 0" @click="onExport">{{$L('导出')}}</Button>
|
||||||
|
</div>
|
||||||
|
</Modal>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.checkin-export-quick-select {
|
||||||
|
> span {
|
||||||
|
margin-right: 4px;
|
||||||
|
}
|
||||||
|
> em {
|
||||||
|
margin-right: 4px;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #2b85e4;
|
||||||
|
font-style: normal;
|
||||||
|
&:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
import UserInput from "../../../components/UserInput";
|
||||||
|
export default {
|
||||||
|
name: "WorkflowExport",
|
||||||
|
components: {UserInput},
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
show: this.value,
|
||||||
|
loadIng: 0,
|
||||||
|
formData: {
|
||||||
|
proc_def_name: '',
|
||||||
|
date: [],
|
||||||
|
is_finished:'1',
|
||||||
|
},
|
||||||
|
procList:[],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
watch: {
|
||||||
|
value(v) {
|
||||||
|
this.show = v;
|
||||||
|
},
|
||||||
|
show(v) {
|
||||||
|
this.value !== v && this.$emit("input", v)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
dateShortcuts(act) {
|
||||||
|
if (act === 'prev') {
|
||||||
|
return [$A.getSpecifyDate('上个月'), $A.getSpecifyDate('上个月结束')];
|
||||||
|
} else if (act === 'this') {
|
||||||
|
return [$A.getSpecifyDate('本月'), $A.getSpecifyDate('本月结束')]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
getProcName(){
|
||||||
|
this.loadIng++;
|
||||||
|
this.$store.dispatch("call", {
|
||||||
|
url: 'workflow/procdef/all',
|
||||||
|
method: 'post'
|
||||||
|
}).then(({data}) => {
|
||||||
|
this.procList = data['rows'];
|
||||||
|
|
||||||
|
}).catch(({msg}) => {
|
||||||
|
$A.modalError(msg);
|
||||||
|
}).finally(_ => {
|
||||||
|
this.loadIng--;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
onExport() {
|
||||||
|
if (this.loadIng > 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.loadIng++;
|
||||||
|
this.$store.dispatch("call", {
|
||||||
|
url: 'workflow/export',
|
||||||
|
data: this.formData,
|
||||||
|
}).then(({data}) => {
|
||||||
|
this.show = false;
|
||||||
|
this.$store.dispatch('downUrl', {
|
||||||
|
url: data.url
|
||||||
|
});
|
||||||
|
}).catch(({msg}) => {
|
||||||
|
$A.modalError(msg);
|
||||||
|
}).finally(_ => {
|
||||||
|
this.loadIng--;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Loading…
x
Reference in New Issue
Block a user