Compare commits
2 Commits
e71a454d8c
...
ad363041c3
| Author | SHA1 | Date | |
|---|---|---|---|
| ad363041c3 | |||
| 03dd8297de |
@ -594,9 +594,11 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
{
|
||||
headerName: '名称',
|
||||
field: 'name',
|
||||
minWidth: 250,
|
||||
minWidth: 180,
|
||||
flex: 3,
|
||||
tooltipField: 'name',
|
||||
wrapText: true,
|
||||
autoHeight: true,
|
||||
cellStyle: { lineHeight: '1.4', paddingTop: '4px', paddingBottom: '4px' },
|
||||
valueGetter: params => {
|
||||
if (!params.data) return ''
|
||||
if (isFixedRow(params.data)) return ''
|
||||
@ -607,9 +609,9 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '工作环节',
|
||||
field: 'process',
|
||||
headerClass: 'ag-center-header zxfw-process-header',
|
||||
minWidth: 170,
|
||||
maxWidth: 220,
|
||||
flex: 1.2,
|
||||
minWidth: 80,
|
||||
maxWidth: 100,
|
||||
flex: 1,
|
||||
editable: false,
|
||||
sortable: false,
|
||||
filter: false,
|
||||
@ -629,8 +631,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '投资规模法',
|
||||
field: 'investScale',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
minWidth: 140,
|
||||
flex: 2,
|
||||
minWidth: 100,
|
||||
flex: 1.5,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: false,
|
||||
|
||||
@ -646,8 +648,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '用地规模法',
|
||||
field: 'landScale',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
minWidth: 140,
|
||||
flex: 2,
|
||||
minWidth: 100,
|
||||
flex: 1.5,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: false,
|
||||
|
||||
@ -663,8 +665,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '工作量法',
|
||||
field: 'workload',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
minWidth: 120,
|
||||
flex: 2,
|
||||
minWidth: 90,
|
||||
flex: 1.5,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: false,
|
||||
|
||||
@ -681,8 +683,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '工时法',
|
||||
field: 'hourly',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
minWidth: 120,
|
||||
flex: 2,
|
||||
minWidth: 90,
|
||||
flex: 1.5,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: false,
|
||||
|
||||
@ -699,9 +701,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '小计',
|
||||
field: 'subtotal',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
flex: 3,
|
||||
|
||||
minWidth: 120,
|
||||
flex: 2,
|
||||
minWidth: 100,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: false,
|
||||
valueGetter: params => {
|
||||
@ -720,8 +721,8 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
headerName: '确认金额',
|
||||
field: 'finalFee',
|
||||
headerClass: 'ag-right-aligned-header',
|
||||
flex: 3,
|
||||
minWidth: 140,
|
||||
flex: 2,
|
||||
minWidth: 110,
|
||||
cellClass: 'ag-right-aligned-cell',
|
||||
editable: params => !isFixedRow(params.data),
|
||||
valueGetter: params => {
|
||||
@ -748,9 +749,9 @@ const columnDefs: ColDef<DetailRow>[] = [
|
||||
{
|
||||
headerName: '操作',
|
||||
field: 'actions',
|
||||
minWidth: 220,
|
||||
flex: 2,
|
||||
maxWidth: 260,
|
||||
minWidth: 180,
|
||||
flex: 1.5,
|
||||
maxWidth: 220,
|
||||
editable: false,
|
||||
sortable: false,
|
||||
filter: false,
|
||||
|
||||
@ -501,6 +501,7 @@ const finishReportExportProgress = (success: boolean, text: string, blobUrl?: st
|
||||
reportExportStatus.value = success ? 'success' : 'error'
|
||||
reportExportProgress.value = 100
|
||||
reportExportText.value = text
|
||||
console.log(blobUrl)
|
||||
reportExportBlobUrl.value = success && blobUrl ? blobUrl : null
|
||||
reportExportToastOpen.value = true
|
||||
if (!success || !blobUrl) {
|
||||
|
||||
@ -1092,15 +1092,15 @@ export const useZxFwPricingStore = defineStore('zxFwPricing', () => {
|
||||
if (!state?.detailRows?.length) return null
|
||||
|
||||
const fixedRow = state.detailRows.find(row => String(row.id || '') === FIXED_ROW_ID)
|
||||
const fixedSubtotal = toFiniteNumberOrNull(fixedRow?.subtotal)
|
||||
if (fixedSubtotal != null) return round3(fixedSubtotal)
|
||||
const fixedFinalFee = toFiniteNumberOrNull(fixedRow?.finalFee)
|
||||
if (fixedFinalFee != null) return round3(fixedFinalFee)
|
||||
|
||||
let hasValid = false
|
||||
const sum = state.detailRows.reduce((acc, row) => {
|
||||
if (String(row.id || '') === FIXED_ROW_ID) return acc
|
||||
const subtotal = toFiniteNumberOrNull(row.subtotal)
|
||||
if (subtotal != null) hasValid = true
|
||||
return subtotal == null ? acc : acc + subtotal
|
||||
const fee = toFiniteNumberOrNull(row.finalFee) ?? toFiniteNumberOrNull(row.subtotal)
|
||||
if (fee != null) hasValid = true
|
||||
return fee == null ? acc : acc + fee
|
||||
}, 0)
|
||||
return hasValid ? round3(sum) : null
|
||||
}
|
||||
|
||||
@ -2215,6 +2215,7 @@ async function generateTemplate(data) {
|
||||
let descRowNum1 = descRowNum + 1;
|
||||
let descRowNum2 = descRowNum + 2;
|
||||
let descRowNum3 = descRowNum + 2;
|
||||
console.log( data.contracts)
|
||||
data.contracts.forEach((ci, cindex) => {
|
||||
descRowNum3 = descRowNum3 - descRowNum2;
|
||||
descRowNum2 = descRowNum2 - descRowNum1 - 1;
|
||||
@ -2247,6 +2248,7 @@ async function generateTemplate(data) {
|
||||
});
|
||||
// 咨询服务类型
|
||||
descRowNum2 = descRowNum1 + descRowNum2 + 1;
|
||||
|
||||
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 + '。';
|
||||
} else {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user