songxy 1 год назад
Родитель
Сommit
3b6a254c20

+ 3 - 1
client_h5/.env.dev

@@ -1 +1,3 @@
-VITE_BASE_URL='http://10.10.10.7:48080/'
+VITE_BASE_URL='http://10.10.10.7:48080/'
+
+VITE_AUTHORIZATION='test83e06d0d-af60-4419-9437-c9a68bf1b669'

+ 23 - 0
client_h5/src/components/cardCell.vue

@@ -0,0 +1,23 @@
+<template>
+  <div class="card_cell_box">
+      <slot name="default"></slot>
+  </div>
+</template>
+
+<script setup lang="ts">
+
+defineOptions({
+  name: 'CardCell'
+})
+
+</script>
+
+<style scoped lang="scss">
+.card_cell_box {
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  background-color: #f7f8fa;
+  margin-bottom: 10px;
+}
+</style>

+ 0 - 283
client_h5/src/pages/leave/index copy 2.vue

@@ -1,283 +0,0 @@
-
-<template>
-  <flow-form :data="formData" @submit="submitNextActivity">
-        <card title="基础信息">
-          <van-form required="true">
-            <van-cell-group inset>
-              <van-field
-                v-model="formData.userNickname"
-                name="请假人"
-                label="请假人"
-                placeholder="请假人"
-                readonly 
-                :rules="[{ required: true, message: '未获取请假人' }]"
-              />
-              <van-field
-                v-model="formData.deptName"
-                name="所在部门"
-                label="所在部门"
-                placeholder="所在部门"
-                readonly 
-                :rules="[{ required: true, message: '未获取所在部门' }]"
-              />
-              <van-field
-                v-model="formData.createTime"
-                name="申请时间"
-                label="申请时间"
-                placeholder="申请时间"
-                readonly 
-                :rules="[{ required: true, message: '请填写申请时间' }]"
-              />
-              <van-field
-                v-model="formData.leaveType"
-                is-link
-                readonly
-                name="休假类型"
-                label="休假类型"
-                placeholder="点击选择休假类型"
-                :rules="[{ required: true, message: '请选择休假类型' }]"
-                @click="showPicker = true"
-              />
-              <van-popup v-model:show="showPicker" position="bottom">
-                <van-picker
-                  :columns="columns"
-                  @confirm="onConfirm"
-                  @cancel="showPicker = false"
-                />
-              </van-popup>
-              <van-field
-                v-model="formData.leaveDays"
-                name="休假天数"
-                label="休假天数"
-                placeholder="休假天数"
-                readonly
-                :rules="[{ required: true, message: '请填写休假天数' }]"
-              />
-              <van-field
-                v-model="formData.leaveReason"
-                name="请假原因"
-                label="请假原因"
-                placeholder="请假原因"
-                type="textarea"
-                rows="3"
-                autosize
-                :rules="[{ required: true, message: '请填写休假原因' }]"
-              />
-              <van-field
-                v-model="formData.leaveDays"
-                name="休假天数"
-                label="休假天数"
-                placeholder="休假天数"
-                readonly
-                :rules="[{ required: true, message: '请填写休假天数' }]"
-              />
-              <van-field
-                v-model="formData.leaveReason"
-                name="请假原因"
-                label="请假原因"
-                placeholder="请假原因"
-                type="textarea"
-                rows="3"
-                autosize
-                :rules="[{ required: true, message: '请填写休假原因' }]"
-              />
-            </van-cell-group>
-          </van-form>
-        </card>
-        <card title="详情信息">
-            <template #right>
-              <button class="add_btn" @click="popupShow = true">新增</button>
-            </template>
-            <template #default>
-              <van-cell-group inset>
-                <van-field
-                  v-model="formData.userNickname"
-                  name="请假人"
-                  label="请假人"
-                  placeholder="请假人"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取请假人' }]"
-                />
-                <van-field
-                  v-model="formData.deptName"
-                  name="所在部门"
-                  label="所在部门"
-                  placeholder="所在部门"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取所在部门' }]"
-                />
-                <van-field
-                  v-model="formData.createTime"
-                  name="申请时间"
-                  label="申请时间"
-                  placeholder="申请时间"
-                  readonly 
-                  :rules="[{ required: true, message: '请填写申请时间' }]"
-                />
-                <van-field
-                  v-model="formData.leaveType"
-                  is-link
-                  readonly
-                  name="休假类型"
-                  label="休假类型"
-                  placeholder="点击选择休假类型"
-                  :rules="[{ required: true, message: '请选择休假类型' }]"
-                  @click="showPicker = true"
-                />
-                <van-popup v-model:show="showPicker" position="bottom">
-                  <van-picker
-                    :columns="columns"
-                    @confirm="onConfirm"
-                    @cancel="showPicker = false"
-                  />
-                </van-popup>
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-              </van-cell-group>
-            </template>
-        </card>
-  </flow-form>
-  <van-popup class="detail-popup" v-model:show="popupShow" position="bottom">
-    <h4 class="title">详细信息新增</h4>
-    <van-cell-group inset>
-      <date-time-range 
-        label="起始时间"
-        v-model="dateTimeRange"
-        placeholder="请选择起始时间"
-        />
-    </van-cell-group>
-    <div class="fixed-btn">
-      <van-button round block type="primary" @click="saveHandle">
-          保存
-       </van-button>
-    </div>
-  </van-popup>
-</template>
-
-<script setup lang="ts">
-import { useRoute } from 'vue-router';
-import { FlowDTO, getNextActivity } from '@/service/flow';
-import reqest from "@/utils/request";
-import DateTimeRange from '@/components/dateTimeRange.vue';
-import FlowForm from '@/components/flowForm.vue';
-import Card from '@/components/card.vue';
-
-const popupShow = ref<boolean>(false)
-const route = useRoute();
-const formData = ref({
-  instanceId: undefined,
-  id: undefined,
-  leaveHours: undefined,
-  userNickname: undefined,
-  deptName: undefined,
-  createTime: undefined,
-  leaveNo: undefined,
-  leaveType: undefined,
-  leaveDays: undefined,
-  leaveReason: undefined,
-  leaveTimeCreateList: [],
-})
-const dateTimeRange = ref("2025-10-02 10:30:00") 
-const showPicker = ref(false);
-const columns = [
-      { text: '事假', value: '11' },
-      { text: '病假', value: '12' },
-      { text: '婚假', value: '13' },
-      { text: '产假', value: '14' },
-      { text: '陪产假', value: '15' },
-      { text: '工伤', value: '16' },
-      { text: '年假', value: '17' },
-      { text: '调休', value: '18' },
-      { text: '其他', value: '20' },
-    ];
-const { activityInstanceId, participantId,flowInstanceId } = route.query as {
-  activityInstanceId: string;
-  participantId: string;
-  flowInstanceId: string;
-};
-const activityData: FlowDTO = {
-  activityInstanceId,
-  participantId,
-  flowOpinion: ''
-}
-const onConfirm = ({ selectedOptions }) => {
-  formData.leaveType = selectedOptions[0]?.text;
-  showPicker.value = false;
-};
-const submitNextActivity = async () => {
-  //更新表单业务数据
-  await reqest.post("/business/Leave/update",formData)
-  //工作流转件
-  activityData.activityInstanceId='018f23b914660a07729e8f224db60203'
-  activityData.participantId='018f23b9148b0a07729e8f224db60205'
-  activityData.flowOpinion='{"id":"018f23b914970a07729e8f224db60206","opinionContent":"同意","opinionTime":"2024-04-28"}'
-  const result = await getNextActivity(jsonToFormData(activityData))
-  // getNextActivity(activityData).then(result => {
-  //   console.log(result)
-  // }).catch((err) => {
-  //   console.error(err)
-  // })
-}
-const jsonToFormData = (json: any): FormData | null => {
-  const keys: string[] = Object.keys(json)
-  if (keys.length > 0) { 
-    const formData = new FormData();
-    keys.forEach((key) => { 
-      formData.append(key, (json[key] instanceof Object) ? JSON.stringify(json[key]) : json[key]);
-    });
-    return formData;
-  }
-  return null;
-}
-
-/** 初始化表单数据 */
-const initFormData= async () => {
-  const result = await reqest.get(`/business/Leave/mobileAdd?flowInstanceId=${flowInstanceId}`)
-  formData.value = result.data
-}
-const saveHandle = () => {
-  
-}
-/** 初始化 */
-onMounted(() => {
-  // initFormData()
-})
-</script>
-
-<style lang="scss" scoped>
-@import "./index.scss";
-</style>

+ 0 - 283
client_h5/src/pages/leave/index copy.vue

@@ -1,283 +0,0 @@
-
-<template>
-  <flow-form :data="formData" @submit="submitNextActivity">
-        <card title="基础信息">
-          <van-form required="true">
-            <van-cell-group inset>
-              <van-field
-                v-model="formData.userNickname"
-                name="请假人"
-                label="请假人"
-                placeholder="请假人"
-                readonly 
-                :rules="[{ required: true, message: '未获取请假人' }]"
-              />
-              <van-field
-                v-model="formData.deptName"
-                name="所在部门"
-                label="所在部门"
-                placeholder="所在部门"
-                readonly 
-                :rules="[{ required: true, message: '未获取所在部门' }]"
-              />
-              <van-field
-                v-model="formData.createTime"
-                name="申请时间"
-                label="申请时间"
-                placeholder="申请时间"
-                readonly 
-                :rules="[{ required: true, message: '请填写申请时间' }]"
-              />
-              <van-field
-                v-model="formData.leaveType"
-                is-link
-                readonly
-                name="休假类型"
-                label="休假类型"
-                placeholder="点击选择休假类型"
-                :rules="[{ required: true, message: '请选择休假类型' }]"
-                @click="showPicker = true"
-              />
-              <van-popup v-model:show="showPicker" position="bottom">
-                <van-picker
-                  :columns="columns"
-                  @confirm="onConfirm"
-                  @cancel="showPicker = false"
-                />
-              </van-popup>
-              <van-field
-                v-model="formData.leaveDays"
-                name="休假天数"
-                label="休假天数"
-                placeholder="休假天数"
-                readonly
-                :rules="[{ required: true, message: '请填写休假天数' }]"
-              />
-              <van-field
-                v-model="formData.leaveReason"
-                name="请假原因"
-                label="请假原因"
-                placeholder="请假原因"
-                type="textarea"
-                rows="3"
-                autosize
-                :rules="[{ required: true, message: '请填写休假原因' }]"
-              />
-              <van-field
-                v-model="formData.leaveDays"
-                name="休假天数"
-                label="休假天数"
-                placeholder="休假天数"
-                readonly
-                :rules="[{ required: true, message: '请填写休假天数' }]"
-              />
-              <van-field
-                v-model="formData.leaveReason"
-                name="请假原因"
-                label="请假原因"
-                placeholder="请假原因"
-                type="textarea"
-                rows="3"
-                autosize
-                :rules="[{ required: true, message: '请填写休假原因' }]"
-              />
-            </van-cell-group>
-          </van-form>
-        </card>
-        <card title="详情信息">
-            <template #right>
-              <button class="add_btn" @click="popupShow = true">新增</button>
-            </template>
-            <template #default>
-              <van-cell-group inset>
-                <van-field
-                  v-model="formData.userNickname"
-                  name="请假人"
-                  label="请假人"
-                  placeholder="请假人"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取请假人' }]"
-                />
-                <van-field
-                  v-model="formData.deptName"
-                  name="所在部门"
-                  label="所在部门"
-                  placeholder="所在部门"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取所在部门' }]"
-                />
-                <van-field
-                  v-model="formData.createTime"
-                  name="申请时间"
-                  label="申请时间"
-                  placeholder="申请时间"
-                  readonly 
-                  :rules="[{ required: true, message: '请填写申请时间' }]"
-                />
-                <van-field
-                  v-model="formData.leaveType"
-                  is-link
-                  readonly
-                  name="休假类型"
-                  label="休假类型"
-                  placeholder="点击选择休假类型"
-                  :rules="[{ required: true, message: '请选择休假类型' }]"
-                  @click="showPicker = true"
-                />
-                <van-popup v-model:show="showPicker" position="bottom">
-                  <van-picker
-                    :columns="columns"
-                    @confirm="onConfirm"
-                    @cancel="showPicker = false"
-                  />
-                </van-popup>
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-              </van-cell-group>
-            </template>
-        </card>
-  </flow-form>
-  <van-popup class="detail-popup" v-model:show="popupShow" position="bottom">
-    <h4 class="title">详细信息新增</h4>
-    <van-cell-group inset>
-      <date-time-range 
-        label="起始时间"
-        v-model="dateTimeRange"
-        placeholder="请选择起始时间"
-        />
-    </van-cell-group>
-    <div class="fixed-btn">
-      <van-button round block type="primary" @click="saveHandle">
-          保存
-       </van-button>
-    </div>
-  </van-popup>
-</template>
-
-<script setup lang="ts">
-import { useRoute } from 'vue-router';
-import { FlowDTO, getNextActivity } from '@/service/flow';
-import reqest from "@/utils/request";
-import DateTimeRange from '@/components/dateTimeRange.vue';
-import FlowForm from '@/components/flowForm.vue';
-import Card from '@/components/card.vue';
-
-const popupShow = ref<boolean>(false)
-const route = useRoute();
-const formData = ref({
-  instanceId: undefined,
-  id: undefined,
-  leaveHours: undefined,
-  userNickname: undefined,
-  deptName: undefined,
-  createTime: undefined,
-  leaveNo: undefined,
-  leaveType: undefined,
-  leaveDays: undefined,
-  leaveReason: undefined,
-  leaveTimeCreateList: [],
-})
-const dateTimeRange = ref("2025-10-02 10:30:00") 
-const showPicker = ref(false);
-const columns = [
-      { text: '事假', value: '11' },
-      { text: '病假', value: '12' },
-      { text: '婚假', value: '13' },
-      { text: '产假', value: '14' },
-      { text: '陪产假', value: '15' },
-      { text: '工伤', value: '16' },
-      { text: '年假', value: '17' },
-      { text: '调休', value: '18' },
-      { text: '其他', value: '20' },
-    ];
-const { activityInstanceId, participantId,flowInstanceId } = route.query as {
-  activityInstanceId: string;
-  participantId: string;
-  flowInstanceId: string;
-};
-const activityData: FlowDTO = {
-  activityInstanceId,
-  participantId,
-  flowOpinion: ''
-}
-const onConfirm = ({ selectedOptions }) => {
-  formData.leaveType = selectedOptions[0]?.text;
-  showPicker.value = false;
-};
-const submitNextActivity = async () => {
-  //更新表单业务数据
-  await reqest.post("/business/Leave/update",formData)
-  //工作流转件
-  activityData.activityInstanceId='018f23b914660a07729e8f224db60203'
-  activityData.participantId='018f23b9148b0a07729e8f224db60205'
-  activityData.flowOpinion='{"id":"018f23b914970a07729e8f224db60206","opinionContent":"同意","opinionTime":"2024-04-28"}'
-  const result = await getNextActivity(jsonToFormData(activityData))
-  // getNextActivity(activityData).then(result => {
-  //   console.log(result)
-  // }).catch((err) => {
-  //   console.error(err)
-  // })
-}
-const jsonToFormData = (json: any): FormData | null => {
-  const keys: string[] = Object.keys(json)
-  if (keys.length > 0) { 
-    const formData = new FormData();
-    keys.forEach((key) => { 
-      formData.append(key, (json[key] instanceof Object) ? JSON.stringify(json[key]) : json[key]);
-    });
-    return formData;
-  }
-  return null;
-}
-
-/** 初始化表单数据 */
-const initFormData= async () => {
-  const result = await reqest.get(`/business/Leave/mobileAdd?flowInstanceId=${flowInstanceId}`)
-  formData.value = result.data
-}
-const saveHandle = () => {
-  
-}
-/** 初始化 */
-onMounted(() => {
-  // initFormData()
-})
-</script>
-
-<style lang="scss" scoped>
-@import "./index.scss";
-</style>

+ 10 - 1
client_h5/src/pages/leave/index.scss

@@ -21,4 +21,13 @@
   >.fixed-btn {
     padding: 15px;
   }
-}
+}
+  :deep(.van-swipe-cell__right) {
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    justify-content: center;
+    >button {
+      height: 50%;
+    }
+  }

+ 13 - 79
client_h5/src/pages/leave/index.vue

@@ -89,85 +89,18 @@
               <button class="add_btn" @click="popupShow = true">新增</button>
             </template>
             <template #default>
-              <van-cell-group inset>
-                <van-field
-                  v-model="formData.userNickname"
-                  name="请假人"
-                  label="请假人"
-                  placeholder="请假人"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取请假人' }]"
-                />
-                <van-field
-                  v-model="formData.deptName"
-                  name="所在部门"
-                  label="所在部门"
-                  placeholder="所在部门"
-                  readonly 
-                  :rules="[{ required: true, message: '未获取所在部门' }]"
-                />
-                <van-field
-                  v-model="formData.createTime"
-                  name="申请时间"
-                  label="申请时间"
-                  placeholder="申请时间"
-                  readonly 
-                  :rules="[{ required: true, message: '请填写申请时间' }]"
-                />
-                <van-field
-                  v-model="formData.leaveType"
-                  is-link
-                  readonly
-                  name="休假类型"
-                  label="休假类型"
-                  placeholder="点击选择休假类型"
-                  :rules="[{ required: true, message: '请选择休假类型' }]"
-                  @click="showPicker = true"
-                />
-                <van-popup v-model:show="showPicker" position="bottom">
-                  <van-picker
-                    :columns="columns"
-                    @confirm="onConfirm"
-                    @cancel="showPicker = false"
-                  />
-                </van-popup>
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-                <van-field
-                  v-model="formData.leaveDays"
-                  name="休假天数"
-                  label="休假天数"
-                  placeholder="休假天数"
-                  readonly
-                  :rules="[{ required: true, message: '请填写休假天数' }]"
-                />
-                <van-field
-                  v-model="formData.leaveReason"
-                  name="请假原因"
-                  label="请假原因"
-                  placeholder="请假原因"
-                  type="textarea"
-                  rows="3"
-                  autosize
-                  :rules="[{ required: true, message: '请填写休假原因' }]"
-                />
-              </van-cell-group>
+              <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>
             </template>
         </card>
   </flow-form>
@@ -195,6 +128,7 @@ import reqest from "@/utils/request";
 import DateTimeRange from '@/components/dateTimeRange.vue';
 import FlowForm from '@/components/flowForm.vue';
 import Card from '@/components/card.vue';
+import CardCell from '@/components/cardCell.vue';
 
 const popupShow = ref<boolean>(false)
 const route = useRoute();

+ 6 - 4
client_h5/src/utils/request.ts

@@ -1,4 +1,4 @@
-import axios from 'axios';
+import axios, { AxiosBasicCredentials } from 'axios';
  
  
 const defaultConfig = {
@@ -8,9 +8,11 @@ const defaultConfig = {
 const instance = axios.create(Object.assign({}, defaultConfig));
  
 instance.interceptors.request.use(
-    (config) => {
-    console.log("config-------------------")
-    console.log(config)
+  (config) => {
+      ('isAuth' in config.headers) ? null : config.headers.isAuth = true
+      if (config.headers.isAuth) {
+          config.headers.Authorization = `Bearer ${import.meta.env.VITE_AUTHORIZATION}`;
+        }
         return config;
     },
     (error) => {