Commit 4f591afc authored by 小费同学阿's avatar 小费同学阿 💬

Merge remote-tracking branch 'origin/develop' into develop

parents 812caf8f 48b96216
...@@ -235,7 +235,7 @@ export const getAdvanceSchema = (itemNumber = 6): FormSchema[] => { ...@@ -235,7 +235,7 @@ export const getAdvanceSchema = (itemNumber = 6): FormSchema[] => {
label: `字段${index}`, label: `字段${index}`,
component: 'Input', component: 'Input',
colProps: { colProps: {
xl: 12, xl: 6,
xxl: 8, xxl: 8,
}, },
}); });
......
...@@ -15,13 +15,13 @@ ...@@ -15,13 +15,13 @@
import { ref, nextTick, defineProps, defineEmits, unref } from 'vue'; import { ref, nextTick, defineProps, defineEmits, unref } from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal'; import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, FormSchema, useForm } from '@/components/Form'; import { BasicForm, FormSchema, useForm } from '@/components/Form';
import { uploadApi } from '@/api/sys/upload'; import { exportData } from '@/api/project/export';
import { AnnexAdd } from '@/api/project/project';
import { performanceExport } from '@/api/project/detail/performance';
import { reject } from 'lodash-es';
import { downloadByData } from '@/utils/file/download'; import { downloadByData } from '@/utils/file/download';
const title = ref('');
const exProjectUrl=ref('')
const projectId = ref(0); const projectId = ref(0);
const searchData=ref({})
const schemas: FormSchema[] = [ const schemas: FormSchema[] = [
{ {
field: 'colums', field: 'colums',
...@@ -64,13 +64,15 @@ ...@@ -64,13 +64,15 @@
const [register, { closeModal }] = useModalInner((data) => { const [register, { closeModal }] = useModalInner((data) => {
console.log(111); console.log(111);
exProjectUrl.value=data.exportUrl;
if(data.title){
console.log(data.title,"title")
}
title.value = data.title;
searchData.value=data.searchData;
data && onDataReceive(data); data && onDataReceive(data);
}); });
// function handleVisibleChange(v) {
// v && props.userData && nextTick(() => onDataReceive(props.userData));
// }
function onDataReceive(data) { function onDataReceive(data) {
console.log('Data Received', data.exportData); console.log('Data Received', data.exportData);
...@@ -80,20 +82,17 @@ ...@@ -80,20 +82,17 @@
options: data.exportData, options: data.exportData,
}, },
}); });
// console.log(props.userData);
// projectId.value = data.projectId;
// console.log(projectId.value);
} }
function handleSubmit() { function handleSubmit() {
validate().then(async () => { validate().then(async () => {
const value = getFieldsValue(); const value = getFieldsValue();
console.log(value); console.log(value);
const data = await performanceExport({ const data = await exportData(exProjectUrl.value,{
colums: value.colums, colums: value.colums,
searchField: { biddingType: '施工' }, searchField: searchData.value,
}); });
downloadByData(data, 'export.xlsx'); console.log(title.value,"eeeeee");
downloadByData(data, title.value+'.xlsx');
emit('close'); emit('close');
closeModal(); closeModal();
}); });
......
...@@ -87,5 +87,7 @@ export const biddingPlanColumns = [ ...@@ -87,5 +87,7 @@ export const biddingPlanColumns = [
}, },
]; ];
export const exportUrl ="pro/reportCenter/settlement/export-settlement" export const exportUrl ="pro/reportCenter/settlement/export-settlement"
import { FormSchema, BasicColumn } from '@/components/Table'; import {FormSchema, BasicColumn, FormProps} from '@/components/Table';
import { uploadApi } from '@/api/sys/upload'; import { uploadApi } from '@/api/sys/upload';
export const formSchema: FormSchema[] = [ export const formSchema: FormSchema[] = [
{ {
...@@ -451,3 +451,330 @@ export const tabList = [ ...@@ -451,3 +451,330 @@ export const tabList = [
component: 'updateRecords', component: 'updateRecords',
}, },
]; ];
//查询条件
export function getFormConfig(): Partial<FormProps> {
return {
labelWidth: 100,
schemas: [
{
field: 'givenYear',
label: '填报年份',
component: 'DatePicker',
componentProps: {
placeholder: '选择填报周期',
picker: 'year',
valueFormat: 'YYYY',
format: 'YYYY',
style: {
width: '100%',
},
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
field: 'quarter',
label: '填报季度',
component: 'Select',
componentProps: {
options: [
{ label: '第一季度', value: '第一季度' },
{ label: '第二季度', value: '第二季度' },
{
label: '第三季度',
value: '第三季度',
},
{
label: '第四季度',
value: '第四季度',
},
],
placeholder: '季度',
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '立项投资额(万元)',
field: 'projectInvestment',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '资金来源',
field: 'fundingSource',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '招标方式',
field: 'biddingMethod',
labelWidth: '140px',
component: 'Select',
componentProps: {
options: [
{
label: '建委招标',
value: '1',
},
{
label: '平台招标',
value: '2',
},
{
label: '邀标比选',
value: '3',
},
{
label: '直接委托',
value: '4',
},
{
label: '评分定离',
value: '5',
},
],
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '合同类型',
field: 'contracYpe',
labelWidth: '140px',
component: 'Select',
componentProps: {
options: [
{
label: '施工',
value: '1',
},
{
label: '监理',
value: '2',
},
{
label: '设计',
value: '3',
},
{
label: '图审',
value: '4',
},
],
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '合同名称',
field: 'contractName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '甲方单位名称',
field: 'firstPartyName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '乙方单位名称',
field: 'secondPartyName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '合同形式',
field: 'formOfContract',
labelWidth: '140px',
component: 'Select',
componentProps: {
options: [
{
label: '固定总价',
value: '1',
},
{
label: '固定单价',
value: '2',
},
{
label: '费率',
value: '3',
},
{
label: '其他',
value: '4',
},
],
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '合同签订时间',
field: 'contractSigningTime',
labelWidth: '140px',
component: 'DatePicker',
componentProps: {
valueFormat: 'YYYY-MM-DD',
style:{
width:"100%"
}
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '竣工时间',
field: 'closingTime',
labelWidth: '140px',
component: 'DatePicker',
componentProps: {
valueFormat: 'YYYY-MM-DD',
style:{
width:"100%"
}
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '结算完成时间',
field: 'closingTimeDatetime',
labelWidth: '140px',
component: 'DatePicker',
componentProps: {
valueFormat: 'YYYY-MM-DD',
style:{
width:"100%"
}
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '合同金额(元)',
field: 'contractAmount',
labelWidth: '140px',
component: 'InputNumber',
componentProps: {
addonAfter: '元',
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '签证、变更金额(元)',
field: 'submittedForSettlement',
labelWidth: '140px',
component: 'InputNumber',
componentProps: {
addonAfter: '元',
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '结算报送金额(元)',
field: 'superContractScale',
labelWidth: '140px',
component: 'InputNumber',
componentProps: {
addonAfter: '元',
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '结算审定金额(元)',
field: 'sumOfMoney',
labelWidth: '140px',
component: 'InputNumber',
componentProps: {
addonAfter: '元',
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '结算审核金额超合同额比例',
field: 'proportionContractAmount',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '会议纪要',
field: 'meetingMinutes',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '备注',
field: 'remark',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
],
};
}
...@@ -29,12 +29,13 @@ ...@@ -29,12 +29,13 @@
<detaildrawer @register="registerDrawer"></detaildrawer> <detaildrawer @register="registerDrawer"></detaildrawer>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDrawer.vue'; import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDrawer.vue';
import { settlementManagementColumns, searchFormSchema } from './data'; import { settlementManagementColumns } from './data';
import {getFormConfig} from "@/views/statement/settlementManagementDrawer/detail.data"
import { BasicTable, useTable, TableAction } from '@/components/Table'; import { BasicTable, useTable, TableAction } from '@/components/Table';
import { getSettlementManageList } from '@/api/project/settlementManage'; import { getSettlementManageList } from '@/api/project/settlementManage';
import { inject } from 'vue'; import { inject } from 'vue';
import { router } from '@/router';
import exportModal from '../components/exportModal.vue'; import exportModal from '../components/exportModal.vue';
import {useModal} from "@/components/Modal"; import {useModal} from "@/components/Modal";
import {biddingPlanColumns,exportUrl} from "@/views/statement/components/settlementManagement/data"; import {biddingPlanColumns,exportUrl} from "@/views/statement/components/settlementManagement/data";
...@@ -43,20 +44,22 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra ...@@ -43,20 +44,22 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra
let detailId = inject('detailId'); let detailId = inject('detailId');
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
console.log('detailId', detailId); console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({ const [registerTable, { reload,getForm }] = useTable({
api: getSettlementManageList, api: getSettlementManageList,
columns: settlementManagementColumns, columns: settlementManagementColumns,
formConfig: { useSearchForm: true,
labelWidth: 120, formConfig: getFormConfig(),
schemas: searchFormSchema, showTableSetting: true,
tableSetting: { fullScreen: true },
showIndexColumn: false,
rowKey: 'id',
rowSelection: {
type: 'checkbox',
}, },
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
}, },
useSearchForm: true,
showTableSetting: false,
bordered: true, bordered: true,
showIndexColumn: false,
actionColumn: { actionColumn: {
width: 200, width: 200,
title: '操作', title: '操作',
...@@ -82,6 +85,7 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra ...@@ -82,6 +85,7 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra
projectId: null, projectId: null,
exportUrl: exportUrl, exportUrl: exportUrl,
title:"结算管理", title:"结算管理",
searchData:getForm().getFieldsValue(),
exportData: getExportData(), exportData: getExportData(),
}); });
} }
...@@ -93,3 +97,9 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra ...@@ -93,3 +97,9 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra
}); });
} }
</script> </script>
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