From 307e714ec9f85bae11ed892cb90e199a341b6be3 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 06 八月 2025 11:06:13 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobAdminBClient

---
 src/views/EmploymentManage/components/AddOrEditEmploymentView.vue |  170 +++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 117 insertions(+), 53 deletions(-)

diff --git a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue
index f3edcb3..87cb1d4 100644
--- a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue
+++ b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue
@@ -11,27 +11,30 @@
             </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
-            <ProFormItemV2 label="鏈嶅姟璐�:" prop="salaryType">
-              <RadioWithExtra
-                v-model="form.salaryType"
-                :value-enum="[
-                  { label: '鎸夋湀', value: 1 },
-                  { label: '鎸夋棩', value: 2 },
-                ]"
-                :showExtra="true"
-              >
-                <template #extra>
-                  <ProFormInputNumber
-                    :controls="false"
-                    :min="0"
-                    :max="999"
-                    v-model="form.name"
-                    placeholder="璇疯緭鍏�"
-                    :unit="form.salaryType === 1 ? '鍏�/鏈�' : '鍏�/澶�'"
-                  ></ProFormInputNumber>
-                </template>
-              </RadioWithExtra>
-            </ProFormItemV2>
+            <ProFormColItem :span="12">
+              <ProFormItemV2 label="鏈嶅姟璐�:" prop="salaryType">
+                <RadioWithExtra
+                  v-model="form.salaryType"
+                  :value-enum="[
+                    { label: '鎸夋湀', value: 1 },
+                    { label: '鎸夋棩', value: 2 },
+                  ]"
+                  :showExtra="true"
+                  :button-style="false"
+                >
+                  <template #extra>
+                    <ProFormInputNumber
+                      :controls="false"
+                      :min="0"
+                      :max="999"
+                      v-model="form.name"
+                      placeholder="璇疯緭鍏�"
+                      :unit="form.salaryType === 1 ? '鍏�/鏈�' : '鍏�/澶�'"
+                    ></ProFormInputNumber>
+                  </template>
+                </RadioWithExtra>
+              </ProFormItemV2>
+            </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
             <ProFormColItem :span="12">
@@ -39,19 +42,39 @@
                 <ProFormRadio
                   v-model="form.salaryType"
                   :value-enum="[{ label: '鏄�', value: 1 }]"
+                  :button-style="false"
                 ></ProFormRadio>
               </ProFormItemV2>
             </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
             <ProFormColItem :span="12">
-              <ProFormItemV2 label="骞撮緞瑕佹眰:" prop="ageRange">
+              <ProFormItemV2 label="绂忓埄:" prop="benefits">
+                <el-checkbox
+                  v-model="state.checBenefitskAll"
+                  style="margin-right: 30px"
+                  :indeterminate="state.isBenefitsIndeterminate"
+                  @change="handleCheckBenefitsAllChange"
+                  >鍏ㄩ��</el-checkbox
+                >
+                <ProFormCheckbox
+                  v-model="form.benefits"
+                  :value-enum="[]"
+                  enumLabelKey="name"
+                  enum-value-key="id"
+                  @change="handleCheckedBenefitsServicesChange"
+                ></ProFormCheckbox>
+              </ProFormItemV2>
+            </ProFormColItem>
+          </ProFormCol>
+          <ProFormCol>
+            <ProFormColItem :span="12">
+              <ProFormItemV2 label="骞撮緞鑼冨洿:" prop="ageRange" class="form-age-range">
                 <ProFormInputNumber
                   :controls="false"
                   :min="0"
                   v-model="form.ageStart"
                   placeholder="璇疯緭鍏�"
-                  disabled
                 ></ProFormInputNumber>
                 <div class="form-input-separator">鑷�</div>
                 <ProFormInputNumber
@@ -59,7 +82,6 @@
                   :min="0"
                   v-model="form.ageEnd"
                   placeholder="璇疯緭鍏�"
-                  disabled
                 ></ProFormInputNumber>
               </ProFormItemV2>
             </ProFormColItem>
@@ -67,35 +89,50 @@
           <ProFormCol>
             <ProFormColItem :span="12">
               <ProFormItemV2 label="鎬у埆瑕佹眰:" prop="sexRequirement" required>
-                <RadioWithExtra
+                <ProFormRadio
                   v-model="form.sexRequirement"
-                  :value-enum="[
-                    {
-                      label: '涓嶉檺',
-                      value: 1,
-                    },
-                  ]"
-                  :showExtra="true"
+                  :value-enum="[{ label: '涓嶉檺', value: 1 }]"
+                ></ProFormRadio>
+              </ProFormItemV2>
+            </ProFormColItem>
+          </ProFormCol>
+          <ProFormCol>
+            <ProFormColItem :span="12">
+              <ProFormItemV2 label="璧勬牸璇佷功:" prop="benefits">
+                <el-checkbox
+                  v-model="state.checBenefitskAll"
+                  style="margin-right: 30px"
+                  :indeterminate="state.isBenefitsIndeterminate"
+                  @change="handleCheckBenefitsAllChange"
+                  >鍏ㄩ��</el-checkbox
                 >
-                  <template #extra>
-                    <div class="form-input-separator">鐢锋��</div>
-                    <ProFormInputNumber
-                      :controls="false"
-                      :min="0"
-                      v-model="form.manNumber"
-                      placeholder="璇疯緭鍏�"
-                      disabled
-                    ></ProFormInputNumber>
-                    <div class="form-input-separator">濂虫��</div>
-                    <ProFormInputNumber
-                      :controls="false"
-                      :min="0"
-                      v-model="form.womanNumber"
-                      placeholder="璇疯緭鍏�"
-                      disabled
-                    ></ProFormInputNumber>
-                  </template>
-                </RadioWithExtra>
+                <ProFormCheckbox
+                  v-model="form.benefits"
+                  :value-enum="[]"
+                  enumLabelKey="name"
+                  enum-value-key="id"
+                  @change="handleCheckedBenefitsServicesChange"
+                ></ProFormCheckbox>
+              </ProFormItemV2>
+            </ProFormColItem>
+          </ProFormCol>
+          <ProFormCol>
+            <ProFormColItem :span="12">
+              <ProFormItemV2 label="浠诲姟鍦扮偣:" prop="areaList">
+                <!-- <ProFromAddressSelect :areaList="form.areaList" :address="form.address" /> -->
+              </ProFormItemV2>
+            </ProFormColItem>
+          </ProFormCol>
+          <ProFormCol>
+            <ProFormColItem :span="12">
+              <ProFormItemV2 label="浠诲姟鏃堕棿:" prop="name">
+                <ProFormDatePicker
+                  v-model="form.name"
+                  type="daterange"
+                  range-separator="鑷�"
+                  start-placeholder="寮�濮嬫棩鏈�"
+                  end-placeholder="缁撴潫鏃ユ湡"
+                ></ProFormDatePicker>
               </ProFormItemV2>
             </ProFormColItem>
           </ProFormCol>
@@ -120,6 +157,8 @@
   ProFormText,
   ProFormInputNumber,
   ProFormRadio,
+  ProFormDatePicker,
+  ProFormCheckbox,
 } from '@bole-core/components';
 import { FormInstance } from 'element-plus';
 import { Message } from '@bole-core/core';
@@ -141,6 +180,11 @@
 
 const { closeViewPush } = useRouteView();
 
+const state = reactive({
+  checBenefitskAll: false,
+  isBenefitsIndeterminate: false,
+});
+
 const form = reactive({
   name: '',
   salaryType: 1,
@@ -149,6 +193,9 @@
   sexRequirement: 1,
   manNumber: 0,
   womanNumber: 0,
+  benefits: [],
+  areaList: [] as number[],
+  address: '',
 });
 
 const { isLoading } = useQuery({
@@ -161,6 +208,7 @@
       }
     );
   },
+  placeholderData: () => ({} as API.GetFlexTaskDetailForBackOutput),
   onSuccess(data) {
     form.name = data.taskName;
   },
@@ -169,7 +217,7 @@
 
 function handleBack() {
   closeViewPush(route, {
-    name: 'TaskManage',
+    name: 'EmploymentManageList',
   });
 }
 const productFormRef = ref<FormInstance>();
@@ -189,12 +237,28 @@
     let res;
     if (res) {
       Message.successMessage('鎿嶄綔鎴愬姛');
-      eventContext.emit(isEdit ? 'taskManage:edit' : 'taskManage:add');
+      eventContext.emit(isEdit ? 'employment:edit' : 'employment:add');
       handleBack();
     }
   } catch (error) {}
 }
+
+function handleCheckBenefitsAllChange() {}
+
+function handleCheckedBenefitsServicesChange() {}
 </script>
 <style lang="scss" scoped>
 @use '@/style/common.scss' as *;
+
+:deep() {
+  .radio-with-input-extra-wrapper {
+    display: flex;
+  }
+
+  .form-age-range {
+    .pro-from-item-read-content-wrapper {
+      width: auto;
+    }
+  }
+}
 </style>

--
Gitblit v1.9.1