0908
This commit is contained in:
@ -98,3 +98,10 @@ export const cashTotal = () => {
|
|||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
//安全天数
|
||||||
|
export const getSafetyDay = (projectId) => {
|
||||||
|
return request({
|
||||||
|
url: '/money/big/screen/safetyDay/' + projectId,
|
||||||
|
method: 'get'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
@ -140,9 +140,9 @@ const createEarth = () => {
|
|||||||
// 加载底图
|
// 加载底图
|
||||||
loadBaseMap(earthInstance.viewer);
|
loadBaseMap(earthInstance.viewer);
|
||||||
|
|
||||||
// 可以取消注释以下代码来设置初始视角
|
// // 可以取消注释以下代码来设置初始视角
|
||||||
// YJ.Global.flyTo(earthInstance, view);
|
// YJ.Global.flyTo(earthInstance, view);
|
||||||
// YJ.Global.setDefaultView(earthInstance.viewer, view)
|
// YJ.Global.setDefaultView(earthInstance.viewer, view);
|
||||||
|
|
||||||
// 地球创建完成后获取并渲染轨迹数据
|
// 地球创建完成后获取并渲染轨迹数据
|
||||||
getTrajectoryData();
|
getTrajectoryData();
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="font-size: 12px; padding-left: 10px">安全生产天数:</div>
|
<div style="font-size: 12px; padding-left: 10px">安全生产天数:</div>
|
||||||
<div class="header_left_text">
|
<div class="header_left_text">
|
||||||
1,235
|
{{ safetyDay }}
|
||||||
<span style="font-size: 12px">天</span>
|
<span style="font-size: 12px">天</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -41,12 +41,42 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { ref, computed, onMounted } from 'vue';
|
||||||
|
import { useUserStoreHook } from '@/store/modules/user';
|
||||||
|
import { getSafetyDay } from '@/api/largeScreen/index';
|
||||||
|
|
||||||
const week = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
|
const week = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
|
||||||
const date = ref({
|
const date = ref({
|
||||||
ymd: '',
|
ymd: '',
|
||||||
hms: '',
|
hms: '',
|
||||||
week: 0
|
week: 0
|
||||||
});
|
});
|
||||||
|
const safetyDay = ref('');
|
||||||
|
const userStore = useUserStoreHook();
|
||||||
|
const currentProject = computed(() => userStore.selectedProject);
|
||||||
|
|
||||||
|
// 获取安全生产天数
|
||||||
|
const getSafetyDays = async () => {
|
||||||
|
try {
|
||||||
|
console.log('currentProject', currentProject.value.id);
|
||||||
|
|
||||||
|
if (currentProject.value?.id) {
|
||||||
|
const res = await getSafetyDay(currentProject.value.id);
|
||||||
|
console.log('111111', res);
|
||||||
|
|
||||||
|
if (res.code === 200 && res.data) {
|
||||||
|
safetyDay.value = res.data.safetyDay.toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('获取安全生产天数失败:', error);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// 组件挂载时获取数据
|
||||||
|
onMounted(() => {
|
||||||
|
getSafetyDays();
|
||||||
|
});
|
||||||
const setTime = () => {
|
const setTime = () => {
|
||||||
let date1 = new Date();
|
let date1 = new Date();
|
||||||
let year: any = date1.getFullYear();
|
let year: any = date1.getFullYear();
|
||||||
|
@ -38,7 +38,6 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 本地数据懒加载表格 -->
|
|
||||||
<el-table
|
<el-table
|
||||||
:data="state.tableData"
|
:data="state.tableData"
|
||||||
v-loading="state.loading.list"
|
v-loading="state.loading.list"
|
||||||
@ -52,15 +51,16 @@
|
|||||||
:load="loadLocalChildNodes"
|
:load="loadLocalChildNodes"
|
||||||
@expand-change="handleExpandChange"
|
@expand-change="handleExpandChange"
|
||||||
>
|
>
|
||||||
|
<!-- 1. 普通列:添加 align="center" 实现表头+单元格居中 -->
|
||||||
<el-table-column align="center" prop="num" label="编号" />
|
<el-table-column align="center" prop="num" label="编号" />
|
||||||
<el-table-column prop="name" label="工程或费用名称" width="180" />
|
<el-table-column align="center" prop="name" label="工程或费用名称" width="180" />
|
||||||
<el-table-column prop="unit" label="单位" />
|
<el-table-column align="center" prop="unit" label="单位" />
|
||||||
<el-table-column prop="specification" label="规格型号" width="80" />
|
<el-table-column align="center" prop="specification" label="规格型号" width="80" />
|
||||||
<el-table-column prop="quantity" label="数量" width="100" />
|
<el-table-column align="center" prop="quantity" label="数量" width="100" />
|
||||||
<el-table-column prop="batchNumber" label="批次号" width="200" />
|
<el-table-column align="center" prop="batchNumber" label="批次号" width="200" />
|
||||||
|
|
||||||
<!-- 优化的输入框列 -->
|
<!-- 2. 带输入框的列:添加 align="center" + 输入框内联样式 text-align: center -->
|
||||||
<el-table-column prop="brand" label="品牌">
|
<el-table-column align="center" prop="brand" label="品牌">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input
|
<el-input
|
||||||
v-model.lazy="row.brand"
|
v-model.lazy="row.brand"
|
||||||
@ -70,11 +70,12 @@
|
|||||||
clearable
|
clearable
|
||||||
:key="`brand-${row.id}`"
|
:key="`brand-${row.id}`"
|
||||||
@change="handleInputChange(row, 'brand')"
|
@change="handleInputChange(row, 'brand')"
|
||||||
|
style="text-align: center"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column prop="texture" label="材质">
|
<el-table-column align="center" prop="texture" label="材质">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input
|
<el-input
|
||||||
v-model.lazy="row.texture"
|
v-model.lazy="row.texture"
|
||||||
@ -84,6 +85,7 @@
|
|||||||
clearable
|
clearable
|
||||||
:key="`texture-${row.id}`"
|
:key="`texture-${row.id}`"
|
||||||
@change="handleInputChange(row, 'texture')"
|
@change="handleInputChange(row, 'texture')"
|
||||||
|
style="text-align: center"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -74,10 +74,10 @@
|
|||||||
<el-table-column label="设计面积(亩)" align="center" prop="designArea" width="180" />
|
<el-table-column label="设计面积(亩)" align="center" prop="designArea" width="180" />
|
||||||
<el-table-column label="责任人" align="center" prop="responsiblePerson" />
|
<el-table-column label="责任人" align="center" prop="responsiblePerson" />
|
||||||
<el-table-column label="预计完成时间" align="center" prop="expectedFinishDate" width="180"> </el-table-column>
|
<el-table-column label="预计完成时间" align="center" prop="expectedFinishDate" width="180"> </el-table-column>
|
||||||
<el-table-column label="流转状态" align="center" prop="transferStatusName" />
|
<el-table-column label="流转状态" align="center" prop="type" />
|
||||||
<el-table-column label="已流转面积(亩)" align="center" prop="transferArea" width="180" />
|
<el-table-column label="已流转面积(亩)" align="center" prop="transferArea" width="180" />
|
||||||
<el-table-column label="不流转数据" align="center" prop="noTrans" width="180" />
|
<el-table-column label="不流转面积(亩)" align="center" prop="noTrans" width="180" />
|
||||||
<el-table-column label="未流转数据" align="center" prop="noTransferAea" width="180" />
|
<el-table-column label="未流转面积(亩)" align="center" prop="noTransferAea" width="180" />
|
||||||
<el-table-column label="流转比例(%)" align="center" width="180">
|
<el-table-column label="流转比例(%)" align="center" width="180">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
{{ scope.row.transferArea && scope.row.designArea ? ((scope.row.transferArea / scope.row.designArea) * 100).toFixed(2) : '0.00' }}
|
{{ scope.row.transferArea && scope.row.designArea ? ((scope.row.transferArea / scope.row.designArea) * 100).toFixed(2) : '0.00' }}
|
||||||
@ -120,7 +120,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="summary-item transfer-area">
|
<div class="summary-item transfer-area">
|
||||||
<div class="summary-content">
|
<div class="summary-content">
|
||||||
<span class="summary-label">已流转面积</span>
|
<span class="summary-label">已流转面积(亩)</span>
|
||||||
<span class="summary-value">{{ sonSummaryInfo.totalTransferArea }} 亩</span>
|
<span class="summary-value">{{ sonSummaryInfo.totalTransferArea }} 亩</span>
|
||||||
</div>
|
</div>
|
||||||
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
||||||
@ -129,7 +129,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="summary-item non-transfer-area">
|
<div class="summary-item non-transfer-area">
|
||||||
<div class="summary-content">
|
<div class="summary-content">
|
||||||
<span class="summary-label">不流转面积</span>
|
<span class="summary-label">不流转面积(亩)</span>
|
||||||
<span class="summary-value">{{ sonSummaryInfo.totalNonTransferArea }} 亩</span>
|
<span class="summary-value">{{ sonSummaryInfo.totalNonTransferArea }} 亩</span>
|
||||||
</div>
|
</div>
|
||||||
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
||||||
@ -138,7 +138,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="summary-item remaining-area">
|
<div class="summary-item remaining-area">
|
||||||
<div class="summary-content">
|
<div class="summary-content">
|
||||||
<span class="summary-label">未流转面积</span>
|
<span class="summary-label">未流转面积(亩)</span>
|
||||||
<span class="summary-value">{{ sonSummaryInfo.remainingArea }} 亩</span>
|
<span class="summary-value">{{ sonSummaryInfo.remainingArea }} 亩</span>
|
||||||
</div>
|
</div>
|
||||||
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
<el-icon class="summary-icon" :size="50" color="#3176ff">
|
||||||
@ -292,7 +292,7 @@
|
|||||||
<el-form-item label="已流转面积(亩)" prop="areaValue">
|
<el-form-item label="已流转面积(亩)" prop="areaValue">
|
||||||
<el-input v-model="sonForm.areaValue" type="number" placeholder="请输入已流转面积" @input="calcSonTransferRatio" />
|
<el-input v-model="sonForm.areaValue" type="number" placeholder="请输入已流转面积" @input="calcSonTransferRatio" />
|
||||||
<div style="color: #ff4d4f; font-size: 12px; margin-top: 4px">
|
<div style="color: #ff4d4f; font-size: 12px; margin-top: 4px">
|
||||||
{{ sonForm.areaValue && sonForm.transferStatus == '1' ? `提示:已流转面积不能超过设计面积 ${sonForm.designArea} 亩` : '' }}
|
{{ sonForm.areaValue && sonForm.transferStatus == '1' ? `提示:当前剩余${sonSummaryInfo.remainingArea} 亩未流转面积` : '' }}
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -325,7 +325,7 @@
|
|||||||
<el-form-item label="不流转面积(亩)" prop="areaValue">
|
<el-form-item label="不流转面积(亩)" prop="areaValue">
|
||||||
<el-input v-model="sonForm.areaValue" type="number" placeholder="请输入不流转面积" />
|
<el-input v-model="sonForm.areaValue" type="number" placeholder="请输入不流转面积" />
|
||||||
<div style="color: #ff4d4f; font-size: 12px; margin-top: 4px">
|
<div style="color: #ff4d4f; font-size: 12px; margin-top: 4px">
|
||||||
{{ sonForm.areaValue && sonForm.transferStatus == '2' ? `提示:不流转面积不能超过设计面积 ${sonForm.designArea} 亩` : '' }}
|
{{ sonForm.areaValue && sonForm.transferStatus == '2' ? `提示:当前剩余 ${sonSummaryInfo.remainingArea} 亩未流转面积` : '' }}
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -751,6 +751,16 @@ const sonRules = {
|
|||||||
projectId: [{ required: true, message: '项目ID不能为空', trigger: 'blur' }],
|
projectId: [{ required: true, message: '项目ID不能为空', trigger: 'blur' }],
|
||||||
parentId: [{ required: true, message: '父级ID不能为空', trigger: 'blur' }],
|
parentId: [{ required: true, message: '父级ID不能为空', trigger: 'blur' }],
|
||||||
landType: [{ required: true, message: '土地类型不能为空', trigger: 'change' }],
|
landType: [{ required: true, message: '土地类型不能为空', trigger: 'change' }],
|
||||||
|
landRent: [{ required: true, message: '土地租金不能为空', trigger: 'blur' }],
|
||||||
|
seedlingCompensation: [{ required: true, message: '青苗赔偿不能为空', trigger: 'blur' }],
|
||||||
|
totalAmount: [{ required: true, message: '总金额不能为空', trigger: 'blur' }],
|
||||||
|
statusDescription: [{ required: true, message: '状态说明不能为空', trigger: 'blur' }],
|
||||||
|
issueSummary: [{ required: true, message: '问题总结不能为空', trigger: 'blur' }],
|
||||||
|
nextStrategy: [{ required: true, message: '下一步策略不能为空', trigger: 'blur' }],
|
||||||
|
noContractArea: [{ required: true, message: '不签约面积不能为空', trigger: 'blur' }],
|
||||||
|
noSurveyArea: [{ required: true, message: '不测量面积不能为空', trigger: 'blur' }],
|
||||||
|
noContractReason: [{ required: true, message: '不签约原因不能为空', trigger: 'blur' }],
|
||||||
|
nonTransferReason: [{ required: true, message: '不流转原因不能为空', trigger: 'blur' }],
|
||||||
transferRatio: [
|
transferRatio: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
|
@ -223,8 +223,8 @@
|
|||||||
<!-- 第十行:安全生产许可证有效期(仅劳务类型显示) -->
|
<!-- 第十行:安全生产许可证有效期(仅劳务类型显示) -->
|
||||||
<el-row :gutter="20" class="mb-4" v-if="form.supplierType === '劳务'">
|
<el-row :gutter="20" class="mb-4" v-if="form.supplierType === '劳务'">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="安全生产许可证发证日期" prop="safeCertificateValidity">
|
<el-form-item label="安全生产许可证有效期" prop="safeCertificateValidity">
|
||||||
<el-date-picker v-model="form.safeCertificateValidity" type="date" placeholder="请选择发证日期" />
|
<el-date-picker v-model="form.safeCertificateValidity" type="date" placeholder="请选择有效期" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
@ -243,7 +243,7 @@
|
|||||||
<el-form-item label="注册造价工程师" prop="registeredEngineerNumber">
|
<el-form-item label="注册造价工程师" prop="registeredEngineerNumber">
|
||||||
<el-input v-model="form.registeredEngineerNumber" placeholder="请输入注册造价工程师数量" clearable />
|
<el-input v-model="form.registeredEngineerNumber" placeholder="请输入注册造价工程师数量" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="其他(分别写)" prop="otherBuildingNumber">
|
<el-form-item label="其他人员数量" prop="otherBuildingNumber">
|
||||||
<el-input v-model="form.otherBuildingNumber" placeholder="请输入其他人员数量" clearable />
|
<el-input v-model="form.otherBuildingNumber" placeholder="请输入其他人员数量" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
Reference in New Issue
Block a user