From 8f7bae4a2b70bb3aeb1c2289a7f5dd6a826e88de Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 01 四月 2025 09:55:38 +0800
Subject: [PATCH] fix: 四期需求

---
 packages/components/src/views/GasBillRecharge/GasBillRechargeBaseForm.vue |   41 +++++++++++++++++++++++++++++++++--------
 1 files changed, 33 insertions(+), 8 deletions(-)

diff --git a/packages/components/src/views/GasBillRecharge/GasBillRechargeBaseForm.vue b/packages/components/src/views/GasBillRecharge/GasBillRechargeBaseForm.vue
index f29dc02..afc5179 100644
--- a/packages/components/src/views/GasBillRecharge/GasBillRechargeBaseForm.vue
+++ b/packages/components/src/views/GasBillRecharge/GasBillRechargeBaseForm.vue
@@ -6,6 +6,14 @@
     label-position="top"
     class="order-bill-recharge electric"
   >
+    <slot name="top"></slot>
+    <NutFormItem label="鎵�鍦ㄥ煄甯�" class="bole-form-item" prop="areaList" required>
+      <ChooseInputWithAreaPicker
+        :columns="cityAreaTree"
+        v-model="form.areaList"
+        placeholder="璇烽�夋嫨鎵�鍦ㄥ煄甯�"
+      ></ChooseInputWithAreaPicker>
+    </NutFormItem>
     <NutFormItem label="缂磋垂鎴峰彿" class="bole-form-item" prop="gasAccount" required>
       <NutInput
         v-model.trim="form.gasAccount"
@@ -13,6 +21,14 @@
         placeholder="璇疯緭鍏ョ即璐规埛鍙�"
         type="text"
         max-length="13"
+      />
+    </NutFormItem>
+    <NutFormItem label="鎴蜂富濮撳悕" class="bole-form-item" prop="name" required>
+      <NutInput
+        v-model.trim="form.name"
+        class="bole-input-text"
+        placeholder="璇峰~鍐欐埛涓诲鍚�"
+        type="text"
       />
     </NutFormItem>
     <slot></slot>
@@ -23,24 +39,33 @@
 import { Form as NutForm, FormItem as NutFormItem, Input as NutInput } from '@nutui/nutui-taro';
 import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types';
 import { reactive, ref, computed, watch } from 'vue';
-import { useGetGasParValue } from '../../hooks';
+import ChooseInputWithAreaPicker from '../../components/Input/ChooseInputWithAreaPicker.vue';
+import { useAllAreaList } from '../../hooks/area';
+import { FormValidator } from '../../utils';
 
 defineOptions({
   name: 'GasBillRechargeBaseForm',
 });
 
-const form = defineModel<{
-  province: string;
-  city: string;
-  gasAccount: string;
-}>('form');
+const { findAreaNameFromCode, cityAreaTree } = useAllAreaList();
 
-const { gasParValueList } = useGetGasParValue();
+const form = defineModel<{
+  // province: string;
+  // city: string;
+  gasAccount: string;
+  areaList: string[];
+  name: string;
+}>('form');
 
 const rules = reactive<FormRules>({
   province: [{ required: true, message: '璇烽�夋嫨鎵�鍦ㄥ尯鍩�' }],
   city: [{ required: true, message: '璇烽�夋嫨鎵�鍦ㄥ煄甯�' }],
-  gasAccount: [{ required: true, message: '璇疯緭鍏ョ即璐规埛鍙�', regex: /^\d{13}$/ }],
+  // gasAccount: [{ required: true, message: '璇疯緭鍏ョ即璐规埛鍙�', regex: /^\d{13}$/ }],
+  gasAccount: [{ required: true, message: '璇疯緭鍏ョ即璐规埛鍙�' }],
+  areaList: [
+    { required: true, message: '璇烽�夋嫨鎵�鍦ㄥ煄甯�', validator: FormValidator.validatorArray },
+  ],
+  name: [{ required: true, message: '璇峰~鍐欐埛涓诲鍚�' }],
 });
 
 const formRef = ref<any>(null);

--
Gitblit v1.9.1