|
@@ -40,8 +40,10 @@
|
|
|
/>
|
|
|
<van-popup v-model:show="showPicker" position="bottom">
|
|
|
<van-picker
|
|
|
+ v-model="leaveTypePiker"
|
|
|
:columns="columns"
|
|
|
@confirm="onConfirm"
|
|
|
+ @change="onConfirm"
|
|
|
@cancel="showPicker = false"
|
|
|
/>
|
|
|
</van-popup>
|
|
@@ -71,18 +73,19 @@
|
|
|
<button class="add_btn" @click="popupShow = true">新增</button>
|
|
|
</template>
|
|
|
<template #default>
|
|
|
- <van-swipe-cell>
|
|
|
- <card-cell>
|
|
|
- <van-cell title="单元格" value="内容" />
|
|
|
- <van-cell title="单元格" value="内容" />
|
|
|
- <van-cell title="单元格" value="内容" />
|
|
|
- <van-cell title="单元格" value="内容" />
|
|
|
- </card-cell>
|
|
|
- <template #right>
|
|
|
- <van-button square type="primary" text="编辑" />
|
|
|
- <van-button square type="danger" text="删除" />
|
|
|
- </template>
|
|
|
- </van-swipe-cell>
|
|
|
+ <div v-for="item in formData.leaveTimeCreateList" :key="item.id">
|
|
|
+ <van-swipe-cell>
|
|
|
+ <card-cell>
|
|
|
+ <van-cell title="起始时间" :value="item.startTime" />
|
|
|
+ <van-cell title="截止时间" :value="item.endTime" />
|
|
|
+ <van-cell title="备注" :value="item.bz1" />
|
|
|
+ </card-cell>
|
|
|
+ <template #right>
|
|
|
+ <van-button square type="primary" text="编辑" />
|
|
|
+ <van-button square type="danger" text="删除" />
|
|
|
+ </template>
|
|
|
+ </van-swipe-cell>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
</card>
|
|
|
</flow-form>
|
|
@@ -91,9 +94,23 @@
|
|
|
<van-cell-group inset>
|
|
|
<date-time-range
|
|
|
label="起始时间"
|
|
|
- v-model="dateTimeRange"
|
|
|
+ v-model="detailData.startTime"
|
|
|
placeholder="请选择起始时间"
|
|
|
/>
|
|
|
+ <date-time-range
|
|
|
+ label="截止时间"
|
|
|
+ v-model="detailData.endTime"
|
|
|
+ placeholder="请选择截止时间"
|
|
|
+ />
|
|
|
+ <van-field
|
|
|
+ v-model="detailData.bz1"
|
|
|
+ name="备注"
|
|
|
+ label="备注"
|
|
|
+ placeholder="备注"
|
|
|
+ type="textarea"
|
|
|
+ rows="3"
|
|
|
+ autosize
|
|
|
+ />
|
|
|
</van-cell-group>
|
|
|
<div class="fixed-btn">
|
|
|
<van-button round block type="primary" @click="saveHandle">
|
|
@@ -114,7 +131,23 @@ import CardCell from '@/components/cardCell.vue';
|
|
|
|
|
|
const popupShow = ref<boolean>(false)
|
|
|
const route = useRoute();
|
|
|
-const formData = ref({
|
|
|
+interface FormDataType {
|
|
|
+ instanceId: string
|
|
|
+ id: string
|
|
|
+ leaveHours: number
|
|
|
+ userNickname: string
|
|
|
+ deptName: string
|
|
|
+ createTime: string
|
|
|
+ leaveNo: string
|
|
|
+ leaveType: number
|
|
|
+ leaveTypeText: string
|
|
|
+ leaveDays: string
|
|
|
+ leaveReason: string
|
|
|
+ leaveTimeCreateList: {
|
|
|
+ text: string
|
|
|
+ }[]
|
|
|
+}
|
|
|
+const formData = ref<FormDataType>({
|
|
|
instanceId: undefined,
|
|
|
id: undefined,
|
|
|
leaveHours: undefined,
|
|
@@ -126,9 +159,15 @@ const formData = ref({
|
|
|
leaveTypeText: undefined,
|
|
|
leaveDays: undefined,
|
|
|
leaveReason: undefined,
|
|
|
- leaveTimeCreateList: [],
|
|
|
+ leaveTimeCreateList: []
|
|
|
})
|
|
|
-const dateTimeRange = ref("2025-10-02 10:30:00")
|
|
|
+const detailData = ref({
|
|
|
+ leaveId: '',
|
|
|
+ startTime: '',
|
|
|
+ endTime: '',
|
|
|
+ bz1: ''
|
|
|
+})
|
|
|
+const leaveTypePiker = ref(['11']);
|
|
|
const showPicker = ref(false);
|
|
|
const columns = [
|
|
|
{ text: '事假', value: '11' },
|
|
@@ -153,6 +192,7 @@ const activityData: FlowDTO = {
|
|
|
}
|
|
|
const onConfirm = ({ selectedOptions }) => {
|
|
|
formData.value.leaveTypeText = selectedOptions[0]?.text;
|
|
|
+ formData.value.leaveType = selectedOptions[0]?.value;
|
|
|
showPicker.value = false;
|
|
|
};
|
|
|
const submitNextActivity = async () => {
|
|
@@ -185,9 +225,19 @@ const jsonToFormData = (json: any): FormData | null => {
|
|
|
const initFormData= async () => {
|
|
|
const result = await reqest.get(`/business/Leave/mobileAdd?flowInstanceId=${flowInstanceId}`)
|
|
|
formData.value = result.data
|
|
|
+ leaveTypePiker[0] = result.data.leaveType
|
|
|
}
|
|
|
const saveHandle = () => {
|
|
|
-
|
|
|
+ detailData.value.leaveId = formData.value.id
|
|
|
+ formData.value.leaveTimeCreateList.push(detailData.value)
|
|
|
+ detailData.value = {
|
|
|
+ leaveId: '',
|
|
|
+ startTime: '',
|
|
|
+ endTime: '',
|
|
|
+ bz1: ''
|
|
|
+ }
|
|
|
+ popupShow.value=false
|
|
|
+ console.log(formData)
|
|
|
}
|
|
|
/** 初始化 */
|
|
|
onMounted(() => {
|