From 2c86a8bd60deed0dd0e044bad6fb83f75d19a332 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期日, 26 十月 2025 15:05:50 +0800
Subject: [PATCH] Merge branch 'feature-task'

---
 app/pages/task/create.vue |  144 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 144 insertions(+), 0 deletions(-)

diff --git a/app/pages/task/create.vue b/app/pages/task/create.vue
new file mode 100644
index 0000000..948f6af
--- /dev/null
+++ b/app/pages/task/create.vue
@@ -0,0 +1,144 @@
+<template>
+  <scroll-view class="create-task-container" scroll-y="true">
+    <view class="task-category-container">
+      <view class="header">
+        <view class="title">閫夋嫨浠诲姟绫诲瀷</view>
+        <view class="subtitle">璇烽�夋嫨鎮ㄨ鍒涘缓鐨勪换鍔$被鍨�</view>
+      </view>
+
+      <view class="category-list">
+        <view class="category-item" v-for="(category, index) in taskCategories" :key="index"
+          @click="selectTaskCategory(category)">
+          <view class="icon">
+            <uni-icons :type="category.icon" size="30" :color="category.color"></uni-icons>
+          </view>
+          <view class="info">
+            <view class="name">{{ category.name }}</view>
+            <view class="desc">{{ category.description }}</view>
+          </view>
+          <view class="arrow">
+            <uni-icons type="arrowright" size="20" color="#999"></uni-icons>
+          </view>
+        </view>
+      </view>
+    </view>
+  </scroll-view>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      taskCategories: [
+        {
+          type: 'emergency',
+          name: '杞繍浠诲姟',
+          icon: 'hospital',
+          color: '#E54D42',
+          description: '绱ф�ュ尰鐤楄浆杩愪换鍔�',
+          taskType: 'EMERGENCY_TRANSFER',
+          page: '/pages/task/create-emergency'
+        },
+        {
+          type: 'normal',
+          name: '缁翠慨淇濆吇',
+          icon: 'repair',
+          color: '#007AFF',
+          description: '璁惧缁翠慨銆佷繚鍏荤瓑鏃ュ父浠诲姟',
+          taskType: 'MAINTENANCE',
+          page: '/pages/task/create-normal'
+        },
+        {
+          type: 'normal',
+          name: '鍔犳补',
+          icon: 'fuel',
+          color: '#1AAD19',
+          description: '杞﹁締鍔犳补绛変换鍔�',
+          taskType: 'FUEL',
+          page: '/pages/task/create-normal'
+        },
+
+        {
+          type: 'welfare',
+          name: '绂忕杞�',
+          icon: 'car',
+          color: '#F37B1D',
+          description: '鑰佸勾浜恒�佹畫鐤句汉绛夌壒娈婄兢浣撶敤杞︽湇鍔�',
+          taskType: 'WELFARE',
+          page: '/pages/task/create-welfare'
+        }
+      ]
+    }
+  },
+  methods: {
+    selectTaskCategory(category) {
+      // 璺宠浆鍒板搴旂殑浠诲姟鍒涘缓椤甸潰
+      uni.navigateTo({
+        url: `${category.page}?categoryName=${category.name}&categoryType=${category.type}&taskType=${category.taskType}`
+      })
+    }
+  }
+}
+</script>
+
+<style lang="scss">
+.create-task-container {
+  padding: 20rpx;
+  background-color: #f5f5f5;
+  min-height: 100vh;
+
+  .task-category-container {
+    .header {
+      text-align: center;
+      padding: 40rpx 0;
+
+      .title {
+        font-size: 40rpx;
+        font-weight: bold;
+        color: #333;
+        margin-bottom: 20rpx;
+      }
+
+      .subtitle {
+        font-size: 28rpx;
+        color: #666;
+      }
+    }
+
+    .category-list {
+      .category-item {
+        display: flex;
+        align-items: center;
+        background-color: white;
+        border-radius: 15rpx;
+        padding: 30rpx;
+        margin-bottom: 20rpx;
+        box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);
+
+        .icon {
+          margin-right: 20rpx;
+        }
+
+        .info {
+          flex: 1;
+
+          .name {
+            font-size: 32rpx;
+            font-weight: bold;
+            margin-bottom: 10rpx;
+          }
+
+          .desc {
+            font-size: 26rpx;
+            color: #666;
+          }
+        }
+
+        .arrow {
+          margin-left: 20rpx;
+        }
+      }
+    }
+  }
+}
+</style>

--
Gitblit v1.9.1