Compare commits

..

No commits in common. "ad363041c34172ff3d0fba11959bbcf130290fec" and "e71a454d8c570936fe5de253b12e31a812edc68e" have entirely different histories.

4 changed files with 26 additions and 30 deletions

View File

@ -594,11 +594,9 @@ const columnDefs: ColDef<DetailRow>[] = [
{ {
headerName: '名称', headerName: '名称',
field: 'name', field: 'name',
minWidth: 180, minWidth: 250,
flex: 3, flex: 3,
wrapText: true, tooltipField: 'name',
autoHeight: true,
cellStyle: { lineHeight: '1.4', paddingTop: '4px', paddingBottom: '4px' },
valueGetter: params => { valueGetter: params => {
if (!params.data) return '' if (!params.data) return ''
if (isFixedRow(params.data)) return '' if (isFixedRow(params.data)) return ''
@ -609,9 +607,9 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '工作环节', headerName: '工作环节',
field: 'process', field: 'process',
headerClass: 'ag-center-header zxfw-process-header', headerClass: 'ag-center-header zxfw-process-header',
minWidth: 80, minWidth: 170,
maxWidth: 100, maxWidth: 220,
flex: 1, flex: 1.2,
editable: false, editable: false,
sortable: false, sortable: false,
filter: false, filter: false,
@ -631,8 +629,8 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '投资规模法', headerName: '投资规模法',
field: 'investScale', field: 'investScale',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
minWidth: 100, minWidth: 140,
flex: 1.5, flex: 2,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: false, editable: false,
@ -648,8 +646,8 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '用地规模法', headerName: '用地规模法',
field: 'landScale', field: 'landScale',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
minWidth: 100, minWidth: 140,
flex: 1.5, flex: 2,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: false, editable: false,
@ -665,8 +663,8 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '工作量法', headerName: '工作量法',
field: 'workload', field: 'workload',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
minWidth: 90, minWidth: 120,
flex: 1.5, flex: 2,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: false, editable: false,
@ -683,8 +681,8 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '工时法', headerName: '工时法',
field: 'hourly', field: 'hourly',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
minWidth: 90, minWidth: 120,
flex: 1.5, flex: 2,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: false, editable: false,
@ -701,8 +699,9 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '小计', headerName: '小计',
field: 'subtotal', field: 'subtotal',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
flex: 2, flex: 3,
minWidth: 100,
minWidth: 120,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: false, editable: false,
valueGetter: params => { valueGetter: params => {
@ -721,8 +720,8 @@ const columnDefs: ColDef<DetailRow>[] = [
headerName: '确认金额', headerName: '确认金额',
field: 'finalFee', field: 'finalFee',
headerClass: 'ag-right-aligned-header', headerClass: 'ag-right-aligned-header',
flex: 2, flex: 3,
minWidth: 110, minWidth: 140,
cellClass: 'ag-right-aligned-cell', cellClass: 'ag-right-aligned-cell',
editable: params => !isFixedRow(params.data), editable: params => !isFixedRow(params.data),
valueGetter: params => { valueGetter: params => {
@ -749,9 +748,9 @@ const columnDefs: ColDef<DetailRow>[] = [
{ {
headerName: '操作', headerName: '操作',
field: 'actions', field: 'actions',
minWidth: 180, minWidth: 220,
flex: 1.5, flex: 2,
maxWidth: 220, maxWidth: 260,
editable: false, editable: false,
sortable: false, sortable: false,
filter: false, filter: false,

View File

@ -501,7 +501,6 @@ const finishReportExportProgress = (success: boolean, text: string, blobUrl?: st
reportExportStatus.value = success ? 'success' : 'error' reportExportStatus.value = success ? 'success' : 'error'
reportExportProgress.value = 100 reportExportProgress.value = 100
reportExportText.value = text reportExportText.value = text
console.log(blobUrl)
reportExportBlobUrl.value = success && blobUrl ? blobUrl : null reportExportBlobUrl.value = success && blobUrl ? blobUrl : null
reportExportToastOpen.value = true reportExportToastOpen.value = true
if (!success || !blobUrl) { if (!success || !blobUrl) {

View File

@ -1092,15 +1092,15 @@ export const useZxFwPricingStore = defineStore('zxFwPricing', () => {
if (!state?.detailRows?.length) return null if (!state?.detailRows?.length) return null
const fixedRow = state.detailRows.find(row => String(row.id || '') === FIXED_ROW_ID) const fixedRow = state.detailRows.find(row => String(row.id || '') === FIXED_ROW_ID)
const fixedFinalFee = toFiniteNumberOrNull(fixedRow?.finalFee) const fixedSubtotal = toFiniteNumberOrNull(fixedRow?.subtotal)
if (fixedFinalFee != null) return round3(fixedFinalFee) if (fixedSubtotal != null) return round3(fixedSubtotal)
let hasValid = false let hasValid = false
const sum = state.detailRows.reduce((acc, row) => { const sum = state.detailRows.reduce((acc, row) => {
if (String(row.id || '') === FIXED_ROW_ID) return acc if (String(row.id || '') === FIXED_ROW_ID) return acc
const fee = toFiniteNumberOrNull(row.finalFee) ?? toFiniteNumberOrNull(row.subtotal) const subtotal = toFiniteNumberOrNull(row.subtotal)
if (fee != null) hasValid = true if (subtotal != null) hasValid = true
return fee == null ? acc : acc + fee return subtotal == null ? acc : acc + subtotal
}, 0) }, 0)
return hasValid ? round3(sum) : null return hasValid ? round3(sum) : null
} }

View File

@ -2215,7 +2215,6 @@ async function generateTemplate(data) {
let descRowNum1 = descRowNum + 1; let descRowNum1 = descRowNum + 1;
let descRowNum2 = descRowNum + 2; let descRowNum2 = descRowNum + 2;
let descRowNum3 = descRowNum + 2; let descRowNum3 = descRowNum + 2;
console.log( data.contracts)
data.contracts.forEach((ci, cindex) => { data.contracts.forEach((ci, cindex) => {
descRowNum3 = descRowNum3 - descRowNum2; descRowNum3 = descRowNum3 - descRowNum2;
descRowNum2 = descRowNum2 - descRowNum1 - 1; descRowNum2 = descRowNum2 - descRowNum1 - 1;
@ -2248,7 +2247,6 @@ async function generateTemplate(data) {
}); });
// 咨询服务类型 // 咨询服务类型
descRowNum2 = descRowNum1 + descRowNum2 + 1; descRowNum2 = descRowNum1 + descRowNum2 + 1;
if (ci.services.length) { if (ci.services.length) {
var ciServiceText = ` ${cindex + 1}.${ci.name}` + ci.services.slice(0, -1).map(si => serviceList[si.id].name).join('、') + (ci.services.length > 1 ? '和' : '') + serviceList[ci.services.slice(-1)[0].id].name + '。'; var ciServiceText = ` ${cindex + 1}.${ci.name}` + ci.services.slice(0, -1).map(si => serviceList[si.id].name).join('、') + (ci.services.length > 1 ? '和' : '') + serviceList[ci.services.slice(-1)[0].id].name + '。';
} else { } else {