Commit 6e251abc authored by 高滢's avatar 高滢

feat(投资): 公司下拉框延迟问题

parent a25a7bd1
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<PageCard title="年度工程资金计划统计"> <PageCard title="年度工程资金计划统计">
<div> <div>
<Tabs v-model:activeKey="planType" size="large" @change="clickTab"> <Tabs v-model:activeKey="planType" size="large" @change="clickTab">
<a-tab-pane key="计划投资项目" tab="计划投资项目"></a-tab-pane> <a-tab-pane key="计划投资项目" tab="计划投资项目" />
<a-tab-pane key="已竣工验收项目" tab="已竣工验收项目"></a-tab-pane> <a-tab-pane key="已竣工验收项目" tab="已竣工验收项目" />
</Tabs> </Tabs>
</div> </div>
<BasicForm ref="formElRef" @register="registerForm"> <BasicForm ref="formElRef" @register="registerForm">
...@@ -31,36 +31,50 @@ ...@@ -31,36 +31,50 @@
</div> </div>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import {onMounted, ref} from 'vue'; import {onMounted, ref, unref} from 'vue';
import {Table,Tabs} from 'ant-design-vue'; import { Table, Tabs } from 'ant-design-vue';
import {BasicForm, FormActionType, useForm} from '@/components/Form'; import {BasicForm, FormActionType, FormProps, useForm} from '@/components/Form';
import {useModal} from '@/components/Modal'; import { useModal } from '@/components/Modal';
import {searchFormSchema, searchSchema} from './data'; import { searchSchema } from './data';
import PageCard from '@/components/Page/src/PageCard.vue'; import PageCard from '@/components/Page/src/PageCard.vue';
import {useRouter} from 'vue-router'; import { useRouter } from 'vue-router';
import {exportOverDueFundsCompeleted, exportOverDueFundsPlan, getListAll,} from '@/api/project/completed'; import {
import CompletedStatisticWindow from '@/views/completed/completedStatisticWindow.vue'; exportOverDueFundsCompeleted,
import {BasicColumn} from '@/components/Table'; exportOverDueFundsPlan,
import {downloadByData} from '@/utils/file/download'; getListAll,
} from '@/api/project/completed';
import CompletedStatisticWindow from '@/views/completed/completedStatisticWindow.vue';
import { BasicColumn } from '@/components/Table';
import { downloadByData } from '@/utils/file/download';
import { getDepartmentList } from '@/api/project/settlementManage';
const { push } = useRouter(); const { push } = useRouter();
onMounted(async () => {
getStatisticList();
});
const planType = ref('计划投资项目'); const planType = ref('计划投资项目');
defineOptions({ name: 'MonthlyPlan' }); defineOptions({ name: 'MonthlyPlan' });
const [register, { openModal: openModal }] = useModal(); const [register, { openModal: openModal }] = useModal();
const formElRef = ref<Nullable<FormActionType>>(null); const formElRef = ref<FormActionType>();
const [registerForm, { getFieldsValue, setFieldsValue }] = useForm({ const [registerForm, { getFieldsValue, setFieldsValue, updateSchema }] = useForm({
labelWidth: 90, labelWidth: 90,
baseColProps: { span: 24 }, baseColProps: { span: 24 },
schemas: searchSchema, schemas: searchSchema,
showActionButtonGroup: false, showActionButtonGroup: false,
}); });
onMounted(async () => {
const data = await getDepartmentList();
updateSchema({
field: 'company',
componentProps: {
options: unref(data),
placeholder: '公司名称',
},
});
getStatisticList();
});
const params = ref({ filingCycle: '2024', planType: '计划投资项目', company: '' }); const params = ref({ filingCycle: '2024', planType: '计划投资项目', company: '' });
const loadingRef = ref(false); const loadingRef = ref(false);
const columns = ref([]); const columns = ref([]);
function setRowClassName(record) { function setRowClassName(record) {
if (record.projectType === '总计') { if (record.projectType === '总计') {
return 'rowcolor'; return 'rowcolor';
......
...@@ -2,7 +2,6 @@ import { BasicColumn, FormSchema } from '@/components/Table'; ...@@ -2,7 +2,6 @@ import { BasicColumn, FormSchema } from '@/components/Table';
import { useUserStore } from '@/store/modules/user'; import { useUserStore } from '@/store/modules/user';
const deptId = '' + useUserStore().userInfo.deptParentId; const deptId = '' + useUserStore().userInfo.deptParentId;
type CheckedType = boolean | string | number;
//主模块-已竣工列表页 //主模块-已竣工列表页
export const columns: ( export const columns: (
| { dataIndex: string; width: number; title: string } | { dataIndex: string; width: number; title: string }
...@@ -103,11 +102,7 @@ export const searchSchema: FormSchema[] = [ ...@@ -103,11 +102,7 @@ export const searchSchema: FormSchema[] = [
component: 'Select', component: 'Select',
ifShow: deptId === '100', ifShow: deptId === '100',
componentProps: { componentProps: {
options: [ options: [],
{ label: '公司A', value: '0' },
{ label: '公司B', value: '1' },
{ label: '公司C', value: '2' },
],
placeholder: '公司名称', placeholder: '公司名称',
}, },
colProps: { span: 4 }, colProps: { span: 4 },
...@@ -128,6 +123,7 @@ export const searchSchema: FormSchema[] = [ ...@@ -128,6 +123,7 @@ export const searchSchema: FormSchema[] = [
colProps: { span: 4 }, colProps: { span: 4 },
}, },
]; ];
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{ {
field: 'filingCycle', field: 'filingCycle',
......
...@@ -197,29 +197,17 @@ ...@@ -197,29 +197,17 @@
fixed: undefined, fixed: undefined,
}, },
}); });
const deptId = ref(100); const deptId = useUserStore().userInfo.deptParentId
const mothCycle = ref({ const mothCycle = ref({});
// beginTime: '2024-07-01',
// endTime: '2024-09-02',
// fillCycle:'2024-09',
// isEdit: '0',
// deptNum: 12,
// noNum: 6,
});
onMounted(async () => { onMounted(async () => {
deptId.value = useUserStore().userInfo.deptParentId;
console.log('deptId',deptId.value)
const data = await getDepartmentList(); const data = await getDepartmentList();
searchFormSchema[1].componentProps.options = data; searchFormSchema[1].componentProps.options = data;
// deptId.value = useUserStore().userInfo.deptId;
let roles = useUserStore().userInfo.roles; let roles = useUserStore().userInfo.roles;
roles.forEach((item) => { roles.forEach((item) => {
if (item.role_key === 'approver') { if (item.role_key === 'approver') {
isExamine.value = true; isExamine.value = true;
} }
}); });
// const cycle = await getOverdueFundsMothCycel();
// mothCycle.value = cycle;
getSetCycle() getSetCycle()
console.log(cycle, "cycle") console.log(cycle, "cycle")
}); });
......
...@@ -35,12 +35,12 @@ ...@@ -35,12 +35,12 @@
import { BasicForm, useForm } from '@/components/Form'; import { BasicForm, useForm } from '@/components/Form';
import PageCard from '@/components/Page/src/PageCard.vue'; import PageCard from '@/components/Page/src/PageCard.vue';
import { Table, Tabs } from 'ant-design-vue'; import { Table, Tabs } from 'ant-design-vue';
import { onMounted, ref } from 'vue'; import { onMounted, ref, unref } from 'vue';
import { import {
getBasicColumns, getBasicColumns,
searchForm, searchForm,
} from '@/views/engineeringProject/statisticEngineering/statisticData'; } from '@/views/engineeringProject/statisticEngineering/statisticData';
import { getSelectDeptById, getStatistic } from '@/api/project/monthlyPlan'; import { getSelectDeptById } from '@/api/project/monthlyPlan';
import { import {
exportStatisticEngine, exportStatisticEngine,
getStatisticEngineProject, getStatisticEngineProject,
...@@ -53,13 +53,19 @@ ...@@ -53,13 +53,19 @@
const [register, { openModal: openModal }] = useModal(); const [register, { openModal: openModal }] = useModal();
onMounted(async () => { onMounted(async () => {
const data = await getSelectDeptById(); const data = await getSelectDeptById();
searchForm[2].componentProps.options = data; updateSchema({
field: 'company',
componentProps: {
options: unref(data),
placeholder: '公司名称',
},
});
getStatisticList(); getStatisticList();
}); });
const dataSource = ref([]); const dataSource = ref([]);
const loadingRef = ref(false); const loadingRef = ref(false);
const params = ref({ filingCycle: '2024', planType: '自投', company: '' }); const params = ref({ filingCycle: '2024', planType: '自投', company: '' });
const [registerForm, { getFieldsValue, setFieldsValue }] = useForm({ const [registerForm, { getFieldsValue, setFieldsValue, updateSchema }] = useForm({
labelWidth: 90, labelWidth: 90,
baseColProps: { span: 24 }, baseColProps: { span: 24 },
schemas: searchForm, schemas: searchForm,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment