fix SalesOrderPayment.vue style

This commit is contained in:
Timi
2026-09-05 11:13:57 +08:00
parent ca8599450a
commit 184fa5be83
11 changed files with 290 additions and 130 deletions
@@ -41,7 +41,14 @@
</div>
</t-form-item>
<t-form-item label-width="0">
<package-photo-field v-model="photoItems" title="操作照片" :required="true" />
<photo-scroller
:model-value="photoUrlList"
v-model:photo-items="photoItems"
:upload="uploadPhotoList"
:edit-mode="true"
title="操作照片"
required
/>
</t-form-item>
</t-form>
</div>
@@ -60,6 +67,7 @@
import { watch } from "vue";
import { BottomPopup } from "timi-tdesign-mobile";
import ProductAPI from "@/api/ProductAPI";
import PhotoScroller from "@/components/PhotoScroller.vue";
import type {
Product,
ProductStock,
@@ -71,6 +79,7 @@ import { getErrorMessage } from "@/utils/error";
import { createProductRequestNo, getStockOperationText } from "@/utils/product";
import { Message } from "@/utils/message";
import type { PhotoItem } from "@/types/Photo";
import { uploadPhotoList } from "@/utils/photo";
type ManualStockOperation = Extract<StockOperationType, "MANUAL_IN" | "MANUAL_OUT" | "STOCKTAKE_GAIN" | "STOCKTAKE_LOSS">;
type PickerValue = string | number;
@@ -91,6 +100,7 @@ const quantity = ref("");
const remark = ref("");
const requestNo = ref("");
const photoItems = ref<PhotoItem[]>([]);
const photoUrlList = computed(() => photoItems.value.map(item => item.url));
const selectedUnitId = ref("");
const unitPickerVisible = ref(false);
const unitDraft = ref<PickerValue[]>([]);
+10 -1
View File
@@ -107,7 +107,14 @@
<t-textarea v-model="revokeRemark" borderless autosize maxlength="500" placeholder="请输入冲正备注" />
</t-form-item>
</t-form>
<package-photo-field v-model="revokePhotoItems" required title="冲正凭证照片" />
<photo-scroller
:model-value="revokePhotoUrlList"
v-model:photo-items="revokePhotoItems"
:upload="uploadPhotoList"
:edit-mode="true"
required
title="冲正凭证照片"
/>
</div>
</bottom-popup>
</div>
@@ -128,6 +135,7 @@ import { getErrorMessage } from "@/utils/error";
import { createProductRequestNo, getProductBaseUnitName, getProductQuantityText, getStockOperationText } from "@/utils/product";
import { Message } from "@/utils/message";
import { permissionCodes } from "@/utils/permission";
import { uploadPhotoList } from "@/utils/photo";
defineOptions({ name: "ProductStockRecordDetail" });
@@ -143,6 +151,7 @@ const revokeVisible = ref(false);
const revokeRemark = ref("");
const revokeRequestNo = ref("");
const revokePhotoItems = ref<PhotoItem[]>([]);
const revokePhotoUrlList = computed(() => revokePhotoItems.value.map(item => item.url));
const canManualRevoke = computed(() => {
const operationType = record.value?.operationType;
return (operationType === "MANUAL_IN" || operationType === "MANUAL_OUT")