master
cody 3 days ago
parent 24ffb352ce
commit a7107b8568

@ -528,6 +528,32 @@ export default {
this.dateRangeEnd0 = null; this.dateRangeEnd0 = null;
}, },
//
isNumericField(field, fieldName) {
if (!field) return false;
//
if (field.edit_input === 'number' ||
field.type === 'number' ||
field.type === 'integer' ||
field.type === 'decimal' ||
field.type === 'float') {
return true;
}
//
const numericKeywords = ['面积', '值', '金额', '价格', '费用', '成本', '数量', '数量', '金额', '元', '万元', '平方米', 'm²', '㎡'];
if (fieldName) {
for (let keyword of numericKeywords) {
if (fieldName.includes(keyword)) {
return true;
}
}
}
return false;
},
async exportExcel(sheetName) { async exportExcel(sheetName) {
let filterTableColumns = this.$refs['xyTable']?.tableFormat || [] let filterTableColumns = this.$refs['xyTable']?.tableFormat || []
const res = await index( const res = await index(
@ -538,78 +564,138 @@ export default {
return { return {
key: i.field, key: i.field,
title: i.name, title: i.name,
isNumber: this.isNumericField(i, i.name)
}; };
}); });
// headers // headers
headers.push({ headers.push({
key: 'admin.name', key: 'admin.name',
title: '提交人' title: '提交人',
isNumber: false
}); });
headers.push({ headers.push({
key: 'department.name', key: 'department.name',
title: '提交单位' title: '提交单位',
isNumber: false
}); });
headers.push({ headers.push({
key: 'created_at', key: 'created_at',
title: '创建时间' title: '创建时间',
isNumber: false
}); });
const data = res.data.map((row) => const data = res.data.map((row) =>
headers.map((header) => { headers.map((header) => {
let value;
// //
if (header.key === 'admin.name') { if (header.key === 'admin.name') {
return row['admin']?.name || ''; value = row['admin']?.name || '';
} } else if (header.key === 'department.name') {
if (header.key === 'department.name') { value = row['department']?.name || '';
return row['department']?.name || ''; } else if (header.key === 'created_at') {
} value = row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : '';
if (header.key === 'created_at') { } else {
return row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : ''; const i = this.form.find(i => i.field === header.key)
//if (i.edit_input === 'file' || i.edit_input === 'files') return ''
// if (
// i.select_item &&
// typeof i.select_item === "object" &&
// !(i.select_item instanceof Array)
// ) {
// let keys = Object.keys(i.select_item);
// let paramMap = new Map();
// keys.forEach((key) => {
// paramMap.set(i.select_item[key], key);
// });
// return paramMap.get(row[i.field]?.toString());
// }
if (i && i._relations) {
let { link_relation, foreign_key, link_with_name } = i._relations;
if (link_relation === "newHasOne" || link_relation === "hasOne") {
value = row[link_with_name]?.original_name || row[link_with_name]?.name ||
row[link_with_name]?.no ||
row[link_with_name]?.value
} else if (link_relation === "hasMany" || link_relation === "newHasMany") {
value = row[link_with_name]?.map((o) => (
o?.name ||
o?.no ||
o?.value ||
o?.biaoti ||
o?.mingcheng
)).toString()
} else {
value = row[header.key]
}
} else {
if (this.table.find(i => i.prop === header.key)?.formatter) {
value = this.table.find(i => i.prop === header.key).formatter(row, {}, row[header.key])
} else {
value = row[header.key]
}
}
} }
const i = this.form.find(i => i.field === header.key) //
//if (i.edit_input === 'file' || i.edit_input === 'files') return '' if (header.isNumber && value !== null && value !== undefined && value !== '') {
// if ( // value
// i.select_item && let numValue;
// typeof i.select_item === "object" && if (typeof value === 'string') {
// !(i.select_item instanceof Array) // """m²"
// ) { const cleanedValue = value.toString().replace(/[元万元m²㎡\s,]/g, '').trim();
// let keys = Object.keys(i.select_item); numValue = Number(cleanedValue);
// let paramMap = new Map(); } else {
// keys.forEach((key) => { numValue = Number(value);
// paramMap.set(i.select_item[key], key);
// });
// return paramMap.get(row[i.field]?.toString());
// }
if (i && i._relations) {
let { link_relation, foreign_key, link_with_name } = i._relations;
if (link_relation === "newHasOne" || link_relation === "hasOne") {
return row[link_with_name]?.original_name || row[link_with_name]?.name ||
row[link_with_name]?.no ||
row[link_with_name]?.value
} }
if (link_relation === "hasMany" || link_relation === "newHasMany") { if (!isNaN(numValue) && numValue !== '') {
return row[link_with_name]?.map((o) => ( return numValue;
o?.name ||
o?.no ||
o?.value ||
o?.biaoti ||
o?.mingcheng
)).toString()
} }
} }
if (this.table.find(i => i.prop === header.key)?.formatter) { return value;
return this.table.find(i => i.prop === header.key).formatter(row, {}, row[header.key])
}
return row[header.key]
}) })
); );
data.unshift(headers.map((header) => header.title)); data.unshift(headers.map((header) => header.title));
const wb = XLSX.utils.book_new(); const wb = XLSX.utils.book_new();
const ws = XLSX.utils.aoa_to_sheet(data); const ws = XLSX.utils.aoa_to_sheet(data);
//
const range = XLSX.utils.decode_range(ws['!ref']);
for (let R = 1; R <= range.e.r; R++) { // R=0
for (let C = 0; C <= range.e.c; C++) {
const cellAddress = XLSX.utils.encode_cell({ r: R, c: C });
if (!ws[cellAddress]) continue;
const header = headers[C];
if (header && header.isNumber) {
const cell = ws[cellAddress];
let numValue;
//
if (typeof cell.v === 'string') {
// """m²"
const cleanedValue = cell.v.toString().replace(/[元万元m²㎡\s,]/g, '').trim();
numValue = Number(cleanedValue);
} else {
numValue = Number(cell.v);
}
if (!isNaN(numValue) && cell.v !== null && cell.v !== undefined && cell.v !== '') {
cell.t = 'n'; //
cell.v = numValue; //
//
if (header.title && (header.title.includes('面积') || header.title.includes('m²') || header.title.includes('㎡'))) {
cell.z = '#,##0.00'; // 2
} else if (header.title && (header.title.includes('值') || header.title.includes('金额') || header.title.includes('元'))) {
cell.z = '#,##0.00'; // 2
} else {
cell.z = '#,##0'; //
}
}
}
}
}
XLSX.utils.book_append_sheet(wb, ws, sheetName); XLSX.utils.book_append_sheet(wb, ws, sheetName);
const wbout = XLSX.write(wb, { const wbout = XLSX.write(wb, {
bookType: "xlsx", bookType: "xlsx",

@ -507,6 +507,32 @@ export default {
this.dateRangeEnd0 = null; this.dateRangeEnd0 = null;
}, },
//
isNumericField(field, fieldName) {
if (!field) return false;
//
if (field.edit_input === 'number' ||
field.type === 'number' ||
field.type === 'integer' ||
field.type === 'decimal' ||
field.type === 'float') {
return true;
}
//
const numericKeywords = ['面积', '值', '金额', '价格', '费用', '成本', '数量', '数量', '金额', '元', '万元', '平方米', 'm²', '㎡', '单价', '缴税'];
if (fieldName) {
for (let keyword of numericKeywords) {
if (fieldName.includes(keyword)) {
return true;
}
}
}
return false;
},
async exportExcel(sheetName) { async exportExcel(sheetName) {
let filterTableColumns = this.$refs['xyTable']?.tableFormat || [] let filterTableColumns = this.$refs['xyTable']?.tableFormat || []
const res = await index( const res = await index(
@ -517,78 +543,138 @@ export default {
return { return {
key: i.field, key: i.field,
title: i.name, title: i.name,
isNumber: this.isNumericField(i, i.name)
}; };
}); });
// headers // headers
headers.push({ headers.push({
key: 'admin.name', key: 'admin.name',
title: '提交人' title: '提交人',
isNumber: false
}); });
headers.push({ headers.push({
key: 'department.name', key: 'department.name',
title: '提交单位' title: '提交单位',
isNumber: false
}); });
headers.push({ headers.push({
key: 'created_at', key: 'created_at',
title: '创建时间' title: '创建时间',
isNumber: false
}); });
const data = res.data.map((row) => const data = res.data.map((row) =>
headers.map((header) => { headers.map((header) => {
let value;
// //
if (header.key === 'admin.name') { if (header.key === 'admin.name') {
return row['admin']?.name || ''; value = row['admin']?.name || '';
} } else if (header.key === 'department.name') {
if (header.key === 'department.name') { value = row['department']?.name || '';
return row['department']?.name || ''; } else if (header.key === 'created_at') {
} value = row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : '';
if (header.key === 'created_at') { } else {
return row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : ''; const i = this.form.find(i => i.field === header.key)
//if (i.edit_input === 'file' || i.edit_input === 'files') return ''
// if (
// i.select_item &&
// typeof i.select_item === "object" &&
// !(i.select_item instanceof Array)
// ) {
// let keys = Object.keys(i.select_item);
// let paramMap = new Map();
// keys.forEach((key) => {
// paramMap.set(i.select_item[key], key);
// });
// return paramMap.get(row[i.field]?.toString());
// }
if (i && i._relations) {
let { link_relation, foreign_key, link_with_name } = i._relations;
if (link_relation === "newHasOne" || link_relation === "hasOne") {
value = row[link_with_name]?.original_name || row[link_with_name]?.name ||
row[link_with_name]?.no ||
row[link_with_name]?.value
} else if (link_relation === "hasMany" || link_relation === "newHasMany") {
value = row[link_with_name]?.map((o) => (
o?.name ||
o?.no ||
o?.value ||
o?.biaoti ||
o?.mingcheng
)).toString()
} else {
value = row[header.key]
}
} else {
if (this.table.find(i => i.prop === header.key)?.formatter) {
value = this.table.find(i => i.prop === header.key).formatter(row, {}, row[header.key])
} else {
value = row[header.key]
}
}
} }
const i = this.form.find(i => i.field === header.key) //
//if (i.edit_input === 'file' || i.edit_input === 'files') return '' if (header.isNumber && value !== null && value !== undefined && value !== '') {
// if ( // value
// i.select_item && let numValue;
// typeof i.select_item === "object" && if (typeof value === 'string') {
// !(i.select_item instanceof Array) // """m²"
// ) { const cleanedValue = value.toString().replace(/[元万元m²㎡\s,/]/g, '').trim();
// let keys = Object.keys(i.select_item); numValue = Number(cleanedValue);
// let paramMap = new Map(); } else {
// keys.forEach((key) => { numValue = Number(value);
// paramMap.set(i.select_item[key], key);
// });
// return paramMap.get(row[i.field]?.toString());
// }
if (i && i._relations) {
let { link_relation, foreign_key, link_with_name } = i._relations;
if (link_relation === "newHasOne" || link_relation === "hasOne") {
return row[link_with_name]?.original_name || row[link_with_name]?.name ||
row[link_with_name]?.no ||
row[link_with_name]?.value
} }
if (link_relation === "hasMany" || link_relation === "newHasMany") { if (!isNaN(numValue) && numValue !== '') {
return row[link_with_name]?.map((o) => ( return numValue;
o?.name ||
o?.no ||
o?.value ||
o?.biaoti ||
o?.mingcheng
)).toString()
} }
} }
if (this.table.find(i => i.prop === header.key)?.formatter) { return value;
return this.table.find(i => i.prop === header.key).formatter(row, {}, row[header.key])
}
return row[header.key]
}) })
); );
data.unshift(headers.map((header) => header.title)); data.unshift(headers.map((header) => header.title));
const wb = XLSX.utils.book_new(); const wb = XLSX.utils.book_new();
const ws = XLSX.utils.aoa_to_sheet(data); const ws = XLSX.utils.aoa_to_sheet(data);
//
const range = XLSX.utils.decode_range(ws['!ref']);
for (let R = 1; R <= range.e.r; R++) { // R=0
for (let C = 0; C <= range.e.c; C++) {
const cellAddress = XLSX.utils.encode_cell({ r: R, c: C });
if (!ws[cellAddress]) continue;
const header = headers[C];
if (header && header.isNumber) {
const cell = ws[cellAddress];
let numValue;
//
if (typeof cell.v === 'string') {
// """m²"
const cleanedValue = cell.v.toString().replace(/[元万元m²㎡\s,/]/g, '').trim();
numValue = Number(cleanedValue);
} else {
numValue = Number(cell.v);
}
if (!isNaN(numValue) && cell.v !== null && cell.v !== undefined && cell.v !== '') {
cell.t = 'n'; //
cell.v = numValue; //
//
if (header.title && (header.title.includes('面积') || header.title.includes('m²') || header.title.includes('㎡'))) {
cell.z = '#,##0.00'; // 2
} else if (header.title && (header.title.includes('值') || header.title.includes('金额') || header.title.includes('元') || header.title.includes('单价') || header.title.includes('缴税'))) {
cell.z = '#,##0.00'; // 2
} else {
cell.z = '#,##0'; //
}
}
}
}
}
XLSX.utils.book_append_sheet(wb, ws, sheetName); XLSX.utils.book_append_sheet(wb, ws, sheetName);
const wbout = XLSX.write(wb, { const wbout = XLSX.write(wb, {
bookType: "xlsx", bookType: "xlsx",

@ -311,7 +311,7 @@
<template #export> <template #export>
<Button <Button
type="primary" type="primary"
@click="exportExcel(new Date().getTime().toString())" @click="handleExport"
>导出</Button >导出</Button
> >
</template> </template>
@ -373,7 +373,7 @@ import { op } from "@/const/op";
import { download } from "@/utils/downloadRequest"; import { download } from "@/utils/downloadRequest";
import { getparameter } from "@/api/system/dictionary"; import { getparameter } from "@/api/system/dictionary";
import { show } from "@/api/system/customForm"; import { show } from "@/api/system/customForm";
import * as XLSX from "xlsx"; import * as XLSX from "xlsx-js-style";
import { saveAs } from "file-saver"; import { saveAs } from "file-saver";
import { listdept } from "@/api/system/department" import { listdept } from "@/api/system/department"
import { deepCopy } from '@/utils' import { deepCopy } from '@/utils'
@ -435,51 +435,271 @@ export default {
this.dateRangeEnd0 = null; this.dateRangeEnd0 = null;
}, },
//
isNumericField(field, fieldName) {
if (!field) return false;
//
if (field.edit_input === 'number' ||
field.type === 'number' ||
field.type === 'integer' ||
field.type === 'decimal' ||
field.type === 'float') {
return true;
}
//
const numericKeywords = ['面积', '值', '金额', '价格', '费用', '成本', '数量', '元', '万元', '平方米', 'm²', '㎡', '单价', '缴税', '租金', '免租期', '天', '底价', '评估'];
if (fieldName) {
for (let keyword of numericKeywords) {
if (fieldName.includes(keyword)) {
return true;
}
}
}
return false;
},
handleExport() {
const fileName = '招租管理' + this.$moment().format('YYYY-MM-DD');
this.exportExcel(fileName);
},
async exportExcel(sheetName) { async exportExcel(sheetName) {
let filterTableColumns = this.$refs['xyTable']?.tableFormat || [] let filterTableColumns = this.$refs['xyTable']?.tableFormat || []
const res = await index( const res = await index(
Object.assign(this.select, { page: 1, page_size: 9999 }) Object.assign(this.select, { page: 1, page_size: 9999 })
); );
if (res.data) { if (res.data) {
let headers = filterTableColumns.filter(i => !!i.prop).map((i) => { //
let baseHeaders = filterTableColumns.filter(i => !!i.prop && i.prop !== 'assets').map((i) => {
// form
const fieldConfig = this.form.find(f => f.field === i.prop);
return { return {
key: i.prop, key: i.prop,
title: i.label, title: i.label,
isNumber: this.isNumericField(fieldConfig, i.label)
}; };
}); });
// headers // headers
headers.push({ baseHeaders.push({
key: 'admin.name', key: 'admin.name',
title: '提交人' title: '提交人',
isNumber: false
}); });
headers.push({ baseHeaders.push({
key: 'department.name', key: 'department.name',
title: '提交单位' title: '提交单位',
isNumber: false
}); });
headers.push({ baseHeaders.push({
key: 'created_at', key: 'created_at',
title: '创建时间' title: '创建时间',
isNumber: false
}); });
const data = res.data.map((row) => //
headers.map((header) => { const assetHeaders = [
{ key: 'asset_name', title: '资产名称', isNumber: false },
{ key: 'asset_type', title: '分类', isNumber: false },
{ key: 'asset_zuoluo', title: '坐落', isNumber: false },
{ key: 'asset_xiangxiweizhi', title: '详细位置', isNumber: false },
{ key: 'asset_shijimianji', title: '实际面积', isNumber: true },
{ key: 'asset_chuzumianji', title: '出租面积', isNumber: true }
];
// headers +
const headers = [...baseHeaders, ...assetHeaders];
//
const data = [];
const merges = []; //
res.data.forEach((row, rowIndex) => {
const assets = row.id_lets_to_assets_let_id_relation || [];
const assetCount = Math.max(1, assets.length); // 1
// 0
const startRowIndex = data.length;
//
const mainRow = baseHeaders.map((header) => {
let value;
// //
if (header.key === 'admin.name') { if (header.key === 'admin.name') {
return row['admin']?.name || ''; value = row['admin']?.name || '';
} else if (header.key === 'department.name') {
value = row['department']?.name || '';
} else if (header.key === 'created_at') {
value = row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : '';
} else {
value = row[header.key];
} }
if (header.key === 'department.name') {
return row['department']?.name || ''; //
if (header.isNumber && value !== null && value !== undefined && value !== '') {
let numValue;
if (typeof value === 'string') {
const cleanedValue = value.toString().replace(/[元万元m²㎡\s,/天]/g, '').trim();
numValue = Number(cleanedValue);
} else {
numValue = Number(value);
}
if (!isNaN(numValue) && numValue !== '') {
return numValue;
}
} }
if (header.key === 'created_at') {
return row['created_at'] ? this.$moment(row['created_at']).format('YYYY-MM-DD HH:mm:ss') : ''; return value;
});
//
const getAssetData = (asset) => {
//
let assetType = '资产';
if (asset.house_id) {
assetType = '房产';
} else if (asset.land_id) {
assetType = '土地';
} else if (asset.biaodileixing) {
assetType = asset.biaodileixing;
} }
return row[header.key];
}) //
); return [
asset.name || '',
assetType,
asset.zuoluo || '',
asset.xiangxiweizhi || '',
asset.shijimianji || '0',
asset.chuzumianji || '0'
];
};
//
let firstAssetData = assets.length > 0 ? getAssetData(assets[0]) : assetHeaders.map(() => '');
const mainRowWithAssets = [...mainRow, ...firstAssetData];
data.push(mainRowWithAssets);
//
if (assets.length > 1) {
for (let i = 1; i < assets.length; i++) {
const assetRow = baseHeaders.map(() => ''); //
const assetData = getAssetData(assets[i]);
data.push([...assetRow, ...assetData]);
}
} else if (assets.length === 0) {
//
const emptyAssetRow = baseHeaders.map(() => '');
const emptyAssetData = assetHeaders.map(() => '');
data.push([...emptyAssetRow, ...emptyAssetData]);
}
// +
if (assetCount > 1) {
const endRowIndex = data.length - 1; //
baseHeaders.forEach((header, colIndex) => {
merges.push({
s: { r: startRowIndex + 1, c: colIndex }, // +1
e: { r: endRowIndex + 1, c: colIndex } // +1
});
});
}
});
//
data.unshift(headers.map((header) => header.title)); data.unshift(headers.map((header) => header.title));
const wb = XLSX.utils.book_new(); const wb = XLSX.utils.book_new();
const ws = XLSX.utils.aoa_to_sheet(data); const ws = XLSX.utils.aoa_to_sheet(data);
//
if (merges.length > 0) {
ws['!merges'] = merges;
}
//
const headerStyle = {
font: { bold: true, color: { rgb: "FFFFFF" } },
fill: { fgColor: { rgb: "4472C4" } }, //
alignment: { horizontal: "center", vertical: "center" },
border: {
top: { style: "thin", color: { rgb: "000000" } },
bottom: { style: "thin", color: { rgb: "000000" } },
left: { style: "thin", color: { rgb: "000000" } },
right: { style: "thin", color: { rgb: "000000" } }
}
};
const cellStyle = {
alignment: { horizontal: "center", vertical: "center" },
border: {
top: { style: "thin", color: { rgb: "000000" } },
bottom: { style: "thin", color: { rgb: "000000" } },
left: { style: "thin", color: { rgb: "000000" } },
right: { style: "thin", color: { rgb: "000000" } }
}
};
//
const range = XLSX.utils.decode_range(ws['!ref']);
for (let R = 0; R <= range.e.r; R++) {
for (let C = 0; C <= range.e.c; C++) {
const cellAddress = XLSX.utils.encode_cell({ r: R, c: C });
if (!ws[cellAddress]) {
//
ws[cellAddress] = { v: '', t: 's' };
}
const cell = ws[cellAddress];
const header = headers[C];
// 使 headerStyle使 cellStyle
if (R === 0) {
//
cell.s = JSON.parse(JSON.stringify(headerStyle));
} else {
//
cell.s = JSON.parse(JSON.stringify(cellStyle));
}
//
if (header && header.isNumber && R > 0) {
let numValue;
//
if (typeof cell.v === 'string') {
const cleanedValue = cell.v.toString().replace(/[元万元m²㎡\s,/天]/g, '').trim();
numValue = Number(cleanedValue);
} else {
numValue = Number(cell.v);
}
if (!isNaN(numValue) && cell.v !== null && cell.v !== undefined && cell.v !== '') {
cell.t = 'n'; //
cell.v = numValue; //
//
if (header.title && (header.title.includes('面积') || header.title.includes('m²') || header.title.includes('㎡'))) {
cell.z = '#,##0.00'; // 2
} else if (header.title && (header.title.includes('值') || header.title.includes('金额') || header.title.includes('元') || header.title.includes('单价') || header.title.includes('租金') || header.title.includes('底价') || header.title.includes('评估'))) {
cell.z = '#,##0.00'; // 2
} else if (header.title && (header.title.includes('天') || header.title.includes('期'))) {
cell.z = '#,##0'; //
} else {
cell.z = '#,##0'; //
}
}
}
}
}
//
const colWidths = headers.map(() => ({ wch: 15 })); // 15
ws['!cols'] = colWidths;
XLSX.utils.book_append_sheet(wb, ws, sheetName); XLSX.utils.book_append_sheet(wb, ws, sheetName);
const wbout = XLSX.write(wb, { const wbout = XLSX.write(wb, {
bookType: "xlsx", bookType: "xlsx",
@ -732,6 +952,119 @@ export default {
label: "序号", label: "序号",
formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1 formatter: (row, column, cellValue, index) => (this.$refs['xyTable'].selectOpt.page - 1) * this.$refs['xyTable'].selectOpt.page_size + index + 1
}) })
this.table.unshift({
label: "标的物",
prop: 'assets',
width: 320,
align: 'left',
customFn: row => {
if (!row.id_lets_to_assets_let_id_relation || row.id_lets_to_assets_let_id_relation.length === 0) {
return <span>-</span>
}
// house_id land_id biaodileixing
const getAssetType = (item) => {
if (item.house_id) return '房产'
if (item.land_id) return '土地'
if (item.biaodileixing) return item.biaodileixing
return '资产'
}
let tags = row.id_lets_to_assets_let_id_relation.slice(0, 1).map(i => {
const assetType = getAssetType(i)
const assetName = i.name || " "
const detailLocation = i.xiangxiweizhi || ""
return (
<Tag color="success" style="background: rgb(65, 100, 227) !important;">
{assetType}{assetName}{detailLocation ? '-' + detailLocation : ''}
</Tag>
)
})
return (
<div>
{
tags
}
{row.id_lets_to_assets_let_id_relation.length > 1 && [
<br key="br"></br>,
<el-popover key="popover" title="标的物" width={1000}>
<el-link slot="reference"
type="primary"
style={{
"font-size": "13px",
"word-break": "keep-all",
display: "inline",
}}>更多</el-link>
<div slot="default">
<Table size="small"
data={row.id_lets_to_assets_let_id_relation}
columns={[
{
title: '资产名称',
key: 'name',
width: 180,
render: (h, { row: myRow }) => {
return h('span', myRow.name || " ")
}
},
{
title: '分类',
key: 'type',
width: 100,
render: (h, { row: myRow }) => {
let type = '资产'
if (myRow.house_id) {
type = '房产'
} else if (myRow.land_id) {
type = '土地'
} else if (myRow.biaodileixing) {
type = myRow.biaodileixing
}
return h('span', type)
}
},
{
title: '坐落',
key: 'zuoluo',
minWidth: 200,
render: (h, { row: myRow }) => {
return h('span', myRow.zuoluo || " ")
}
},
{
title: '详细位置',
key: 'xiangxiweizhi',
minWidth: 200,
render: (h, { row: myRow }) => {
return h('span', myRow.xiangxiweizhi || " ")
}
},
{
title: '实际面积',
key: 'shijimianji',
width: 140,
render: (h, { row: myRow }) => {
return h('span', myRow.shijimianji || "0")
}
},
{
title: '出租面积',
key: 'chuzumianji',
width: 140,
render: (h, { row: myRow }) => {
return h('span', myRow.chuzumianji || "0")
}
},
]}>
</Table>
</div>
</el-popover>
]}
</div>
)
}
})
this.table.push({ this.table.push({
prop: 'admin.name', prop: 'admin.name',
width: 120, width: 120,

Loading…
Cancel
Save