feat 数据库问题修复
This commit is contained in:
@@ -25,7 +25,7 @@ function onIconClick(name: string) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
console.log(`点击了${name}图标`)
|
console.log(`点击了导航栏图标`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -36,10 +36,10 @@ function onIconClick(name: string) {
|
|||||||
<image class="nav-logo" src="/static/logo.png" mode="aspectFit" @tap="onIconClick('logo')" />
|
<image class="nav-logo" src="/static/logo.png" mode="aspectFit" @tap="onIconClick('logo')" />
|
||||||
<view class="nav-info">
|
<view class="nav-info">
|
||||||
<text class="nav-title">
|
<text class="nav-title">
|
||||||
{{ project?.project_name || '-----' }}
|
{{ project?.project_name || '--' }}
|
||||||
</text>
|
</text>
|
||||||
<text class="nav-subtitle">
|
<text class="nav-subtitle">
|
||||||
{{ project?.stake_range || '-----' }}
|
{{ project?.stake_range || '--' }}
|
||||||
</text>
|
</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ const props = defineProps<{
|
|||||||
}>()
|
}>()
|
||||||
|
|
||||||
const statusMap: Record<number, string> = {
|
const statusMap: Record<number, string> = {
|
||||||
0: '未完成',
|
0: '已暂停',
|
||||||
1: '已完成',
|
1: '已结束',
|
||||||
2: '作业中',
|
2: '作业中',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,9 +10,9 @@ defineProps<{
|
|||||||
|
|
||||||
function getStatusText(status: number) {
|
function getStatusText(status: number) {
|
||||||
const map: Record<number, string> = {
|
const map: Record<number, string> = {
|
||||||
0: '未完成',
|
0: '已暂停',
|
||||||
1: '已结束',
|
1: '已结束',
|
||||||
2: '进行中',
|
2: '作业中',
|
||||||
}
|
}
|
||||||
return map[status] || '未知'
|
return map[status] || '未知'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,17 +13,22 @@ definePage({
|
|||||||
const db = useDbStore()
|
const db = useDbStore()
|
||||||
|
|
||||||
const search = ref('')
|
const search = ref('')
|
||||||
const activeTab = ref(0) // 0全部 1作业中 2已结束
|
const activeTab = ref(0) // 0全部 1作业中 2已暂停 3已结束
|
||||||
const tabs = ['全部', '作业中', '已结束']
|
const tabs = ['全部', '作业中', '已暂停', '已结束']
|
||||||
|
/** tab 下标对应项目 status:作业中=2,已暂停=0,已结束=1 */
|
||||||
|
const tabStatusMap: Record<number, 0 | 1 | 2> = {
|
||||||
|
1: 2,
|
||||||
|
2: 0,
|
||||||
|
3: 1,
|
||||||
|
}
|
||||||
|
|
||||||
const projects = computed(() => {
|
const projects = computed(() => {
|
||||||
const keyword = search.value.trim().toLowerCase()
|
const keyword = search.value.trim().toLowerCase()
|
||||||
|
const statusFilter = tabStatusMap[activeTab.value]
|
||||||
|
|
||||||
return db.project
|
return db.project
|
||||||
.filter((item) => {
|
.filter((item) => {
|
||||||
if (activeTab.value === 1 && item.status === 1)
|
if (statusFilter !== undefined && item.status !== statusFilter)
|
||||||
return false
|
|
||||||
if (activeTab.value === 2 && item.status !== 1)
|
|
||||||
return false
|
return false
|
||||||
if (keyword) {
|
if (keyword) {
|
||||||
const name = (item.project_name || '').toLowerCase()
|
const name = (item.project_name || '').toLowerCase()
|
||||||
@@ -135,6 +140,7 @@ onMounted(async () => {
|
|||||||
|
|
||||||
.tabs {
|
.tabs {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
gap: 12px;
|
gap: 12px;
|
||||||
margin-top: 12px;
|
margin-top: 12px;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ export interface Project {
|
|||||||
qualified_rate?: number // 压实合格率,默认 0
|
qualified_rate?: number // 压实合格率,默认 0
|
||||||
progress?: number // 完成进度,默认 0
|
progress?: number // 完成进度,默认 0
|
||||||
uncompacted_area?: number // 未压实面积 = 总面积 - 压实面积,默认 0
|
uncompacted_area?: number // 未压实面积 = 总面积 - 压实面积,默认 0
|
||||||
status: 0 | 1 | 2 // 项目状态,0:未完成,1:已完成,2:作业中, 默认0
|
status: 0 | 1 | 2 // 项目状态,0:已暂停,1:已结束,2:作业中,默认 0
|
||||||
created_at?: string // 创建时间,默认当前时间
|
created_at?: string // 创建时间,默认当前时间
|
||||||
updated_at?: string // 更新时间,默认当前时间
|
updated_at?: string // 更新时间,默认当前时间
|
||||||
}
|
}
|
||||||
@@ -63,7 +63,7 @@ export async function selectById(id: number): Promise<Project | null> {
|
|||||||
return DB.selectById(TABLE, id)
|
return DB.selectById(TABLE, id)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 按状态查询(0=进行中, 1=结束) */
|
/** 按状态查询(0=已暂停, 1=已完成, 2=作业中) */
|
||||||
export async function selectByStatus(status: 0 | 1): Promise<Project[]> {
|
export async function selectByStatus(status: 0 | 1): Promise<Project[]> {
|
||||||
return DB.selectByField(TABLE, 'status', status)
|
return DB.selectByField(TABLE, 'status', status)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { insert as insertWorkRecord } from './workRecord'
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目假数据 (6个)
|
* 项目假数据 (6个)
|
||||||
* status: 0=未完成, 1=已完成, 2=作业中
|
* status: 0=已暂停, 1=已完成, 2=作业中
|
||||||
*/
|
*/
|
||||||
async function seedProject() {
|
async function seedProject() {
|
||||||
const data = [
|
const data = [
|
||||||
@@ -14,7 +14,7 @@ async function seedProject() {
|
|||||||
total_area: 25000.0,
|
total_area: 25000.0,
|
||||||
status: 2,
|
status: 2,
|
||||||
},
|
},
|
||||||
// 未完成 (1个)
|
// 已暂停 (1个)
|
||||||
{
|
{
|
||||||
project_name: '雄安新区市政道路',
|
project_name: '雄安新区市政道路',
|
||||||
stake_range: 'A区 ~ C区',
|
stake_range: 'A区 ~ C区',
|
||||||
@@ -55,7 +55,7 @@ async function seedProject() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 当日工作记录假数据
|
* 当日工作记录假数据
|
||||||
* 仅作业中(1)和未完成(2)的项目各有3条
|
* 仅作业中和已暂停项目的各有3条
|
||||||
*/
|
*/
|
||||||
async function seedWorkRecord() {
|
async function seedWorkRecord() {
|
||||||
const data = [
|
const data = [
|
||||||
@@ -84,7 +84,7 @@ async function seedWorkRecord() {
|
|||||||
compaction_area: 1520.0,
|
compaction_area: 1520.0,
|
||||||
pass_count: 6,
|
pass_count: 6,
|
||||||
},
|
},
|
||||||
// 项目2 (未完成) - 3条工作记录
|
// 项目2 (已暂停) - 3条工作记录
|
||||||
{
|
{
|
||||||
project_id: 2,
|
project_id: 2,
|
||||||
start_time: '2026-09-15 08:00:00',
|
start_time: '2026-09-15 08:00:00',
|
||||||
@@ -118,7 +118,7 @@ async function seedWorkRecord() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* RTK 轨迹假数据
|
* RTK 轨迹假数据
|
||||||
* 仅作业中和未完成项目的每个工作记录 120 条
|
* 仅作业中和已暂停项目的每个工作记录 120 条
|
||||||
*/
|
*/
|
||||||
async function seedRtkTrack() {
|
async function seedRtkTrack() {
|
||||||
const data: any[] = []
|
const data: any[] = []
|
||||||
|
|||||||
Reference in New Issue
Block a user