From 6e88705bd5b443a259b24c17c8a299765d059d96 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Thu, 23 Jul 2026 16:50:41 +0800
Subject: [PATCH] Merge branch 'master' of http://139.196.74.78:10010/r/jagzwxm/ja_web

---
 applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue b/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
index 5141c8d..208c5e9 100644
--- a/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
+++ b/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
@@ -299,6 +299,7 @@
 	remark: '',
 	geom: '',
 	recommendDeviceIds: '',
+	typePinyinFirst: '',
 })
 
 const mapRef = ref(null)
@@ -686,6 +687,36 @@
 	}
 )
 
+// 取汉字(或英文)首字的拼音首字母,大写。如「占」→ Z
+function getFirstPinyinLetter(text) {
+	const char = String(text ?? '').trim().charAt(0)
+	if (!char) return ''
+	// 英文/数字直接取大写
+	if (/[a-zA-Z]/.test(char)) return char.toUpperCase()
+	// 按拼音排序的各首字母边界字,用 zh-CN 本地化比较定位所属字母
+	const boundaries = [
+		['A', '啊'], ['B', '芭'], ['C', '擦'], ['D', '搭'], ['E', '蛾'],
+		['F', '发'], ['G', '噶'], ['H', '哈'], ['J', '击'], ['K', '喀'],
+		['L', '垃'], ['M', '妈'], ['N', '拿'], ['O', '哦'], ['P', '啪'],
+		['Q', '期'], ['R', '然'], ['S', '撒'], ['T', '塌'], ['W', '挖'],
+		['X', '昔'], ['Y', '压'], ['Z', '匝'],
+	]
+	for (let i = boundaries.length - 1; i >= 0; i--) {
+		if (char.localeCompare(boundaries[i][1], 'zh-CN') >= 0) return boundaries[i][0]
+	}
+	return ''
+}
+
+// 工单类型变化时,用类型名称第一个字的拼音首字母(大写)赋值给 typePinyinFirst
+watch(
+	() => formData.value.workOrderType,
+	value => {
+		const label = getTaskTypeLabel(value, workOrderTypeXT.value)
+		formData.value.typePinyinFirst = getFirstPinyinLetter(label)
+	},
+	{ deep: true }
+)
+
 // 地图加载完毕
 function mapReady() {
 	dialogMode.value === 'add' && mapRef.value.flyBoundary()

--
Gitblit v1.9.3